Hardware selection

Materials used in this project:

Seeed XIAO ESP32C3LEDsBuzzer
SwitchesLED stripsWater pump

Note: These peripherals are used in our system for illustration, and they may be replaced by other device/appliance.

FeaturesESP32C3ESP 8266STM32 with Wi-Fi Module
ESP-NOW Protocol SupportNative supportNo native supportTypically unsupported
Power EfficiencyHigh, supports deep sleep modesModerate, less efficientVaries, generally less efficient
Performance and FeaturesHigh, RISC-V architectureModerate, Tensilica XtensaVaries, depends on configuration
Development Ecosystem and Community SupportExtensive, strong communityGood, less advancedStrong for STM32, complex configuration
Cost and AvailabilityCost-effectiveCheaper, fewer featuresMore expensive, complex integration

For this project we have chosen to work with the ESP32C3. The ESP32C3 is better suited for wireless switch module due to its native support for the ESP-NOW protocol, improved power efficiency, better performance, and more robust development ecosystem compared to the ESP8266 and STM32 with a Wi-Fi module.

Hardware design

TransmitterReceiver

The ESP-NOW protocol requires two ESP32C3 boards, one to act as a transmitter and another as a receiver. Each board was connected to their out-of-the-box antennae to increase SNR.

The transmitter is wired to accept input from 3 switches. Each button when pressed would toggle the associated pins on the receiver sides.

The receiver is wired to 3 LEDs and when data is received from the transmitter, it would toggle the associated pins either from (HIGH to LOW) or (LOW to HIGH). The 3 LEDS, are just to indicate switching.

In the indoor farm application, one of the receiver output pins is wired to a buzzer. All output pins were then wired to the signal side of a relay board.