ESP32-AIO-AG
ESP32-AIO-AG is an ESP32-S3-based All-in-One board firmware for AgOpenGPS-compatible autonomous steering.
0
Project description

๐ Overview
ESP32-AIO-AG๋ AgOpenGPS ํธํ ์์จ ์กฐํฅ์ฉ ESP32-S3 ๊ธฐ๋ฐ All-in-One ๋ณด๋ ํ์จ์ด์ ๋๋ค. ๋๊ธฐ๊ณ์ GPS ์์น, IMU ์์ธ ์ ๋ณด, ์กฐํฅ๊ฐ ์ผ์, ๋ชจํฐ ์ ์ด ์ ํธ๋ฅผ ํตํฉํ๊ณ , AgOpenGPS์ ์ ์ Ethernet ๊ธฐ๋ฐ UDP ํต์ ์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ์ฃผ๊ณ ๋ฐ๋ ๊ตฌ์กฐ์ ๋๋ค. ๊ณต๊ฐ README ๊ธฐ์ค์ผ๋ก ์ด ํ๋ก์ ํธ๋ ESP32-S3, BNO08x IMU, u-blox GNSS, WIZnet W6100 Ethernet ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํฉ๋๋ค.
AgOpenGPS?
AgOpenGPS๋ ํธ๋ํฐ๋ ๋๊ธฐ๊ณ๋ฅผ:
- GPS ๊ธฐ๋ฐ์ผ๋ก ์ง์ง์ํค๊ณ
- ์๋์ผ๋ก ์กฐํฅํ๊ณ
- ๊ฒฝ๋ก๋ฅผ ๋ฐ๋ผ ์์ง์ด๊ฒ ํ๋
์คํ์์ค ๋์ ์๋ํ ํ๋ก๊ทธ๋จ์ ๋๋ค.
๐ Features
AgOpenGPS ํธํ UDP ํต์
- Autosteer, GPS ๋ฐ์ดํฐ๋ฅผ UDP๋ก ์ก์์ ํฉ๋๋ค.
- ์ฝ๋ ๊ธฐ์ค ํฌํธ๋ AgOpenGPS 9999, Steering 8888, GPS 2233์ผ๋ก ์ ์๋์ด ์์ต๋๋ค.
ESP32-S3 ๊ธฐ๋ฐ ํตํฉ ์ ์ด
- MCU๋ ESP32-S3์ด๋ฉฐ PlatformIO/Arduino ํ๊ฒฝ์ผ๋ก ๋น๋๋ฉ๋๋ค.
IMU + GNSS + ์กฐํฅ ์ ์ด ํตํฉ
- BNO08x IMU์ SparkFun u-blox GNSS ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํฉ๋๋ค.
W6100 ๊ธฐ๋ฐ ์ ์ Ethernet
- W6100 SPI ํ ์ ์์ W6100 ์ ์ฉ Ethernet ์ด๊ธฐํ ์ฝ๋๊ฐ ํฌํจ๋์ด ์์ต๋๋ค.
RTOS ํ์คํฌ ๊ตฌ์กฐ
- README์๋
tasks.cpp,tasks.h๊ฐ RTOS task ์ ์ ํ์ผ๋ก ์ค๋ช ๋์ด ์์ด ์ผ์ ์ฒ๋ฆฌ, ๋คํธ์ํฌ, ์ ์ด ๋ก์ง ๋ถ๋ฆฌ์ ์ ํฉํ ๊ตฌ์กฐ์ ๋๋ค.
๐ Features
GPS ๊ธฐ๋ฐ ์๋ ์กฐํฅ ์ ์ด
- GPS ์์น ๋ฐ์ดํฐ๋ฅผ ์ฝ์ด ๋๊ธฐ๊ณ๊ฐ ์ค์ ๋ ๊ฒฝ๋ก๋ฅผ ๋ฐ๋ผ ์ฃผํํ๋๋ก ์ง์
- AgOpenGPS์ ์ฐ๋ํ์ฌ ์ง์ ์ฃผํ ๋ฐ ์๋ ์กฐํฅ ๊ธฐ๋ฅ์ ์ํ
IMU ๊ธฐ๋ฐ ์์ธ ๋ฐ ๋ฐฉํฅ ๋ณด์
- ์์ด๋กยท๊ธฐ์ธ๊ธฐ(IMU) ์ผ์๋ฅผ ์ฌ์ฉํด ์ฐจ๋์ ๊ธฐ์ธ๊ธฐ์ ๋ฐฉํฅ ๋ณํ๋ฅผ ์ค์๊ฐ์ผ๋ก ์ธก์
- ์ธํ๋ถํํ ๋์ง ํ๊ฒฝ์์๋ ๋ณด๋ค ์์ ์ ์ธ ์ฃผํ ๋ณด์ ์ด ๊ฐ๋ฅ
ํธ๋ค ๊ฐ๋(WAS) ์ค์๊ฐ ์ธก์
- WAS(Wheel Angle Sensor)๋ฅผ ํตํด ํ์ฌ ์กฐํฅ ๊ฐ๋๋ฅผ ํ์ธ
- ๋ชฉํ ์กฐํฅ๊ฐ๊ณผ ์ค์ ํธ๋ค ์์น๋ฅผ ๋น๊ตํ์ฌ ์ ๋ฐํ ์๋ ์กฐํฅ ์ ์ด๋ฅผ ์ํ
๋ชจํฐ ๊ธฐ๋ฐ ์ค์ ์กฐํฅ ๋์
- ESP32 ๋ณด๋๊ฐ ์กฐํฅ ๋ชจํฐ๋ฅผ ์ง์ ์ ์ดํ์ฌ ํธ๋ํฐ ํธ๋ค์ ์๋์ผ๋ก ์์ง์
- ๋จ์ ๋ฐ์ดํฐ ํ์๊ฐ ์๋๋ผ ์ค์ ๋๊ธฐ๊ณ ์กฐํฅ ์์คํ ์ ์ด๊น์ง ์ํํ๋ ๊ตฌ์กฐ
WIZnet Ethernet ๊ธฐ๋ฐ ์์ ์ ํต์
- W6100 Ethernet ์นฉ์ ์ฌ์ฉํ์ฌ AgOpenGPS PC์ ์ ์ UDP ํต์ ์ ์ํ
- Wi-Fi ๋๋น ํต์ ์์ ์ฑ์ด ๋์ ๋๊ธฐ๊ณ์ ๊ฐ์ ์ค์๊ฐ ์ ์ด ํ๊ฒฝ์ ์ ํฉ
๐ System Architecture

