Repository navigation
LED Board (Warthog)
Here is an in-depth comprehension of the Warthog's LED Boards and their behavior. This page mainly focuses on the master iteration of the boards, as the slave is nothing but a shell incorporating only the LED control current sinks.
See the full pcb schematic here.
Priority ranked LED behavior
| State | Logic trigger | Behavior |
|---|---|---|
| Charging | BMS state 3 | pulsing following soc color gradient |
| Charged | BMS state 8 | steady soc full color |
| Low battery | BMS soc below 30 | blinking rapidly soc empty color |
| E-stop | Estop state low | blinking current soc color |
| ROS | ros message received | solid color determined by user |
| Stand-by | no higher priority behavior | current soc color |
Empty ---------------------------> Full
🟥 🟥 🟧 🟧 🟨 🟨 🟩 🟩 🟩 🟩
View of the chip side of the boards and port side.


See the LED board's wiring configuration here, and below is a referenced photo of the MCU PCB.

An in-depth analysis of the physical characteristics of the PCB.
An overview of each connection's use and interaction with the PCB.
The Sevcon only interacts with the K1 relays to complete its 48V loop. The CAN Bus data lines never impact the operation of the boards in any way.
Loops back to the MCU to communicate the state of the connected security devices.
Linked to the embedded boards, this connection provides the differential I²C to be converted, as well as the CAN Bus data lines, which don't interact with any components as they are simply diverted to the Sevcon port.
These two ports each serve as an enable line to the Main connector when they are respectively enabled. As the pump activates, the 24V signal is read by the MCU, and when the E-Stop loop is opened by a user, the MCU can detect the change to cut the enable motor line to the K1 relay.
Links to the slave PCB on the back end of the robot to communicate its RGB state on three independent PWM lines, in addition to providing power and ground reference.
Power supply and earth reference.
The Clearpath LED boards' main chips and their datasheets are provided here:
Following are the details of each of the main chips' roles on the PCB.
As seen in the PCB schematics here, this relay is necessary to complete the loop for the 48V supply to the Sevcon motor controller. Its enable pin is controlled by the motor's input signal linked to the Clearpath custom MCU-PCB, seen in the Warthog's official documentation here. Without this motor-enable 12V signal, the Sevcon's 48V CAN Bus isn't active, preventing the robot from moving.
The PCA9615 is widely used in differential I²C communication for its two-way conversion application. See below for the usual configuration. As seen in the detailed view of the PCB, the configuration used is of a receiver to convert the differential signal received from the MCU PCB.
The PCA9685 is a 16-channel I²C-addressed PWM controller. It serves here to control the intensity of each RGB component of the LED board on the front and rear of each side of the Warthog.
The MPU9250 is a 9-axis accelerometer. Further development could implement a transform link for the orientation of each rocker.
As seen in the PCB schematics, the PWM controller can be controlled via differential I²C. It controls the MOSFETs' current sinks linked to each RGB component of every LED. This setup allows full control over the brightness and color for the front and back sides.
The estop loop is directly linked to the breakout pcb in the warthog's center bay when it switches from state high to low the motor enable signal is cut which will in turn cut power to the sevcon canbus module and subsequently open the sevcon's main power relay.
- Warthog Teach and Repeat (ROS1)
- Warthog Teach and Repeat (ROS2)
- Deployment of Robotic Total Stations (RTS)
- GNSS Real‐Time Kinematic (RTK)
- Emlid Data Postprocessing (PPK)
- Zenoh Installation
- Zenoh Robot Setup
- Zenoh‐DDS bridge
- Time Synchronization (NTP)
- Time Synchronization (PTP)
- Atlans-C INS
- CB Radio Protocol
- IP forwarding