{"id":26182828,"url":"https://github.com/coatsy/work-status-board","last_synced_at":"2026-04-24T12:33:43.980Z","repository":{"id":80659237,"uuid":"144683543","full_name":"coatsy/Work-Status-Board","owner":"coatsy","description":"Simple 4-LED status board updatable over HTTP","archived":false,"fork":false,"pushed_at":"2018-08-16T02:11:53.000Z","size":234,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-06-03T21:20:33.167Z","etag":null,"topics":["arduino-sketch","esp8266","esp8266-arduino","esp8266-projects","esp8266-webserver"],"latest_commit_sha":null,"homepage":null,"language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/coatsy.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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}},"created_at":"2018-08-14T07:18:36.000Z","updated_at":"2018-08-16T02:11:55.000Z","dependencies_parsed_at":"2023-10-30T07:48:33.190Z","dependency_job_id":null,"html_url":"https://github.com/coatsy/Work-Status-Board","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/coatsy/Work-Status-Board","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/coatsy%2FWork-Status-Board","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/coatsy%2FWork-Status-Board/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/coatsy%2FWork-Status-Board/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/coatsy%2FWork-Status-Board/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/coatsy","download_url":"https://codeload.github.com/coatsy/Work-Status-Board/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/coatsy%2FWork-Status-Board/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32224142,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-24T10:26:35.452Z","status":"ssl_error","status_checked_at":"2026-04-24T10:25:27.643Z","response_time":64,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: 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":["arduino-sketch","esp8266","esp8266-arduino","esp8266-projects","esp8266-webserver"],"created_at":"2025-03-11T22:32:34.459Z","updated_at":"2026-04-24T12:33:43.975Z","avatar_url":"https://github.com/coatsy.png","language":"C++","readme":"# Work status board\r\nA project to display my status on my door so my family know whether they can disturb me or not - initially a present from my daughter.\r\n\r\n## Setup\r\n* Clone or download this repo\r\n* Copy `secrets.h.template` to `secrets.h` and fill in your SSID, and WPA Key as well as an Auth Header secret, and a username and password that can be used to login. Notice that `secrets.h` is excluded from source control via `.gitignore` so you don't accidentally check it in. Note also that the auth header secret, the user name and the password can be any string. Obviously, your SSID and WPA key will have to match your network.\r\n\r\n* Wire up the board ([Fritzing file](./design/work-status-board.fzz))\r\n    * note that although an Arduino Uno is shown in the pic, you want to use a WEMOS D1 R1 or D1 Mini, as you need the wireless bits)\r\n    * note also that although I've displayed the LEDs as being on the breadboard, they're actually mounted on a separate backing for the project itself\r\n\r\n    \u003cfigure\u003e\r\n        \u003cimg src=\"./images/work-status-board-bb.png\" alt=\"Wiring Diagram\" /\u003e\r\n        \u003cfigcaption\u003eBasic wiring diagram\u003c/figcaption\u003e\r\n    \u003c/figure\u003e\r\n\r\n* Open the sketch in the Arduino IDE\r\n* Update `TestESP8266.ino` so your pins are correct\r\n* Set the board to whichever WEMOS board you have. I've tested this on the original D1 R1 and on the D1 Mini\r\n* Open the serial monitor and set it to 115200bps (unless you changed the constant in the sketch)\r\n* Upload the sketch\r\n\r\nThe LEDs should flash on and off together, then they should cycle until a WiFi connection is established.\r\n\r\nOnce the board is online, all the LEDS should go off and the SSID and the `IP Address` will be displayed in the serial window.\r\n\r\nUsing a web browser on the same network, navigate to `http://\u003cipaddress\u003e` to get your status.\r\n\r\nTo set status, you need to authenticate. If you're not authenticated, you'll get a `404` when you try setting the lights. You'll still be able to see the current status at `/`. \r\n\r\nThere are 3 ways to authenticate:\r\n\r\n1. Pass a header called `AuthKey` with the value you put in `secrets.h`.\r\n1. Pass the secret in as a query string argument called `AuthKey` to the url (e.g. `http://192.168.0.105/onACall?AuthKey=\u003cMySecretKey\u003e`)\r\n1. Login - the key is stored as a cookie. You can logout from `/` if you're logged in\r\n\r\nSetting a light is a matter of `GET`ting one of the following:\r\n* `/onACall` - turns on the orange LED\r\n* `/coding` - turns on the red LED\r\n* `/workingHard` - turns on the yellow LED\r\n* `/hardlyWorking` - turns on the green LED\r\n* `/allOff` - turns off all the LEDs\r\n\r\nEach of these will set the appropriate LED and redirect to `/` to display the status\r\n\r\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcoatsy%2Fwork-status-board","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcoatsy%2Fwork-status-board","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcoatsy%2Fwork-status-board/lists"}