์ ์ฒด ์์คํ ์ ์ผ์ ๋ฐ์ดํฐ ์์ง โ ์ค์๊ฐ ์ ์ด ์ฒ๋ฆฌ โ Ethernet ๊ธฐ๋ฐ AgOpenGPS ํต์ ๊ตฌ์กฐ๋ก ๋์ํฉ๋๋ค.
๋๊ธฐ๊ณ ๋ด๋ถ์ GNSS ๋ชจ๋(u-blox), IMU(BNO08x), ์กฐํฅ๊ฐ ์ผ์ ๋ฑ์์ ์์ง๋ ๋ฐ์ดํฐ๋ ESP32-S3 ๋ฉ์ธ ์ ์ด ๋ณด๋๋ก ์ ๋ฌ๋ฉ๋๋ค. ESP32-S3๋ ์ผ์ ๋ฐ์ดํฐ๋ฅผ ์ค์๊ฐ์ผ๋ก ์ฒ๋ฆฌํ์ฌ ์ฐจ๋ ์์ธ, ์ด๋ ๋ฐฉํฅ, ์กฐํฅ ์ํ๋ฅผ ๊ณ์ฐํ๊ณ , ์์จ์กฐํฅ ์ ์ด ๋ก์ง์ ์ํํฉ๋๋ค.
๋คํธ์ํฌ ๊ณ์ธต์์๋ WIZnet W6100 Ethernet Controller๊ฐ ์ฌ์ฉ๋ฉ๋๋ค. W6100์ ESP32-S3์ SPI๋ก ์ฐ๊ฒฐ๋๋ฉฐ, AgOpenGPS/AgIO๊ฐ ์คํ๋๋ PC์ UDP ๊ธฐ๋ฐ์ผ๋ก ํต์ ํฉ๋๋ค. ์ด๋ฅผ ํตํด GPS ์์น ์ ๋ณด, ์กฐํฅ ์ํ, ์ ์ด ๋ช ๋ น ๋ฐ์ดํฐ๋ฅผ ์์ ์ ์ผ๋ก ์ก์์ ํฉ๋๋ค.
์ ์ฒด ๋ฐ์ดํฐ ํ๋ฆ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
GNSS / IMU / Steering Sensor
โ ESP32-S3 ์ ์ด ๋ฐ ์ผ์ ์ฒ๋ฆฌ
โ W6100 Ethernet ํต์
โ AgIO / AgOpenGPS PC ์ํํธ์จ์ด
์ด ๊ตฌ์กฐ๋ Wi-Fi ๊ธฐ๋ฐ ๋ฌด์ ํต์ ๋๋น ์ง์ฐ๊ณผ ํจํท ์์ค ๊ฐ๋ฅ์ฑ์ ์ค์ผ ์ ์์ด, ๋๊ธฐ๊ณ ์์จ์กฐํฅ๊ณผ ๊ฐ์ ์ค์๊ฐ ์ ์ด ํ๊ฒฝ์ ์ ํฉํฉ๋๋ค. ๋ํ ์ผ์ ์ฒ๋ฆฌ์ ๋คํธ์ํฌ ์ฒ๋ฆฌ๊ฐ ๋ถ๋ฆฌ๋ ๊ตฌ์กฐ์ด๋ฏ๋ก ํฅํ RTK-GNSS, Section Control, ISOBUS ์ฐ๋ ๋ฑ์ผ๋ก ํ์ฅ ๊ฐ๋ฅ์ฑ์ด ์์ต๋๋ค.
๐ Role and Application of the WIZnet's Chip
์ฌ์ฉํ WIZnet ์นฉ : W6100
์์ค์ฝ๋

