{"id":13514744,"url":"https://github.com/cctweaker/ESPsensor","last_synced_at":"2025-03-31T03:31:17.466Z","repository":{"id":162946878,"uuid":"261032234","full_name":"cctweaker/ESPsensor","owner":"cctweaker","description":"Temperature, humidity and air pressure sensor with blazing fast ESP-Now communication.","archived":false,"fork":false,"pushed_at":"2021-08-23T14:55:52.000Z","size":1030,"stargazers_count":4,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2024-11-01T18:37:49.133Z","etag":null,"topics":["air-pressure","bme280","dewpoint","esp-01","esp-01s","esp-now","esp8266","humidity","si7021","temperature"],"latest_commit_sha":null,"homepage":"https://3dstar.ro/proiecte/espsensor","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/cctweaker.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}},"created_at":"2020-05-03T22:23:51.000Z","updated_at":"2023-12-01T14:41:45.000Z","dependencies_parsed_at":"2024-01-31T23:50:39.998Z","dependency_job_id":"e99bc360-990a-4947-8199-a62ac449c53a","html_url":"https://github.com/cctweaker/ESPsensor","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cctweaker%2FESPsensor","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cctweaker%2FESPsensor/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cctweaker%2FESPsensor/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cctweaker%2FESPsensor/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cctweaker","download_url":"https://codeload.github.com/cctweaker/ESPsensor/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246413377,"owners_count":20773053,"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":["air-pressure","bme280","dewpoint","esp-01","esp-01s","esp-now","esp8266","humidity","si7021","temperature"],"created_at":"2024-08-01T05:01:01.169Z","updated_at":"2025-03-31T03:31:13.458Z","avatar_url":"https://github.com/cctweaker.png","language":"C","funding_links":[],"categories":["C"],"sub_categories":[],"readme":"# ESPsensor\nis covering a need for low power, cheap, battery operated sensors that you can place throughout your house.\nIt is designed to use an ESP-01 / ESP-01S and a SI7021 temperature and humidity sensor. BME280 sensors are also supported and add air pressure readings (real and normalized).\nCommunication is done through ESP-Now protocol to save a huge amount of power compared to regular WiFi.\nIt needs a \u003ca href=\"https://github.com/cctweaker/ESPGW-Now\"\u003eESP-Now Gateway\u003c/a\u003e to receive the data and forward it to MQTT.\n\n# Sensors supported\n- SI7021 for temperature, humidity, dew point\n- BME280 for temperature, humidity, dew point, pressure, normalized pressure\n\n# Features\n- perfect for infrequent small data transmissions\n- no need for full blown WiFi, connects and transmits data instantly (172ms total wake time)\n- much faster than other solutions that rely on Wifi (about 8-10 seconds, while secure MQTT takes about 15-20 seconds)\n- much faster transfer speed compared to other 2.4GHz protocols\n- lower total power consumption, great for battery operated sensors/buttons\n- uses a parallel network for IoT without hoarding your DHCP leases in WiFi (just the gateway is connected)\n\n# Build\nClone in PlatformIO or download archive and extract main source folder to your Arduino projects folder.\nLibraries will be automatically fetched in PlatformIO, for Arduino check below for the needed libraries.\n\n# Setup\nRename example_private.h to private.h and edit to you liking.\n\n# Info\nBoards like NodeMCU and WeMos D1 can not measure ADC_VCC (their own voltage) because the ADC pin is connected to a voltage divider. To measure ADC_VCC the ADC pin must be floating like in ESP-01, ESP-07 and ESP-12 modules.\n\n# Hardware\nRoll your own based on the schematics inside hardware folder or get the PCB (with or without components) from \u003ca href=\"https://3dstar.ro/proiecte/espsensor\"\u003e3DStar.ro ESPsensor PCBs\u003c/a\u003e\n\n\n# Deep Sleep Mod\nESP-01 and ESP-01S do not have GPIO 16 available. To use them for deepsleep a small mod is necessary. GPIO 16 is nicely exposed on the bottom-left side of the ESP8266 chip. All we need to do is bridge it with a wire to RESET pin.\nPictures are available in the project's hardware folder.\n\n# Message format\nESPsensor sends a message with the following format: \u003ccode\u003e{\"t\":\"ESPsensor\",\"v\":2.01,\"ID\":\"abcdef\",\"vcc\":3482,\"tmp\":27.02,\"hum\":54.74,\"dew\":17.14,\"prs\":998.08,\"prn\":1008.54}\u003c/code\u003e\n- t: device type, value can be sensor, switch or anything else, depending on firmware\n- v: firmware version\n- ID: ESPid, last 3 bytes of the ESP's mac address in hex format, unique per ESP chip\n- tmp: temperature reading\n- hum: humidity reading\n- dew: dew point estimation\n- prs: air pressure reading (only for BME280 sensor)\n- prn: normalized (sea level) air pressure reading as reported in North America (only for BME280 sensor)\n- vcc: raw value of ESP voltage\n\n# Raw voltage\nTo show correct ESP voltage, measure voltage after the regulator (should be 3.29 - 3.31) and calculate the correction factor.\nF = vin/measured voltage\nF should be between 1024 - 1086. Apply the correction in NodeRed for example. Works just fine until about 2.9V. Best to change/charge batteries when voltage falls below 3.00V.\n\n# Libraries\n\u003ca href=\"https://github.com/LowPowerLab/SI7021\"\u003eSi7021 by Felix Rusu\u003c/a\u003e\u003cbr\u003e\n\u003ca href=\"https://github.com/zen/BME280_light\"\u003eBME280_Light by zen\u003c/a\u003e\n\n# Plans\n- add more sensor types","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcctweaker%2FESPsensor","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcctweaker%2FESPsensor","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcctweaker%2FESPsensor/lists"}