ESP32-S3 + W5500 FRC Arena HUB Controller
ESP32-S3 and W5500 controller that bridges FRC arena WebSocket PLC data to HUB counters, relays, and addressable LEDs.
1. Project Overview
Freezy_Hub_2026 is an ESP32-S3-based field-control node developed for the 2026 FIRST Robotics Competition game, REBUILT.
The repository describes the firmware as an “ESP32-S3 FRC Arena PLC Simulator.” Its purpose is not to control a competition robot directly. Instead, it connects physical FRC arena hardware to an arena-management server.
The controller reads four physical counter inputs, reports the counts as PLC-style registers, receives PLC Coil states from the server, controls HUB-related relay outputs, and drives WS2812B addressable LEDs. Communication with the arena server is performed over wired Ethernet using a WIZnet W5500.
Project Classification
| Item | Details |
|---|---|
| Project | Freezy_Hub_2026 |
| Main Function | FRC arena HUB field-control node |
| MCU | ESP32-S3 DevKitM-1 |
| Ethernet | WIZnet W5500 |
| Framework | Arduino / PlatformIO |
| Main Language | C++ |
| Rust | Not used |
| Robotics Relation | FRC competition infrastructure |
| Hybrid Network | No |
| TCP/IP Offload | No |
| Recommended Category | Arena Automation / Embedded Control / Ethernet |
The most accurate positioning is therefore not “robot controller,” but network-connected arena automation equipment supporting robot competition operations.
2. Hardware Architecture
The repository identifies the following primary components:
ESP32-S3 DevKitM-1
WIZnet W5500 SPI Ethernet controller
Four PCNT-based counter inputs
Relay outputs
WS2812B addressable LEDs
The README specifies counter inputs on GPIO 15, 1, 2, and 3, while W5500 communication uses the following SPI signals:
| Signal | ESP32-S3 GPIO |
|---|---|
| SCK | 13 |
| MISO | 12 |
| MOSI | 11 |
| CS | 14 |
| IRQ | 10 |
| RESET | 9 |
The current network_manager.h confirms the use of ETH_PHY_W5500 with these SPI assignments. It also defines DHCP and static-IP operation, with 192.168.1.200 as the default static address.
The README lists relay outputs on GPIO 33 and 34, but the current role_config.h assigns GPIO 34 and 35 to the two HUB relay channels. This is an important documentation-versus-code discrepancy, so the current source should be checked before reproducing the hardware.
The firmware initializes the two relay channels as horizontal and vertical HUB motor relays.
3. Role-Based Configuration
The same firmware supports two logical device roles:
redHub
blueHub
Each role has its own PLC Register and Coil mappings.
For example, the Red HUB uses four Red counter registers and one Red total register, while the Blue HUB uses corresponding Blue registers. Motor and lighting Coil assignments are also selected according to the active role.
This design is useful because a single firmware image can be deployed on either side of the arena, with the role stored persistently in ESP32 NVS.
The source also deliberately separates season-dependent mappings into files such as:
coil_map.h
register_map.h
input_map.h
role_config.h
The README specifically notes that these mappings are expected to change between FRC seasons.
4. Software Structure
The project is divided into managers that isolate physical I/O, networking, arena communication, and lighting behavior.
main.cpp
|
+-- RoleManager
|
+-- CounterManager
| +-- ESP32 PCNT
|
+-- RelayManager
| +-- Physical HUB outputs
|
+-- LedManager
| +-- WS2812B / FastLED
|
+-- EthManager
| +-- W5500 Ethernet
|
+-- WsManager
| +-- PLC WebSocket communication
|
+-- WebManager
| +-- Local configuration UI
|
+-- DmxLedManager
| +-- sACN / UDP lighting
|
+-- LedAnimator
+-- WebSocket-driven LED effects
The current source tree confirms dedicated counter, relay, network, webserver, websocket, dmx_led, led, and led_animator modules.
This modularity is particularly useful for FRC infrastructure because game-specific PLC assignments can change while the underlying Ethernet, hardware-counter, relay, and configuration subsystems remain reusable.
5. System Architecture and Data Flow
The main function of Freezy_Hub_2026 is to bridge physical arena hardware and the Freezy Arena field-management software.
5.1 Counter Uplink
Physical sensors feed four ESP32-S3 hardware pulse-counter channels.
HUB Sensors
|
v
ESP32-S3 PCNT
|
v
CounterManager
|
v
PLC Register Mapping
|
| every 500 ms
v
WebSocket "setRegisters"
|
v
W5500 Ethernet
|
v
Freezy Arena Server
The main loop sends all four counter values to the arena server every 500 ms. The server-facing protocol represents these values as PLC registers.
This makes the ESP32 behave like a lightweight field PLC endpoint from the arena software's perspective.
5.2 Command Downlink
The opposite direction carries control commands from the arena server to physical outputs.
Freezy Arena Server
|
v
WebSocket
"plcIoChange"
|
v
PLC Coil Mapping
|
+------> HUB Motor Relays
|
+------> HUB LED State
|
+------> Counter Reset
When a plcIoChange message arrives, the firmware checks Coil states.
The current implementation includes logic for:
Match reset
HUB motor activation
HUB light activation
Field-reset lighting
The motor Coil controls both configured HUB motor relays. A Match Reset Coil clears all hardware counter values.
5.3 LED and sACN Data Flow
The LED subsystem supports three control modes:
PLC Coil control
Direct DMX/sACN control
WebSocket-driven LED animation
The DMX subsystem listens for sACN/E1.31 on UDP port 5568. The current header defines Universe 1 for Red and Universe 2 for Blue.
Arena Lighting Source
|
| sACN / UDP 5568
v
W5500 Ethernet
|
v
DmxLedManager
|
v
LedManager / FastLED
|
v
WS2812B HUB Lighting
The receiver validates incoming ACN packets and processes Red and Blue universe data before rendering it to the LED subsystem. If sACN traffic times out, the code can fall back from DMX reception toward the normal control logic.
6. What Is an FRC Arena?
This context is important because “Arena” in FIRST Robotics Competition has a broader technical meaning than simply the carpeted area where robots drive.
In the official 2026 REBUILT Game Manual, FIRST defines the ARENA as the complete game infrastructure required to conduct a match. It includes:
The FIELD
Scoring elements
Queue areas
Technician areas
Media areas where provided
FIELD-control equipment
ROBOT-control equipment
Scorekeeping equipment
In other words:
FRC ARENA
|
+-- Physical FIELD
|
+-- Game / Scoring Elements
|
+-- Robot Communication & Control
|
+-- Field Control
|
+-- Scorekeeping
|
+-- Match Operations
The FIELD is only the physical competition area inside that larger ARENA concept.
The system that coordinates much of the electronic side of an official FRC field is called the FMS, or Field Management System. FIRST publishes technical information describing FMS as the infrastructure used to manage field operation, robot communication, and competition control.
Therefore, Freezy_Hub_2026 belongs to the arena infrastructure side of FRC, not to the robot itself.
7. What Is the 2026 FRC HUB?
The word HUB is also game-specific.
In the 2026 game REBUILT, each alliance has its own HUB. FIRST describes it as a large field structure with a top opening where robots score FUEL, the foam balls used as the primary scoring element.
FUEL entering a HUB is processed and distributed back toward the neutral area through exits at its base.
The HUB also contains lighting that communicates game state. According to the official manual, DMX-controlled light bars indicate states such as:
HUB active
HUB inactive
Imminent HUB deactivation
Field-safe states
Post-match scoring assessment
During the 2026 match, Red and Blue HUBs can alternate between active and inactive states during several timed shifts. Only FUEL entering an active HUB earns match points during those periods.
That explains why this project needs more than a simple counter.
The controller must participate in a system that knows:
How much FUEL entered?
+
Which HUB is this?
+
Is this HUB currently active?
+
Should its mechanisms run?
+
What lighting state should be displayed?
Freezy_Hub_2026 therefore connects mechanical HUB behavior, scoring sensors, lighting, and the arena-management software.
8. What Is Freezy Arena?
Freezy Arena is not the official FIRST Field Management System.
It is a community-developed alternative FMS derived from Cheesy Arena, the open-source FRC field-management system originally developed by Team 254.
The Freezy Arena GitHub repository is explicitly forked from Team254/cheesy-arena and describes itself as an alternative field-management system for FIRST Robotics Competition. Its README states that the fork adds features intended to improve usability and flexibility for competition organizers.
Cheesy Arena itself provides many of the functions normally associated with FRC event operation, including:
Match management
Real-time scoring
Team and Driver Station networking
Network isolation
Schedules and rankings
Field-status displays
PLC integration
DMX lighting integration
Its PLC integration is specifically designed to read field sensors and control field lights and motors, which is precisely the architectural space into which Freezy_Hub_2026 fits.
Freezy Arena extends this model for community-run practice fields, Week Zero events, scrimmages, and other environments where the official FIRST FMS and official field hardware may not be available.
Public event information from Minnesota robotics events shows Freezy Arena being used as the Field Management System for actual community FRC scrimmage and tournament operation.
9. Who Is Freezy-Arena?
Freezy-Arena is best understood as a GitHub organization and community project home rather than a company, a FIRST organization, or a single FRC team.
The GitHub organization currently hosts:
freezy-arena
freezy-arena-ultralite
Freezy_Hub_2026
The main freezy-arena repository is a fork of Team 254's Cheesy Arena, while Freezy_Hub_2026 provides embedded hardware integration for the 2026 HUB.
The history can be traced publicly to FRC mentor Corey Applegate, who had maintained Freezy Arena in his personal GitHub space. In February 2026, Applegate announced that the project was being moved to its own GitHub account to support growing adoption, alternate hardware, and related projects in one location. He also credited Chris Johnson with beginning updates for the 2026 Week Zero season.
Public robotics-community information identifies Corey Applegate as an FRC mentor involved with Minnesota robotics activities and FRC Team 4607.
However, the Freezy-Arena GitHub organization does not publicly expose its member list, so it would be inaccurate to present it as being owned or developed by one specific person or team.
A careful description is therefore:
Freezy-Arena is a community-driven GitHub organization centered on the Freezy Arena alternative FRC Field Management System and its supporting field-control projects.
It is independent of FIRST and should not be confused with the official FIRST FMS.
10. Why Freezy_Hub_2026 Exists
Once the FRC Arena and Freezy Arena context is understood, the project's purpose becomes much clearer.
An official FRC field uses specialized control infrastructure to connect scoring sensors, motors, lights, networking, and FMS software.
A community-built practice or off-season field often cannot reproduce all of that expensive infrastructure.
Freezy_Hub_2026 provides a lower-cost embedded replacement for part of that field-control layer.
Conceptually:
2026 Physical HUB
|
| sensors / motors / LEDs
v
Freezy_Hub_2026
ESP32-S3 + W5500
|
| WebSocket / PLC model / sACN
v
Freezy Arena
Field Management System
|
v
Match Control / Scoring / Field State
That is the core value of the project.
It allows a community FRC arena to operate HUB hardware in a way that resembles the logical interaction between an official FMS and field PLC equipment without requiring the same industrial hardware stack.
11. Role of the WIZnet W5500
The W5500 provides the wired Ethernet interface between the ESP32-S3 field controller and the arena network.
It carries traffic for:
WebSocket PLC communication
HTTP configuration
sACN / DMX UDP data
Network configuration and monitoring
The project therefore uses W5500 in a meaningful application path rather than as a basic connectivity demonstration.
However, the implementation does not use the W5500 hardwired TCP/IP offload engine.
The ESP32 Ethernet driver treats W5500 as an Ethernet interface and uses the ESP-side TCP/IP stack. Espressif's W5500 driver documentation explicitly states that the W5500 hardwired TCP/IP stack is not used by the ESP Ethernet driver.
Conceptually:
Application
WebSocket / HTTP / UDP
|
v
ESP32 TCP/IP Stack
|
v
ESP Ethernet Driver
|
v
SPI
|
v
W5500 Ethernet Interface
|
v
Wired Arena Network
TOE Classification
TOE: No
The project uses W5500 hardware, but not W5500 Socket API-based TCP/IP offloading.
12. Web Configuration and Persistent Settings
The firmware includes a local Web UI.
The documented configuration options include:
DHCP or static IP
Device role
Arena server settings
LED control mode
Persistent configuration
Settings are stored in ESP32 NVS and survive reboot.
This is especially useful for field hardware because the same physical controller can be reassigned between Red and Blue roles without recompiling the firmware.
13. Strengths
The strongest aspect of Freezy_Hub_2026 is that it demonstrates a complete physical-to-network-to-physical control path:
FUEL / Sensor Event
|
v
Hardware Counter
|
v
PLC Register
|
v
Freezy Arena
|
v
PLC Coil / Lighting State
|
v
Relay / HUB / LEDs
Major strengths include:
Real FRC arena use case
W5500 in the primary communication path
Four-channel hardware PCNT counting
PLC Register and Coil abstraction
Bidirectional WebSocket communication
HUB motor relay control
Addressable LED control
sACN/E1.31 integration
Persistent Web configuration
Red/Blue role abstraction
Season-specific mapping separation
It is significantly more technically substantial than a generic ESP32 Ethernet example.
14. Limitations and Implementation Notes
The project is still evolving.
The current main.cpp sends one discrete sensor state separately and contains a TODO to extend that path to all role-specific inputs.
There are also documentation differences, including the relay-pin discrepancy between README and role_config.h.
The DMX implementation contains comments indicating ongoing changes in how Red and Blue universe data are mapped, suggesting that this subsystem should be considered active development rather than a finalized protocol implementation.
These points do not remove the project's technical value, but they should be considered before reproducing it as production field hardware.
1. 프로젝트 개요
Freezy_Hub_2026은 2026 FIRST Robotics Competition의 게임인 REBUILT 경기장에서 HUB 장비를 제어하기 위해 개발된 ESP32-S3 기반 필드 제어 노드입니다.
저장소에서는 이 펌웨어를 “ESP32-S3 FRC Arena PLC Simulator”라고 설명합니다.
즉, 경기 로봇 자체를 구동하는 로봇 컨트롤러가 아니라 경기장에 설치되는 물리 센서·모터·조명과 경기 운영 서버를 연결하는 소형 PLC형 장치입니다.
4개의 센서 입력을 하드웨어 카운터로 집계하고, 이를 PLC Register 형태로 경기장 서버에 전달합니다. 반대로 서버에서 PLC Coil 상태를 받아 HUB 구동용 릴레이와 WS2812B LED를 제어합니다.
경기장 서버와의 네트워크 연결에는 WIZnet W5500 Ethernet을 사용합니다.
프로젝트 분류
| 항목 | 내용 |
|---|---|
| 프로젝트 | Freezy_Hub_2026 |
| 주요 기능 | FRC 경기장 HUB 제어 |
| MCU | ESP32-S3 DevKitM-1 |
| Ethernet | WIZnet W5500 |
| Framework | Arduino / PlatformIO |
| 주요 언어 | C++ |
| Rust | 사용하지 않음 |
| Robotics 연관성 | FRC 경기 운영 인프라 |
| Hybrid Network | 아님 |
| TCP/IP Offload | 사용하지 않음 |
| 권장 카테고리 | Arena Automation / Embedded Control / Ethernet |
따라서 이 프로젝트는 단순한 “로봇 프로젝트”보다 로봇 경기를 가능하게 하는 네트워크 기반 경기장 자동화 프로젝트로 보는 것이 정확합니다.
2. 하드웨어 구조
주요 하드웨어는 다음과 같습니다.
ESP32-S3 DevKitM-1
WIZnet W5500 SPI Ethernet
4채널 카운터 입력
HUB 구동용 Relay
WS2812B Addressable LED
README 기준 Counter Input GPIO는 15, 1, 2, 3이며 W5500 연결은 다음과 같습니다.
| Signal | ESP32-S3 GPIO |
|---|---|
| SCK | 13 |
| MISO | 12 |
| MOSI | 11 |
| CS | 14 |
| IRQ | 10 |
| RESET | 9 |
현재 network_manager.h에서도 ETH_PHY_W5500을 사용하며 동일한 SPI 핀 설정을 확인할 수 있습니다.
DHCP와 Static IP를 모두 지원하며 기본 Static IP는 192.168.1.200으로 정의되어 있습니다.
README와 코드의 Relay 핀 차이
README에는 Relay GPIO가 33, 34로 작성되어 있지만 현재 role_config.h에서는 GPIO 34와 GPIO 35가 설정되어 있습니다.
실제 하드웨어를 재현할 경우 README보다 현재 소스 코드의 설정을 다시 확인해야 합니다.
현재 main.cpp에서는 두 Relay를 각각 HUB의 수평/수직 구동용 Relay로 등록합니다.
3. Red HUB / Blue HUB 역할 구조
펌웨어 하나로 두 가지 역할을 처리할 수 있습니다.
redHub
blueHub
역할에 따라 PLC Register와 Coil 번호가 달라집니다.
Red HUB는 Red용 4개 Counter Register와 Total Register를 사용하고, Blue HUB는 별도의 Blue용 Register를 사용합니다. HUB Motor와 Light Coil 역시 역할에 따라 별도로 매핑됩니다.
역할은 NVS에 저장되므로 동일한 펌웨어를 Red HUB 또는 Blue HUB 장비에 배치할 수 있습니다.
또한 시즌에 따라 바뀔 가능성이 높은 PLC 주소를 다음 파일로 분리했습니다.
coil_map.h
register_map.h
input_map.h
role_config.h
README 역시 이 파일들을 매 시즌 Arena PLC 할당에 맞춰 갱신해야 하는 영역으로 명시합니다.
4. 소프트웨어 구조
프로젝트는 기능별 Manager 구조로 나뉩니다.
main.cpp
|
+-- RoleManager
|
+-- CounterManager
| +-- ESP32 PCNT
|
+-- RelayManager
| +-- HUB 물리 출력
|
+-- LedManager
| +-- WS2812B / FastLED
|
+-- EthManager
| +-- W5500 Ethernet
|
+-- WsManager
| +-- PLC WebSocket 통신
|
+-- WebManager
| +-- 설정 Web UI
|
+-- DmxLedManager
| +-- sACN / UDP 조명
|
+-- LedAnimator
+-- WebSocket 기반 LED 효과
현재 소스 트리에서 counter, relay, network, webserver, websocket, dmx_led, led, led_animator 모듈이 실제로 분리되어 있습니다.
FRC는 매년 게임과 필드 구성이 달라지기 때문에 이 구조는 꽤 합리적입니다.
게임별 PLC Register와 Coil 번호는 변경하면서도 Ethernet, Counter, Relay, Web UI 같은 공통 구조는 유지할 수 있기 때문입니다.
5. 시스템 구조 및 데이터 흐름
Freezy_Hub_2026의 핵심 역할은 물리적인 HUB와 Freezy Arena 경기 운영 소프트웨어를 연결하는 것입니다.
5.1 센서 데이터 업링크
HUB Sensor
|
v
ESP32-S3 PCNT
|
v
CounterManager
|
v
PLC Register Mapping
|
| 500 ms
v
WebSocket "setRegisters"
|
v
W5500 Ethernet
|
v
Freezy Arena Server
4개의 센서 입력은 ESP32-S3의 PCNT 하드웨어 카운터로 처리됩니다.
main.cpp에서는 네 채널의 Counter 값을 500 ms 주기로 Arena Server에 전달합니다. 서버에서는 이를 PLC Register 값처럼 처리할 수 있습니다.
결과적으로 ESP32가 Arena Server 입장에서는 소형 PLC I/O 장치처럼 동작합니다.
5.2 서버 명령 다운링크
반대 방향에서는 Arena Server의 제어 상태가 ESP32로 전달됩니다.
Freezy Arena Server
|
v
WebSocket
"plcIoChange"
|
v
PLC Coil Mapping
|
+------> HUB Motor Relay
|
+------> HUB LED
|
+------> Counter Reset
plcIoChange 메시지가 들어오면 Coil 배열을 확인해 물리 출력을 변경합니다.
현재 코드에서는 다음 동작을 확인할 수 있습니다.
Match Reset → 모든 Counter 초기화
HUB Motor Coil → HUB Relay 구동
HUB Light Coil → Red/Blue LED 상태 표시
Field Reset Light → Green 표시
Motor Coil이 켜지면 현재 구현에서는 두 HUB Motor Relay가 함께 활성화됩니다.
5.3 LED 및 sACN 데이터 흐름
LED는 세 가지 방식으로 제어할 수 있습니다.
PLC Coil
DMX/sACN 직접 제어
WebSocket 기반 LED Animation
DMX 모듈은 UDP 5568의 sACN/E1.31 데이터를 받습니다.
현재 코드에서는:
Universe 1 → Red
Universe 2 → Blue
로 정의되어 있습니다.
Arena Lighting Source
|
| sACN / UDP 5568
v
W5500 Ethernet
|
v
DmxLedManager
|
v
LedManager / FastLED
|
v
WS2812B HUB Lighting
수신된 패킷은 ACN 식별자와 Universe 등을 검사한 뒤 RGB LED 데이터로 변환됩니다. 일정 시간 sACN 데이터를 받지 못하면 DMX 수신 상태를 종료하고 기존 제어 논리로 복귀하도록 되어 있습니다.
6. FRC Arena란 무엇인가?
이 프로젝트를 이해하려면 먼저 여기서 말하는 Arena가 단순히 로봇이 움직이는 경기장 바닥만 의미하지 않는다는 점을 알아야 합니다.
FIRST의 공식 2026 REBUILT Game Manual에서 ARENA는 경기를 수행하는 데 필요한 전체 게임 인프라를 의미합니다.
여기에는 다음이 포함됩니다.
FIELD
Scoring Element
Queue Area
Technician Area
필요 시 Media Area
FIELD 제어 장비
ROBOT 제어 장비
Scorekeeping 장비
즉 구조적으로 보면 다음과 같습니다.
FRC ARENA
|
+-- 실제 경기 FIELD
|
+-- 게임 및 점수 장치
|
+-- Robot 통신 / 제어
|
+-- Field 제어
|
+-- Scorekeeping
|
+-- Match 운영
FIELD는 ARENA 전체 중 로봇이 실제로 움직이는 물리적인 경기 영역입니다.
이 Arena의 전자적인 경기 운영을 담당하는 핵심 시스템이 FMS(Field Management System)입니다.
FMS는 경기 진행, 로봇 통신, 필드 상태, 점수 처리 등 경기 운영에 필요한 여러 시스템을 조정합니다. FIRST 역시 별도의 FMS Whitepaper를 통해 일반적인 FRC Field Management System의 구조를 설명하고 있습니다.
따라서 Freezy_Hub_2026은 로봇 내부 장비가 아니라 FRC Arena 인프라에 속하는 장치입니다.
7. 2026 FRC HUB란 무엇인가?
여기서 HUB 역시 일반적인 Network Hub가 아닙니다.
2026 FRC 게임 REBUILT에 등장하는 실제 경기장 구조물의 이름입니다.
Red Alliance와 Blue Alliance는 각각 하나의 HUB를 가지며 로봇은 FUEL이라고 부르는 고밀도 Foam Ball을 HUB 상단의 큰 개구부로 넣어 점수를 획득합니다.
HUB 내부로 들어간 FUEL은 구조물 하단의 여러 출구를 통해 다시 Neutral Zone 방향으로 배출됩니다.
HUB에는 조명 시스템도 있습니다.
FIRST 공식 필드에서는 DMX 조명을 사용해 다음과 같은 상태를 표시합니다.
HUB Active
HUB Inactive
HUB 비활성화 예고
Field Safe
Post-Match Scoring 상태
특히 2026 REBUILT에서는 경기 중 Red와 Blue HUB가 일정 시간마다 Active / Inactive 상태를 번갈아 가질 수 있습니다.
Inactive HUB에 들어간 FUEL은 해당 시간 동안 점수로 인정되지 않습니다.
그러므로 HUB 제어 장치는 단순히 공이 몇 개 들어왔는지만 세면 끝나지 않습니다.
시스템 전체에서는 다음 정보를 함께 관리해야 합니다.
FUEL이 몇 개 들어왔는가?
+
현재 Red HUB인가 Blue HUB인가?
+
현재 HUB가 Active 상태인가?
+
HUB Motor를 구동해야 하는가?
+
어떤 조명 상태를 표시해야 하는가?
Freezy_Hub_2026은 바로 이 부분에서 HUB의 물리적인 센서·모터·LED와 Arena Server를 연결합니다.
8. Freezy Arena란 무엇인가?
Freezy Arena는 FIRST 공식 FMS가 아닙니다.
FRC 커뮤니티에서 사용할 수 있도록 만들어진 오픈소스 Field Management System인 Cheesy Arena를 기반으로 확장한 커뮤니티 FMS입니다.
Freezy Arena 저장소는 명시적으로 Team254/cheesy-arena의 Fork이며, FIRST Robotics Competition을 위한 Alternative Field Management System이라고 설명합니다.
원본 Cheesy Arena는 다음과 같은 기능을 제공합니다.
경기 진행 관리
실시간 점수 처리
Team / Driver Station Network 관리
VLAN 기반 Network Isolation
Match Schedule
Ranking
Field Status 화면
PLC 연동
DMX Lighting 연동
특히 Cheesy Arena에는 실제 Field Sensor를 읽고 Field Light와 Motor를 제어하기 위한 PLC Integration 구조가 존재합니다.
Freezy_Hub_2026은 바로 이 PLC 영역을 ESP32-S3 기반 임베디드 장치로 연결하는 프로젝트라고 이해하면 쉽습니다.
Freezy Arena는 공식 FRC 경기보다는 Practice Field, Week Zero, Scrimmage, Off-season Event와 같이 공식 FIRST FMS를 사용하기 어려운 커뮤니티 경기 환경에서 특히 의미가 있습니다.
실제로 Minnesota 지역 FRC 커뮤니티의 2026 행사 안내에서도 Freezy Arena를 Field Management System으로 사용한다고 명시한 사례를 확인할 수 있습니다.
9. Freezy-Arena는 누구인가?
Freezy-Arena는 특정 회사나 FRC 팀 이름이라기보다 Freezy Arena 관련 프로젝트를 관리하는 GitHub Organization에 가깝습니다.
현재 GitHub Organization에는 다음 프로젝트가 공개되어 있습니다.
freezy-arena
freezy-arena-ultralite
Freezy_Hub_2026
메인 freezy-arena는 Team 254의 Cheesy Arena Fork이고, Freezy_Hub_2026은 2026 HUB의 물리 하드웨어와 Freezy Arena를 연결하는 임베디드 프로젝트입니다.
공개 기록상 Freezy Arena의 개발 흐름은 FRC Mentor Corey Applegate와 연결됩니다.
Corey Applegate는 이전에 자신의 개인 GitHub 저장소에서 Freezy Arena Fork를 관리했으며, 2026년 2월에는 사용자가 증가하고 Alternate Hardware 지원 프로젝트가 늘어나면서 Freezy Arena 관련 저장소를 별도의 GitHub 계정으로 옮긴다고 직접 설명했습니다.
당시 Freezy Arena, Freezy Ultralite, Freezy Estops 등의 관련 프로젝트를 하나의 위치에 모으겠다는 방향도 설명했으며 Chris Johnson이 2026 Week Zero용 업데이트 작업을 시작했다고 언급했습니다.
공개 FRC 커뮤니티 자료에서는 Corey Applegate가 Minnesota 지역의 FRC Mentor로 활동하며 FRC Team 4607과 관련된 인물임을 확인할 수 있습니다.
다만 중요한 점이 하나 있습니다.
Freezy-Arena GitHub Organization은 Member 목록을 공개하지 않습니다.
따라서 Freezy-Arena를 특정 한 사람이나 한 팀의 프로젝트라고 단정하는 것은 적절하지 않습니다.
가장 안전하고 정확한 설명은 다음과 같습니다.
Freezy-Arena는 Freezy Arena라는 커뮤니티 기반 FRC Field Management System과 그 주변의 경기장 제어 프로젝트를 관리하는 오픈소스 GitHub Organization이다.
FIRST 공식 조직이나 FIRST 공식 FMS와는 별개의 프로젝트입니다.
10. 그렇다면 Freezy_Hub_2026은 왜 필요한가?
FRC 공식 경기장은 단순히 로봇과 벽만 있는 공간이 아닙니다.
센서, 조명, 점수 시스템, Robot Network, Field Control, PLC 등 상당한 경기 운영 인프라가 필요합니다.
하지만 Practice Field나 지역 Scrimmage에서 공식 FRC Field Control Hardware 전체를 동일하게 구축하는 것은 비용과 복잡성 측면에서 어렵습니다.
Freezy_Hub_2026은 이 문제의 일부를 비교적 저렴한 ESP32-S3 기반 장치로 대체합니다.
2026 Physical HUB
|
| Sensor / Motor / LED
v
Freezy_Hub_2026
ESP32-S3 + W5500
|
| WebSocket / PLC Model / sACN
v
Freezy Arena
Field Management System
|
v
Match Control / Scoring / Field State
즉 이 프로젝트의 핵심은:
“공식 경기장의 PLC형 HUB 제어 구조를 커뮤니티 경기장에서 ESP32-S3 + W5500으로 구현한다.”
라고 정리할 수 있습니다.
11. W5500의 역할
W5500은 ESP32-S3와 Arena Network 사이의 유선 Ethernet 인터페이스로 사용됩니다.
이를 통해 다음 트래픽이 전달됩니다.
WebSocket PLC 통신
HTTP Web Configuration
sACN / DMX UDP
네트워크 설정 및 상태 관리
따라서 W5500은 단순 Ethernet 연결 확인용 부품이 아니라 프로젝트의 핵심 데이터 경로에 포함된 네트워크 인터페이스입니다.
12. TOE를 사용하는가?
사용하지 않습니다.
W5500 자체에는 Hardwired TCP/IP Stack과 Socket 기능이 있지만 이 프로젝트에서는 ESP32 Ethernet Driver를 사용합니다.
Espressif의 W5500 Ethernet Driver 문서에서도 ESP용 W5500 Driver는 W5500 내부 Hardwired TCP/IP Stack을 사용하지 않는다고 명시합니다.
실제 구조는 다음과 가깝습니다.
Application
WebSocket / HTTP / UDP
|
v
ESP32 TCP/IP Stack
|
v
ESP Ethernet Driver
|
v
SPI
|
v
W5500
|
v
Wired Ethernet
따라서 Pentacode 기준:
TOE: No
입니다.
W5500을 사용한다는 이유만으로 TOE 사용 프로젝트로 분류하면 안 됩니다.
13. Web 설정 및 NVS
Firmware에는 자체 Web UI가 포함되어 있습니다.
설정 가능한 주요 항목은 다음과 같습니다.
DHCP / Static IP
Arena Server
Red HUB / Blue HUB Role
LED Control Mode
Network Parameters
설정값은 ESP32 NVS에 저장되어 재부팅 후에도 유지됩니다.
따라서 동일한 하드웨어를 Red HUB와 Blue HUB 사이에서 재사용할 때 Firmware를 다시 컴파일할 필요를 줄일 수 있습니다.
14. 장점
Freezy_Hub_2026의 가장 큰 장점은 실제 물리 세계와 Arena Server가 완전히 연결된다는 점입니다.
FUEL / Sensor
|
v
Hardware Counter
|
v
PLC Register
|
v
Freezy Arena
|
v
PLC Coil / Lighting State
|
v
Relay / HUB / LED
주요 장점은 다음과 같습니다.
실제 FRC Arena라는 구체적인 사용처
W5500이 핵심 네트워크 경로에 포함
4채널 Hardware PCNT
PLC Register / Coil 추상화
양방향 WebSocket
HUB Motor Relay 제어
WS2812B LED
sACN/E1.31
Web Configuration
NVS 저장
Red/Blue HUB Role
시즌별 PLC Mapping 분리
단순 ESP32 Ethernet 예제와 비교하면 응용 계층과 실제 물리 제어의 밀도가 상당히 높은 프로젝트입니다.
15. 한계 및 주의점
현재 저장소는 계속 개발 중인 프로젝트로 보입니다.
main.cpp에서는 개별 Input 전송이 첫 번째 Sensor에 대해서만 구현되어 있으며 모든 Role Input을 Batch 처리하는 부분이 TODO로 남아 있습니다.
README와 실제 role_config.h 사이에도 Relay GPIO 차이가 있습니다.
DMX 코드에도 Red/Blue Universe 처리 방식을 변경하면서 남은 주석이 존재하므로 해당 부분은 완전히 안정된 최종 인터페이스라기보다 개발 중인 기능으로 보는 것이 적절합니다.
따라서 기술 큐레이션 자료로서는 가치가 높지만 실제 경기장 Hardware에 적용하려면 현재 Source를 기준으로 재검증해야 합니다.
16. WIZnet Pentacode 관점 평가
| 평가 항목 | 판정 |
|---|---|
| WIZnet 제품 사용 | Yes |
| 제품 | W5500 |
| W5500 중요도 | 높음 |
| TOE | No |
| Hybrid Network | No |
| Rust | No |
| Robotics | FRC 경기 인프라로 연관 |
| 실제 물리 I/O | Yes |
| Network Protocol 깊이 | 높음 |
| 응용 도메인 구체성 | 높음 |
| 기술 자료 밀도 | 높음 |
| 큐레이션 추천 | 추천 |
