UARDECS W55RP20 envsensor
An environmental sensor device implementing the UECS (formerly UARDECS) protocol on the W55RP20-EVB-PICO board

🌿 UARDECS on W55RP20-EVB-PICO: Ethernet-Ready UECS Sensor Node
This project showcases a practical port of UARDECS, a UECS (Universal Environmental Control System) communication library originally developed for Arduino UNO/Mega, to the W55RP20-EVB-PICO platform (RP2040 + W5500 SiP). The result is a high-performance, Ethernet-native environmental sensor demo node optimized for smart farming and greenhouse control.
🔧 Key Features
No Ethernet Shield Required: Built-in W5500 with native Ethernet (10/100M PHY) and hardware TCP/IP stack—no need for external shields.
Full UECS CCM Support: Reliable communication using Japan's standard protocol for environmental control.
Browser-based Configuration: Easily configure node settings via a built-in web UI served from the device itself.
Embedded Optimizations:
MAC address auto-generation using RP2040’s unique ID
Flash-based pseudo-EEPROM for configuration persistence
Safe-Mode booting via GPIO14 grounding
🧱 Hardware Stack
Component | Role | Notes |
---|---|---|
W55RP20-EVB-PICO | MCU (RP2040, dual-core @133 MHz) + W5500 | AWS IoT qualified, on-board 10/100M PHY |
I²C Environmental Sensors | Temperature, Humidity, CO₂, Light etc. | GP4/GP5 as I²C default pins (customizable) |
📌 Sensor models are not fixed—please refer to the README or schematics for actual sensor choices.
💻 Software Stack
Layer | Library / Technology | Highlights |
---|---|---|
Network | lwIP + EthernetCompat | Compatible with Arduino Ethernet API while leveraging lwIP |
Application | UARDECS | Implements UECS CCM for sensor data exchange |
Utilities | Web UI, Safe Mode, Flash Config | Field-friendly design for configuration & maintenance |
🔍 Key Implementation Differences
Feature | Arduino UNO/Mega Version | W55RP20 Port (This Project) | Benefits |
---|---|---|---|
Ethernet Driver | External W5500 SPI Shield | On-chip W5500 + lwIP | Reduced BOM & area, faster throughput |
MAC Address | Hard-coded | Generated from pico/unique_id | Eliminates address collision |
Buffer Size | 500 bytes | 1024 bytes | Improves logging & large packet handling |
Config Storage | EEPROM | Flash-based pseudo EEPROM | RP2040-friendly persistent storage |
✅ Strengths & Areas for Improvement
Strengths:
Wired LAN reliability: Ideal for greenhouses with Wi-Fi interference concerns
UECS compatibility + Web UI: Interoperability and convenience for non-engineers
Potential Enhancements:
Add sensor schematics and assembly photos to README
Log and publish performance metrics: packet loss, power usage, web UI latency
Include Safe-Mode flowchart in documentation
Provide inter-node compatibility test results from real greenhouse deployments