https://github.com/AnttiJalomaki/ESP32-AIO-AG/blob/master/src/network/ethernet.cpp
W6100์ ์ญํ ์ ESP32-S3 ๋ณด๋์ ์ ์ Ethernet ์ธํฐํ์ด์ค๋ฅผ ์ ๊ณตํ๋ ๊ฒ์ ๋๋ค. ์ด ํ๋ก์ ํธ์์๋ TCP ์๋ฒ๋ณด๋ค UDP ๊ธฐ๋ฐ ์ค์๊ฐ ์ ์ด ๋ฐ์ดํฐ ์ก์์ ์ด ํต์ฌ์ด๋ฉฐ, ์ด๋ ๋๊ธฐ๊ณ ์์จ์กฐํฅ์ฒ๋ผ ์ง์ฐ๊ณผ ์ฐ๊ฒฐ ์์ ์ฑ์ด ์ค์ํ ํ๊ฒฝ์ ์ ํฉํฉ๋๋ค.
๐ Market & Application Value
์ด ํ๋ก์ ํธ์ 1์ฐจ ์์ฅ์ ์ ๋ฐ๋์ , ๋๊ธฐ๊ณ ์์จ์กฐํฅ, RTK-GNSS ๊ธฐ๋ฐ ๋์ ์๋ํ์ ๋๋ค. AgOpenGPS ์์ฒด๊ฐ ์คํ์์ค ์ ๋ฐ๋์ ํ๋ซํผ์ด๋ฉฐ, Windows ํ๋ธ๋ฆฟ๊ณผ ์ปค๋ฎค๋ํฐ ํ๋์จ์ด๋ฅผ ์กฐํฉํด ์ผํฐ๋ฏธํฐ๊ธ GPS ๊ธฐ๋ฐ ์กฐํฅ์ ๊ตฌํํ๋ ๋ฐฉํฅ์ผ๋ก ์ค๋ช ๋์ด ์์ต๋๋ค.
์์ฅ์ฑ ์ธก๋ฉด์์ B2C๋ณด๋ค๋ ๋๊ธฐ๊ณ ๊ฐ์กฐ ์ ์ฒด, ๋์ ์๋ํ ์๋ฃจ์ ์ ์ฒด, ์ ๋ฐ๋์ SI ์ ์ฒด, ์คํ์์ค ๋์ ์ฅ๋น ์ปค๋ฎค๋ํฐ์ ๊ฐ๊น์ด B2B/B2B2C ์ฑ๊ฒฉ์ด ๊ฐํฉ๋๋ค.
๊ธฐ์กด Wi-Fi ๊ธฐ๋ฐ ESP32 ํ๋ก์ ํธ์ ๋น๊ตํ๋ฉด, W6100 ๊ธฐ๋ฐ ์ ์ Ethernet์ ๋๊ธฐ๊ณ ๋ด๋ถ์ ๊ธ์ ๊ตฌ์กฐ, ์ฅ๊ฑฐ๋ฆฌ ์์ , ์ ํ ๊ฐ์ญ ํ๊ฒฝ์์ ๋ ์์ ์ ์ธ ํต์ ๊ตฌ์ฑ์ด ๊ฐ๋ฅํ๋ค๋ ์ ์ด ์ฐจ๋ณ ์์์ ๋๋ค. ๋ค๋ง ๋ฐฉ์, ์ง๋, ์ ์ ๋ ธ์ด์ฆ, ESD, ์ปค๋ฅํฐ ๊ณ ์ , EMC ์ธ์ฆ ๋ฑ ์ฐ์ ํ๊ฒฝ ๊ฒ์ฆ์ ํ์ฌ ๊ณต๊ฐ ์๋ฃ ๊ธฐ์ค์ผ๋ก ํ์ธ๋์ง ์์ต๋๋ค.
๐ WIZnet Strategic Value
ESP32-AIO-AG๋ WIZnet Maker ์ํ๊ณ์์ ์๋ฏธ๊ฐ ์์ต๋๋ค. ์ฒซ์งธ, W6100์ ์ ๋ฐ๋์ ์์จ์กฐํฅ์ด๋ผ๋ ํน์ ์์ฉ์ ์ฐ๊ฒฐํ์ต๋๋ค. ๋์งธ, ESP32-S3์ W6100 ์กฐํฉ์ด ๋จ์ IoT ๊ฒ์ดํธ์จ์ด๋ฅผ ๋์ด ์ผ์ยท์ ์ดยท๋คํธ์ํฌ ํตํฉ ๋ณด๋๋ก ํ์ฅ๋ ์ ์์์ ๋ณด์ฌ์ค๋๋ค.
๐ Summary
ESP32-AIO-AG๋ WIZnet W6100์ ํ์ฉํ ESP32-S3 ๊ธฐ๋ฐ AgOpenGPS ์์จ์กฐํฅ ํต์ ยท์ ์ด ํ๋ก์ ํธ์ ๋๋ค. ํ์ฌ ์ธ๋ถ ๋ฐ์ ์งํ๋ ๋ฎ์ง๋ง, ์ ์ฉ ๋ถ์ผ๊ฐ ๋ช ํํ๊ณ W6100์ ์ ์ Ethernet ์ฅ์ ์ ๋์ ์๋ํ ํ๊ฒฝ์ ์ฐ๊ฒฐํ๋ค๋ ์ ์์ ์ ๊ท์ฑ๊ณผ ์ ๋ต์ ๊ฐ์น๊ฐ ์์ต๋๋ค.
๋ค๋ง ์์ฐ์ฑ ์ธก๋ฉด์์๋ ์์ง ํ๋ก๋, BOM, ์ธ์ฆ, ํ๊ฒฝ ์ํ, ๋ฆด๋ฆฌ์ค ํจํค์ง ์๋ฃ๊ฐ ๋ถ์กฑํฉ๋๋ค. ๋ฐ๋ผ์ ํ์ฌ ํ๊ฐ๋ **โ์ ํํ ์ง์ โ์ด ์๋๋ผ โWIZnet ์นฉ์ ์ฐ์ ยท๋์ ์์ฉ ๊ฐ๋ฅ์ฑ์ ๋ณด์ฌ์ฃผ๋ ์ ๋งํ ์ด๊ธฐ UCCโ**๋ก ์ ๋ฆฌํ๋ ๊ฒ์ด ์ ์ ํฉ๋๋ค.
๐ FAQ
Q1. ESP32-AIO-AG๋ ๋ฌด์์ธ๊ฐ์?
ESP32-AIO-AG๋ AgOpenGPS์ฉ์ผ๋ก ์ค๊ณ๋ ESP32-S3 ๊ธฐ๋ฐ ์๋ ์กฐํฅ ์ปจํธ๋กค๋ฌ์
๋๋ค.
๋๊ธฐ๊ณ ์๋ํ๋ฅผ ์ํด GPS, IMU, ์กฐํฅ๊ฐ ์ผ์, ๋ชจํฐ ์ ์ด, Ethernet ํต์ ๊ธฐ๋ฅ์ ํ๋์ ์์คํ
์ผ๋ก ํตํฉํ ๊ตฌ์กฐ์
๋๋ค.
Q2. AgOpenGPS๋ ์ด๋ค ์ญํ ์ ํ๋์?
AgOpenGPS๋ ์คํ์์ค ๊ธฐ๋ฐ ์ ๋ฐ๋์
์ํํธ์จ์ด ํ๋ซํผ์
๋๋ค.
ํธ๋ํฐ๊ฐ GPS ๊ธฐ๋ฐ ๊ฒฝ๋ก๋ฅผ ์๋์ผ๋ก ๋ฐ๋ผ ์ฃผํํ ์ ์๋๋ก ์ง์ํ๋ฉฐ, ์๋ ์กฐํฅ, ๊ฒฝ๋ก ๊ณํ, ํ๋ ๋ด๋น๊ฒ์ด์
๊ธฐ๋ฅ ๋ฑ์ ์ ๊ณตํฉ๋๋ค.
Q3. ์ด ํ๋ก์ ํธ์์ WIZnet W6100์ ์ฌ์ฉํ๋ ์ด์ ๋ ๋ฌด์์ธ๊ฐ์?
W6100์ ESP32 ์ปจํธ๋กค๋ฌ์ AgOpenGPS PC ์ํํธ์จ์ด ๊ฐ์ ์์ ์ ์ธ ์ ์ Ethernet ํต์ ์ ์ ๊ณตํฉ๋๋ค.
Wi-Fi ๊ธฐ๋ฐ ํต์ ๊ณผ ๋น๊ตํ๋ฉด, ์ ์ UDP ํต์ ์ ์ง์ฐ ์๊ฐ์ด ๋ฎ๊ณ ๋์
ํ๊ฒฝ๊ณผ ๊ฐ์ ๋
ธ์ด์ฆ๊ฐ ๋ง์ ํ๊ฒฝ์์๋ ๋ ๋์ ์์ ์ฑ์ ์ ๊ณตํฉ๋๋ค.
Q4. ์์คํ ์๋ ์ด๋ค ์ผ์๊ฐ ์ฌ์ฉ๋๋์?
์ด ํ๋ก์ ํธ์์๋ ๋ค์ ์ผ์๋ฅผ ์ฌ์ฉํฉ๋๋ค.
GNSS (u-blox GPS ๋ชจ๋)
IMU ์ผ์ (BNO08x)
์กฐํฅ๊ฐ ์ผ์ (WAS)
์ด ์ผ์๋ค์ ์ฐจ๋์ ์์น, ๋ฐฉํฅ, ๊ธฐ์ธ๊ธฐ, ์กฐํฅ ์ํ๋ฅผ ์ค์๊ฐ์ผ๋ก ๊ณ์ฐํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค.
Q5. ์ค์ ๋ก ํธ๋ํฐ ์กฐํฅ์ ์ ์ดํ๋์?
๋ค.
ESP32 ๋ณด๋๋ ์ผ์ ๋ฐ์ดํฐ๋ฅผ ์ฒ๋ฆฌํ๊ณ ์กฐํฅ ๋ชจํฐ๋ฅผ ์ง์ ์ ์ดํ์ฌ, ํธ๋ํฐ ํธ๋ค์ด๋ ์กฐํฅ ์ฅ์น๋ฅผ ์๋์ผ๋ก ์์ง์ผ ์ ์๋๋ก ํฉ๋๋ค.
Q6. ์์ฉ ์ ํ ์์ค์ธ๊ฐ์?
ํ์ฌ ๊ณต๊ฐ ์๋ฃ ๊ธฐ์ค์ผ๋ก๋ ์คํ์์ค ํ๋กํ ํ์
๋๋ ๊ฐ๋ฐ ๋จ๊ณ ํ๋ซํผ์ ๊ฐ๊น์ต๋๋ค.
์ธ์ฆ, ์ฐ์
ํ๊ฒฝ ๊ฒ์ฆ, ๋ฐฉ์ ์ค๊ณ, ์์ฐ ์ค๋น ์ํ ๋ฑ์ ๋ํ ์ ๋ณด๋ ์์ง ๊ณต๊ฐ์ ์ผ๋ก ํ์ธ๋์ง ์์์ต๋๋ค.
Q7. ์ด ํ๋ก์ ํธ๊ฐ WIZnet ๊ด์ ์์ ๊ฐ์ง๋ ์๋ฏธ๋ ๋ฌด์์ธ๊ฐ์?
์ด ํ๋ก์ ํธ๋ WIZnet Ethernet ์๋ฃจ์
์ด ๋จ์ IoT ๋คํธ์ํฌ๋ฅผ ๋์ด, ์ค์๊ฐ ์ฐ์
ยท๋์
์๋ํ ์์คํ
์๋ ์ ์ฉ๋ ์ ์์์ ๋ณด์ฌ์ค๋๋ค.
๋ํ W6100์ด ์ ๋ฐ๋์
ํ๊ฒฝ์์ ์์ ์ ์ธ ํต์ ์ ์ง์ํ ์ ์๋ค๋ ์ ์ ๋ณด์ฌ์ฃผ๋ ์ฌ๋ก์
๋๋ค.
๐ Overview
ESP32-AIO-AG is an ESP32-S3-based All-in-One board firmware for AgOpenGPS-compatible autonomous steering. It integrates GPS positioning, IMU orientation data, steering angle sensors, and motor control signals for agricultural machinery, and exchanges data with AgOpenGPS through wired Ethernet-based UDP communication. According to the public README, this project uses ESP32-S3, BNO08x IMU, u-blox GNSS, and the WIZnet W6100 Ethernet library.
What is AgOpenGPS?
AgOpenGPS is an open-source agricultural automation program that allows tractors or agricultural machinery to:
- Drive straight using GPS
- Steer automatically
- Follow predefined paths autonomously
๐ Features
AgOpenGPS-Compatible UDP Communication
- Autosteer and GPS data are transmitted and received via UDP.
According to the code, the ports are defined as AgOpenGPS 9999, Steering 8888, and GPS 2233.
Integrated Control Based on ESP32-S3
- The MCU is ESP32-S3 and is built using the PlatformIO/Arduino environment.
Integrated IMU + GNSS + Steering Control
- It uses the BNO08x IMU and the SparkFun u-blox GNSS library.
W6100-Based Wired Ethernet
- The project includes W6100 SPI pin definitions and W6100-specific Ethernet initialization code.
RTOS Task Structure
- The README describes tasks.cpp and tasks.h as RTOS task definition files, making the structure suitable for separating sensor processing, networking, and control logic.
๐ Features
GPS-Based Automatic Steering Control
- Supports agricultural machinery in following predefined paths by reading GPS position data.
- Works with AgOpenGPS to perform straight-line driving and automatic steering functions.
IMU-Based Orientation and Direction Correction
- Uses gyro and tilt (IMU) sensors to measure the vehicleโs tilt and directional changes in real time.
- Provides more stable driving correction even in rough farmland environments.
Real-Time Steering Angle (WAS) Measurement
- Uses a WAS (Wheel Angle Sensor) to monitor the current steering angle.
- Performs precise automatic steering control by comparing the target steering value with the actual steering wheel position.
Motor-Based Actual Steering Operation
- The ESP32 board directly controls the steering motor to automatically move the tractor steering wheel.
- The system is designed not only for displaying data but also for controlling the actual agricultural machinery steering system.
Stable Communication Based on WIZnet Ethernet
- Uses the W6100 Ethernet chip to perform wired UDP communication with the AgOpenGPS PC.
- Compared to Wi-Fi, it provides higher communication stability, making it suitable for real-time control environments such as agricultural machinery.
๐ System Architecture

