MiniNetPad: A Versatile Arduino Zero-Based Controller with PoE & TFT
MiniNetPad is an Arduino Zero-based controller with W5500 Ethernet, PoE, TFT display, and storage, enabling reliable and reusable embedded system design.
Summary
다양한 임베디드 프로젝트를 진행하다 보면 네트워크, 디스플레이, SD 카드 저장소, 그리고 안정적인 전원 공급이라는 공통된 요구사항을 만나게 됩니다. MiniNetPad는 이러한 필수 기능들을 하나의 고성능 보드에 통합하여, 어떤 프로젝트에서도 재사용할 수 있도록 설계된 오픈 소스 하드웨어 플랫폼입니다.
ATSAMD21G18A(Arduino Zero 호환) MCU와 WIZnet W5500 이더넷 컨트롤러를 결합하여, 강력한 처리 성능과 신뢰성 높은 유선 네트워크 기능을 동시에 제공합니다.
What the Project Does
MiniNetPad는 다양한 임베디드 시스템에서 반복적으로 요구되는 기능들을 하나의 보드에 통합한 오픈소스 컨트롤러 플랫폼입니다.
이 보드는 다음 기능들을 동시에 제공합니다:
- 유선 Ethernet 네트워크
- TFT 터치 디스플레이 제어
- SD 카드 및 외부 플래시 기반 데이터 저장
- RTC 기반 시간 관리
- PoE 기반 안정적인 전원 공급
ATSAMD21G18A MCU(Arduino Zero 호환)를 중심으로 구성되어 산업용 인터페이스, 모니터링 장치, IoT 게이트웨이 등 다양한 응용에 활용할 수 있습니다.
주요 구성 요소:
- W5500 Ethernet 컨트롤러+ PoE
- RA8875 기반 7인치 TFT 디스플레이
- Rich Peripheral:
- MicroSD 슬롯
- 2MB 외부 Flash
- RTC (DS3231)
- ADC (ADS1115), DAC (MCP4725)
하드웨어 유연성: 컴파일러별 핀 설정 (Flash Pin Setup)
MiniNetPad만의 독특한 강점은 하드웨어 레벨의 유연성입니다. 사용자가 Arduino IDE를 쓰는지, 혹은 CircuitPython을 쓰는지에 따라 PCB 후면의 솔더 점퍼(Solder Jumper)를 통해 Flash 메모리 핀 구성을 물리적으로 변경할 수 있습니다.
이를 통해 소프트웨어 라이브러리의 제약에 얽매이지 않고, 선택한 개발 환경에 최적화된 하드웨어 구성을 가질 수 있습니다.
시스템 통합 테스트 결과 (Integration Test)
모든 모듈이 유기적으로 작동하는 것을 확인할 수 있는 테스트 화면입니다.
WIZnet W5500 성능: 화면에서 보듯 IP(192.168.120.115) 할당과 100MB Full Duplex 연결이 안정적으로 이루어짐을 확인할 수 있습니다.
데이터 수집: 2MB 플래시 메모리 인식, SD 카드 파일 리스트 출력, 그리고 RTC를 통한 정확한 시간 표시까지 모든 기능이 정상 작동합니다.
Practical Tips / Pitfalls
- ATSAMD21과 W5500 간 SPI 신호 품질을 확보해야 합니다
- PoE 회로(LTC4267)는 발열 및 절연 설계에 주의해야 합니다
- TFT(RA8875)와 W5500이 SPI를 공유할 경우 CS 관리가 중요합니다
- W5500 소켓 버퍼는 사용 목적에 맞게 분배해야 합니다
- SD 카드와 Flash가 SPI를 공유하면 충돌 가능성을 고려해야 합니다
- UI + 네트워크 + 저장소가 동시에 동작하므로 watchdog 적용이 권장됩니다
FAQ
Q: 왜 W5500을 사용하나요?
A: 하드웨어 TCP/IP 오프로딩을 통해 MCU 부하를 줄이고, 디스플레이 및 주변장치 동작 중에도 안정적인 네트워크 성능을 유지할 수 있습니다.
Q: Arduino Zero(ATSAMD21)에 어떻게 연결되나요?
A: SPI 인터페이스(MISO, MOSI, SCLK, CS)를 통해 연결되며, 추가적으로 Reset 및 Interrupt 핀이 사용될 수 있습니다.
Q: 이 프로젝트에서 W5500은 어떤 역할을 하나요?
A: Ethernet 통신을 전담하는 네트워크 엔진으로, 데이터 송수신 및 외부 시스템과의 연결을 담당합니다.
Q: 초보자도 사용할 수 있나요?
A: 중급 이상 사용자에게 적합하며, SPI 통신, PoE 설계, 디스플레이 제어에 대한 기본 이해가 필요합니다.
Q: Wi-Fi 기반 시스템과 비교하면 어떤가요?
A: Ethernet은 지연과 연결 안정성이 뛰어나 산업 환경이나 고신뢰 시스템에 적합하며, Wi-Fi는 간편하지만 환경에 따라 불안정할 수 있습니다.
Summary
In many embedded projects, there are common requirements such as networking, display, SD card storage, and stable power supply. MiniNetPad is an open-source hardware platform designed to integrate all these essential features into a single high-performance board, making it reusable across various projects.
It combines the ATSAMD21G18A (Arduino Zero-compatible) MCU with the WIZnet W5500 Ethernet controller to deliver both strong processing capability and reliable wired network connectivity.
What the Project Does
MiniNetPad is an open-source controller platform that integrates commonly required functions for embedded systems into a single board.
This board provides the following features:
- Wired Ethernet networking
- TFT touchscreen display control
- Data storage via SD card and external flash
- RTC-based time management
- Stable power supply via PoE
It is built around the ATSAMD21G18A MCU (Arduino Zero-compatible), making it suitable for applications such as industrial interfaces, monitoring systems, and IoT gateways.
Key Components
- W5500 Ethernet controller + PoE
- 7-inch TFT display based on RA8875
Rich Peripherals:
- MicroSD slot
- 2MB external flash
- RTC (DS3231)
- ADC (ADS1115), DAC (MCP4725)
Hardware Flexibility: Flash Pin Setup
A unique strength of MiniNetPad is its hardware-level flexibility.
Depending on whether the user uses Arduino IDE or CircuitPython, the flash memory pin configuration can be physically changed using solder jumpers on the back of the PCB.
This allows developers to avoid limitations from software libraries and optimize the hardware configuration for their chosen development environment.
Integration Test Results
The test results confirm that all modules operate together seamlessly.
- WIZnet W5500 Performance:
The system successfully obtains an IP address (192.168.120.115) and maintains a stable 100Mbps full-duplex connection. - Data Handling:
All components function correctly, including detection of 2MB flash memory, listing files from the SD card, and accurate timekeeping via the RTC.
Practical Tips / Pitfalls
- Ensure signal integrity for SPI communication between ATSAMD21 and W5500
- Carefully design PoE circuitry (LTC4267) for thermal and isolation considerations
- Proper chip select (CS) handling is critical if TFT (RA8875) and W5500 share SPI
- Allocate W5500 socket buffers according to application requirements
- Consider bus contention if SD card and flash share SPI
- Use a watchdog since UI, networking, and storage operate simultaneously
FAQ
Q: Why use W5500?
A: It reduces MCU load through hardware TCP/IP offloading and ensures stable network performance even while handling display and peripherals.
Q: How is it connected to Arduino Zero (ATSAMD21)?
A: It connects via SPI (MISO, MOSI, SCLK, CS), with optional Reset and Interrupt pins depending on the design.
Q: What role does W5500 play in this project?
A: It acts as the dedicated Ethernet communication engine, handling data transmission and external connectivity.
Q: Can beginners use this platform?
A: It is more suitable for intermediate users, requiring understanding of SPI communication, PoE design, and display control.
Q: How does it compare to Wi-Fi-based systems?
A: Ethernet provides lower latency and higher stability, making it better suited for industrial and high-reliability environments, while Wi-Fi is easier to deploy but less consistent.
