Wiznet makers

Lihan__

Published December 05, 2025 ©

15 UCC

8 WCC

1 VAR

0 Contests

0 Followers

0 Following

Original Link

esp‑pulser: ESP32‑S3 + W5500‑based heart‑rate sensor + Ethernet + display system

esp‑pulser is a firmware for ESP32‑S3 MCU that integrates MAX30102 heart‑rate sensor, W5500 Ethernet via SPI, SPI display, and DRV2605L haptic motor

COMPONENTS
PROJECT DESCRIPTION

1. Project Overview & Significance

The project consolidates sensor, Ethernet, user interface, feedback (vibration), networking, and firmware update in a single Rust-based embedded firmware.

It demonstrates how WIZnet W5500 can be used not just for simple network connectivity but as the backbone of a full-featured IoT device — combining sensors, data streaming, UI, network comms, and remote update.

2. Technologies / Implementation

Rust + ESP‑IDF for ESP32‑S3.

W5500 SPI-based Ethernet — automatic reconnect, TCP/UDP sockets, IP network. 

MAX30102 heart-rate sensor via I2C, 25 Hz sampling + 16-sample averaging + Rust ported signal processing algorithm. 

Additional components: SPI-based display for status, DRV2605L haptic driver for vibration feedback on heartbeat detection. 

Networking features: UDP streaming of raw & processed data, TCP server for remote commands, OTA update via companion GUI app. 

Development environment using VS Code Dev Container / Docker for reproducible build & flash, managing complex dependencies. 

3. Flow / Operation

Boot → initialize peripherals (I2C, SPI, Ethernet, display, haptic)

Start Ethernet reconnection loop & IP assignment via W5500

In background task: read heart‑rate sensor periodically → sample → filter/average → compute BPM

On events / periodically:

stream data (raw & BPM) via UDP

accept remote commands via TCP

activate haptic feedback on heartbeat detection

optionally update display with status, IP, connectivity

Support OTA update via companion GUI app

4. Significance for WIZnet + Embedded Systems

Demonstrates a real-world “sensor + network + UI + feedback + update” embedded system using WIZnet W5500 on ESP32 — a useful template for IoT products.

The integration of Rust + WIZnet + peripherals ensures safety, modularity, and portability across hardware platforms.

Offers a practical, open-source reference for developing connected devices using WIZnet modules.

5. Potential Derivative Use Cases & Ideas

Smart healthcare or wearable monitoring devices (heart rate, environment, motion) with Ethernet connectivity and remote monitoring.

Remote IoT nodes for agriculture, environment, industrial monitoring with sensors + network + user interface.

Lightweight data‑streaming nodes for decentralized sensor networks, with OTA and remote management.

Educational kits / reference boards for embedded Rust + WIZnet networking + sensors + UI + networking stack.

Community‑driven DIY / open‑hardware projects combining sensors, network, user feedback, remote updates.

Documents
Comments Write