The overall system operates with a structure of sensor data collection โ real-time control processing โ Ethernet-based AgOpenGPS communication.
Data collected from the agricultural machineryโs GNSS module (u-blox), IMU (BNO08x), steering angle sensor, and other devices are transmitted to the ESP32-S3 main control board. The ESP32-S3 processes the sensor data in real time to calculate vehicle orientation, movement direction, and steering status, while executing the autonomous steering control logic.
At the network layer, the WIZnet W6100 Ethernet Controller is used. The W6100 is connected to the ESP32-S3 via SPI and communicates with the PC running AgOpenGPS/AgIO through UDP-based communication. This enables stable transmission and reception of GPS position data, steering status, and control command data.
The overall data flow is as follows:
GNSS / IMU / Steering Sensor
โ ESP32-S3 Control and Sensor Processing
โ W6100 Ethernet Communication
โ AgIO / AgOpenGPS PC Software
This architecture reduces latency and packet loss compared to Wi-Fi-based wireless communication, making it suitable for real-time control environments such as autonomous steering for agricultural machinery. In addition, because sensor processing and network processing are separated, the system has future scalability for integration with RTK-GNSS, Section Control, ISOBUS, and other advanced agricultural functions.
๐ Role and Application of the WIZnet's Chip
WIZnet Chip Used: W6100
Source Code

