Skip to content

Data from sensor (PIR, CO2, smoke/water detectors...) is displayed (text and chart), logged and sometimes sent to user (WhatsApp message, E-mail).

Notifications You must be signed in to change notification settings

bvujovic/SensorNodeESP

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

58 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SensorNodeESP

Data from sensor (PIR, CO2, smoke/water detectors...) is logged and sometimes sent to user (WhatsApp message, E-mail).

Server (Hub): ESP32 (SRX882, buzzer)

Server: ESP32 (SRX882, buzzer)

Web app - interface

Web app - interface

Client: ESP8266 & ENS160+AHT21

ESP wakes up every 10 minutes and sends data from sensors to the hub (server) via ESP-NOW. Client: ESP8266 & ENS160+AHT21

Client: ESP32, Li-Ion 18650 battery, ESP-NOW

ESP32 device wakes on a pin event (e.g. wires are submerged, PIR signals HIGH...), sends an ESP-NOW message to a predefined MAC address (hub) and then goes back to deep sleep.

Water detection

ESP32, Li-Ion 18650 battery, water detection wires

TODO

  • README.md:
    • Fix broken links to images in _clients and __discontinued folders
    • Add new images of the hub and clients
  • Hub:
    • Improve SimpleEvent handling in the loop() of main_hub.cpp. Handle ID of the message, log and send to WA message text, maybe change the name (SimpleEvent->???), try to add more clients (diff devices, messages...)
    • Create a mechanisam (class) that will prevent hub from accepting repeated messages from clients. SimpleEvent messages with the same ID, batches of messages from the same client caused by failed logic in retrying (this should be logged as an error).
    • (NT) Remove all references to hc12 and stx882 from code.
    • Split Hub project into 2:
      • Hub: connected to the internet, communication with clients is done via ESP-NOW. First, create alternative version for attiny_stx882 project (Water detection).
      • Hub /wo internet: communication with clients is done via radio (HC-12, SRX882...). Maybe it could have its own wireless network for web app access?
        • Test if it's possible for 2 ESP32's to communicate /wo (known) WiFi network. If it's possible, create project with 2 simple parts: client (reacts on some simple event e.g. PIR) and server (beeps when ESP-NOW msg from client is received)
    • Web App:
      • Improve interface (chart.js disappears, shrinks)
    • Add 5V buzzer (with transistor)
  • Clients:
    • (WIP) SCD30:
      • Check if pinButton is pressed before wait for response from airSensor (SCD30)
      • Save to log file any indication of an error. Make sure it can be read easily.
        • Add ESP-NOW Sent callback
        • Try to solve logged issues by retrying functions that failed. If there is no logged issues and there is still missing data - maybe it's because of the power supply (not enough current).
      • Check documentation for setting the right temperature offset
      • Try to use TimeSlotSend class
      • Add an image of the device and a README.md file to the project.
    • esp32-wake-on-pin
      • Does water detecting works normal after cool-down period or the signal repeats regardless if the wires are (still) submerged? YES
    • Add more sensor nodes
      • Microphone (noise levels)

Add new client routine

  • my_esp_now.h:
    • setPeers(): add new setPeer() call
      • setPeer(): set parameters: mac address, sensor type, device
    • Increase length of peers array: peer_info peers[]
    • Add new members to arrays: StrSensorTypes[], SensorTypesComment[]
    • OnDataRecv(): if (p->type == SensorType::...)
  • Enums.h: Add new members to SensorType, Device
  • index.html:
    • CmbChartParamsChange(): adjusting chart for sensors with temp and hum
    • lastChartParam: add default property for new sensor

Links

ESP-NOW

Remarks

  • ESP-NOW communication works if WiFi channel on the router is set to 1. There might be ways to fix that by using wifi_promiscuous_enable()...

About

Data from sensor (PIR, CO2, smoke/water detectors...) is displayed (text and chart), logged and sometimes sent to user (WhatsApp message, E-mail).

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published