{"id":20608711,"url":"https://github.com/amirkarimi/e-ink-clock","last_synced_at":"2026-02-07T14:02:35.548Z","repository":{"id":185025589,"uuid":"622725178","full_name":"amirkarimi/e-ink-clock","owner":"amirkarimi","description":"DIY Clock using e-Ink Display and Raspberry Pi","archived":false,"fork":false,"pushed_at":"2024-10-13T22:51:45.000Z","size":167,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-09-26T11:44:09.926Z","etag":null,"topics":["e-ink","python","raspberry-pi"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/amirkarimi.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2023-04-02T23:36:54.000Z","updated_at":"2025-06-03T07:48:06.000Z","dependencies_parsed_at":null,"dependency_job_id":"59bc3dd9-ddec-46aa-a09e-98adeda3196a","html_url":"https://github.com/amirkarimi/e-ink-clock","commit_stats":null,"previous_names":["amirkarimi/e-ink-clock"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/amirkarimi/e-ink-clock","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/amirkarimi%2Fe-ink-clock","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/amirkarimi%2Fe-ink-clock/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/amirkarimi%2Fe-ink-clock/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/amirkarimi%2Fe-ink-clock/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/amirkarimi","download_url":"https://codeload.github.com/amirkarimi/e-ink-clock/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/amirkarimi%2Fe-ink-clock/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29196624,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-07T12:38:28.597Z","status":"ssl_error","status_checked_at":"2026-02-07T12:38:23.888Z","response_time":63,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["e-ink","python","raspberry-pi"],"created_at":"2024-11-16T10:11:25.511Z","updated_at":"2026-02-07T14:02:35.537Z","avatar_url":"https://github.com/amirkarimi.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# e-Ink Clock\n\nThis is the source code used for building a DIY clock using [Inky's wHAT e-Ink display](https://shop.pimoroni.com/products/inky-what).\n\n## Test\n\n```\npoetry install\npoetry shell\npython clock.py debug\n```\n\nIt shows the rendered image like this:\n\n![sample image generated by the script](./sample.png)\n\n## Setup\n\nI used [Raspberry Pi Zero W](https://www.raspberrypi.com/products/raspberry-pi-zero-w/) so I had to solder the header pins and then connect it to the display. There are a few tutorial for it, it's easy. I also installed a minimal Pi OS on my Raspberry Pi and connected to it using SSH but there are other ways to work with your Pi.\n\nTo load weather information you need to:\n\n1. [Sign up](https://home.openweathermap.org/users/sign_up) with open weather API to get your `wather-api-key`. It's free.\n2. Use Google map to [get your location latitude and longitude](https://www.wikihow.com/Get-Latitude-and-Longitude-from-Google-Maps).\n\nThen deploy the script on your Raspberry Pi:\n\n1. Install Inky's: `curl https://get.pimoroni.com/inky | bash`.\n2. Install dependencies: `sudo pip install typer` (sudo is important because we use the root crontab to schedule the script).\n3. Copy [clock.py](clock.py) and [fonts](./fonts) folder (or only the used font in the script) to your Pi.\n4. Setup cron to run it every minute:\n    - `sudo crontab -e`\n    - Add this line at the end of the opened file and save it: `* * * * * python {clock.py-absolute-path} -- {weather-api-key} {latitude} {longitude}` (don't forget `--`, otherwise negative numbers for lat and long parameter wouldn't work)\n5. You've got a clock and a script that can update its display. Limitation is your imagination!\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Famirkarimi%2Fe-ink-clock","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Famirkarimi%2Fe-ink-clock","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Famirkarimi%2Fe-ink-clock/lists"}