https://github.com/AnttiJalomaki/ESP32-AIO-AG/blob/master/src/network/ethernet.cpp
The role of the W6100 is to provide a wired Ethernet interface to the ESP32-S3 board. In this project, the key focus is not a TCP server, but UDP-based real-time control data transmission and reception, which is suitable for environments where latency and connection stability are important, such as autonomous steering for agricultural machinery.
๐ Market & Application Value
The primary market for this project is precision agriculture, autonomous steering for agricultural machinery, and RTK-GNSS-based agricultural automation. AgOpenGPS itself is an open-source precision agriculture platform, described as a solution that combines Windows tablets with community-developed hardware to achieve centimeter-level GPS-based steering.
From a market perspective, it is more aligned with B2B/B2B2C markets rather than pure B2C, targeting agricultural machinery retrofit companies, agricultural automation solution providers, precision agriculture SI companies, and open-source agricultural equipment communities.
Compared to existing Wi-Fi-based ESP32 projects, the W6100-based wired Ethernet solution offers a key differentiating factor by enabling more stable communication in environments with metal structures inside agricultural machinery, long-distance operations, and radio interference. However, based on currently available public information, industrial-level validation for waterproofing, vibration resistance, power noise, ESD protection, connector retention, and EMC certification has not yet been confirmed.
๐ WIZnet Strategic Value
ESP32-AIO-AG is meaningful within the WIZnet Maker ecosystem. First, it connects the W6100 to the specialized application of precision agriculture autonomous steering. Second, it demonstrates that the combination of ESP32-S3 and W6100 can be expanded beyond a simple IoT gateway into an integrated board for sensors, control, and networking.
๐ Summary
ESP32-AIO-AG is an ESP32-S3-based AgOpenGPS autonomous steering communication and control project utilizing the WIZnet W6100. Although external response indicators are currently limited, the project has clear application areas and demonstrates novelty and strategic value by applying the wired Ethernet advantages of the W6100 to agricultural automation environments.
However, from a mass-production perspective, there is still a lack of publicly available materials such as schematics, BOM, certifications, environmental testing results, and release package documentation. Therefore, the current evaluation is more appropriately summarized not as โready for commercialization,โ but rather as โa promising early-stage UCC demonstrating the industrial and agricultural application potential of the WIZnet chip.โ
๐ FAQ
Q1. What is ESP32-AIO-AG?
ESP32-AIO-AG is an ESP32-S3 based auto-steering controller designed for AgOpenGPS.
It integrates GPS, IMU, steering angle sensing, motor control, and Ethernet communication into a single system for agricultural vehicle automation.
Q2. What does AgOpenGPS do?
AgOpenGPS is an open-source precision farming software platform.
It helps tractors follow GPS-guided paths automatically and supports auto-steering, path planning, and field navigation.
Q3. Why is WIZnet W6100 used in this project?
The W6100 provides stable wired Ethernet communication between the ESP32 controller and AgOpenGPS PC software.
Compared to Wi-Fi, wired UDP communication offers lower latency and improved reliability in noisy agricultural environments.
Q4. What sensors are used in the system?
The project uses:
GNSS (u-blox GPS module)
IMU sensor (BNO08x)
Steering Angle Sensor (WAS)
These sensors allow the system to calculate vehicle position, direction, tilt, and steering status in real time.
Q5. Does the system actually control the tractor steering?
Yes.
The ESP32 board processes sensor data and directly controls a steering motor, allowing the tractor steering wheel or steering mechanism to move automatically.
Q6. Is this a commercial product?
Currently, the project appears to be an open-source prototype/development-stage platform.
Publicly available information about certifications, industrial validation, waterproof design, or commercial production readiness has not been confirmed.
Q7. What is the main value of this project for WIZnet?
This project demonstrates that WIZnet Ethernet solutions can be applied beyond basic IoT networking into real-time industrial and agricultural automation systems.
It also shows how W6100 can support stable communication in precision farming applications.
