{"id":41918590,"url":"https://github.com/gotling/window-control","last_synced_at":"2026-01-25T16:35:45.424Z","repository":{"id":45032387,"uuid":"442253509","full_name":"gotling/window-control","owner":"gotling","description":"Automatic control of windows based on sensors","archived":false,"fork":false,"pushed_at":"2022-11-09T19:51:08.000Z","size":707,"stargazers_count":1,"open_issues_count":5,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2024-04-24T12:15:21.214Z","etag":null,"topics":["automation","co2","esp32","temperature"],"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/gotling.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}},"created_at":"2021-12-27T19:25:28.000Z","updated_at":"2022-03-23T13:47:53.000Z","dependencies_parsed_at":"2022-07-25T23:31:03.213Z","dependency_job_id":null,"html_url":"https://github.com/gotling/window-control","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/gotling/window-control","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gotling%2Fwindow-control","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gotling%2Fwindow-control/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gotling%2Fwindow-control/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gotling%2Fwindow-control/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gotling","download_url":"https://codeload.github.com/gotling/window-control/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gotling%2Fwindow-control/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28755557,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-25T16:32:25.380Z","status":"ssl_error","status_checked_at":"2026-01-25T16:32:09.189Z","response_time":113,"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":["automation","co2","esp32","temperature"],"created_at":"2026-01-25T16:35:45.356Z","updated_at":"2026-01-25T16:35:45.415Z","avatar_url":"https://github.com/gotling.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Window Control\n\nControl electric windows based on sensor data or time.\n\nHardware hooks in parallel to existing buttons used to control windows.\n\n![Devices](resources/devices.jpeg)\n\n# Configuration\n\nPreferences can be set from a menu. If device screen is off, press any keys to turn it on, then press any key again to open preferences. Navigate preferences with up and down buttons. Select for change with middle button. Change value with up and down. Confirm change with middle button. Save preferences by selecting Go Back which will bring you to the main screen.\n\n![Menu](resources/menu.jpeg)\n\nWiFi and MQTT is configured using a computer or mobile device. If not connected before, an access point will be available. Connect to it and choose WiFi network the device should connect to.\n\nSet MQTT details to have events logged. Tested with Adafruit IO.\n\n![Adafruit](resources/adafruit.jpeg)\n\n# Hardware\n\n![Circuit bords](resources/circuit-boards.jpeg)\n\nESP32.\n\n240x240px IPS screen.\n\nMH-Z19B CO2 reader.\n\nDHT temperature and humidity sensor.\n\nLED for signaling high CO2 level.\n\nSimple voltage divider for reading 24v signal from existing system.\n\nMOSFET for allowing 24v signal to pass trough, emulating button press.\n\n# Software\n\nWritten in Arduino IDE 2.0.\n\nCoded in C.\n\n**Extra Fonts**\n\nhttp://oleddisplay.squix.ch/\n\n**Modifying font**\n\nhttps://tchapi.github.io/Adafruit-GFX-Font-Customiser/\n\n# Enclosures\n\nBoxes for installing the components are modelled in Fusion 360.\n\nhttps://a360.co/3J9pDIU\n\n![Model](resources/model.jpeg)\n\n# Libraries\n\nThese libraries needs to be installed in Arduino IDE to be able to build.\n\n**EspSoftwareSerial** by Dirk Kaar, Peter Lerup\n\nhttps://github.com/plerup/espsoftwareserial/\n\n**MH-Z19** by Jonathan Dempsey\n\nhttps://github.com/WifWaf/MH-Z19/blob/master/examples/RetrieveDeviceInfo/RetrieveDeviceInfo.ino\n\n**GFX Library for Arduino** by Moon On Our Nation\n\nhttps://github.com/moononournation/Arduino_GFX/blob/master/examples/HelloWorld/HelloWorld.ino\n\n**FTDebouncer** by Ubi de Feo\n\nhttps://github.com/ubidefeo/FTDebouncer\n\n**DHT sensor library** by Adafruit\n\nhttps://github.com/adafruit/DHT-sensor-library\n\n**WiFiManager** by tzapu\n\nhttps://github.com/tzapu/WiFiManager\n\n**PubSubClient** by Nick O'Leary\n\nhttps://github.com/knolleary/pubsubclient\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgotling%2Fwindow-control","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgotling%2Fwindow-control","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgotling%2Fwindow-control/lists"}