{"id":16322076,"url":"https://github.com/balassy/flowtime-flag","last_synced_at":"2026-04-29T17:01:37.956Z","repository":{"id":147827499,"uuid":"224739725","full_name":"balassy/flowtime-flag","owner":"balassy","description":"An IoT device powered by an ESP8266 microcontroller that signals flow time with a flag.","archived":false,"fork":false,"pushed_at":"2020-01-25T23:14:47.000Z","size":825,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-03-05T15:48:37.162Z","etag":null,"topics":["arduino-iot","arduino-sketch","esp8266","esp8266-arduino","esp8266-nodemcu","iot","nodemcu","ntp-client","servo-motor","vscode"],"latest_commit_sha":null,"homepage":"","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/balassy.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":"2019-11-28T22:38:24.000Z","updated_at":"2020-01-25T23:14:49.000Z","dependencies_parsed_at":"2023-05-27T15:15:13.713Z","dependency_job_id":null,"html_url":"https://github.com/balassy/flowtime-flag","commit_stats":{"total_commits":9,"total_committers":1,"mean_commits":9.0,"dds":0.0,"last_synced_commit":"a7d369be28da73d45deaf100e2348a05ab4c92b4"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/balassy%2Fflowtime-flag","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/balassy%2Fflowtime-flag/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/balassy%2Fflowtime-flag/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/balassy%2Fflowtime-flag/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/balassy","download_url":"https://codeload.github.com/balassy/flowtime-flag/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254110450,"owners_count":22016392,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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-iot","arduino-sketch","esp8266","esp8266-arduino","esp8266-nodemcu","iot","nodemcu","ntp-client","servo-motor","vscode"],"created_at":"2024-10-10T22:49:55.207Z","updated_at":"2026-04-29T17:01:37.864Z","avatar_url":"https://github.com/balassy.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Flow Time Flag\n\nAn IoT device powered by an ESP8266 microcontroller that signals [flow time](https://en.wikipedia.org/wiki/Flow_(psychology)) with a flag.\n\n## How it works\n\nThis code connects to the specified time server to retrieve the current time adjusted to your current time zone and daylight saving preferences. Based on the specified time range for flow time it rotates a servo motor.\n\n## Getting started\n\n### Hardware\n\nFor the electronics all you need is a NodeMCU ESP8266 microcontroller and an SG90 servo motor. The servo needs +5V, so you have to power your board from USB, and then connect the servo to the `Vin` and `GND` pins of the NodeMCU. To control the servo position the code uses the `D7` pin (you can change that in `config.h`).\n\n![](./doc/wiring/flowtime-flag-breadboard.png)\n\n![](./doc/wiring/flowtime-flag-schematic.png)\n\nIf you wish to further improve this wiring you can download the [Fritzing Sketch](./doc/wiring/flowtime-flag.fzz) as well.\n\n### Enclosure\n\nYou can find the enclosure designed for 3D printing for this project here: https://www.thingiverse.com/thing:4012382\n\n![](./doc/enclosure/flowtime-flag-complete.png)\n\n![](./doc/enclosure/flowtime-flag-opened.png)\n\n### Software\n\nLoad the project into the Arduino IDE (or Visual Studio Code) and import the [WiFiManager library](https://github.com/tzapu/WiFiManager).\n\nUpdate the parameters in the `config.h` file and upload the sketch to your ESP8266.\n\n### Usage\n\nIf you have not connected your ESP8266 to the network before, when first boot up it will create a new WiFi network with the parameters specified in `config.h`. By default the network name is `FlowTimeFlag`.\n\nConnect to this WiFi network with the password specified in `config.h` (by default `FlowTime!`).\n\nOpen your favorite web browser and navigate to `http://192.168.4.1`, and configure the WiFi connection. Upon save your device will restart and automatically connect to the specified WiFi network.\n\n## Acknowledgements\n\nThanks to [Andreas Spiess](https://github.com/SensorsIot) for sharing his [NTP library for ESP8266](https://github.com/SensorsIot/NTPtimeESP), though I had to change his code to make it more reliable.\n\nThanks to [Roman Minyaylov](https://github.com/roman-minyaylov) for sharing his [NodeMCU Fritzing part](https://github.com/roman-minyaylov/fritzing-parts). I copied the current version of that part into the `./doc/wiring/esp8266-nodemcu-v3` folder.\n\n\n## About the author\n\nThis project is maintained by [György Balássy](https://linkedin.com/in/balassy).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbalassy%2Fflowtime-flag","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbalassy%2Fflowtime-flag","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbalassy%2Fflowtime-flag/lists"}