
Ebox
Sooner-Rover-Team/Microcontrollers
Low-level Arduino and MCU integrations to other subteams

Low-level Arduino and MCU integrations to other subteams
LowerArm is an open-source printed circuit board by Sooner-Rover-Team, from the Sooner-Rover-Team/Microcontrollers repository on GitHub, published under the MIT licence. It is a 2-layer board of 48.3 × 82.4 mm with 22 parts on 45 nets, routed with 212 tracks and 8 vias.
It is built around the MAX3051EKA. Its parts include 4 resistors, 4 ICs, 4 connectors and 3 capacitors. It belongs with the AVR (ATmega, ATtiny) boards of this library.
This folder contains all microcontroller code that has been used on SORO in the past. Some examples are provided for testing. We are currently only using Teensy 4.1 microcontrollers.
User-Datagram Protocol (UDP) is the current form of wireless internet communication for sending manual control commands to the rover. These UDP messages are sent to a EBOX Teensy 4.1 microcontroller connected to the rover router. UDP does not require a response msg from the reciever before you can send the message (thats how TCP works), which means we can send data more often in low signal areas.
Message Structures:
Controller-Area-Network (CAN) is the current form of wired data transfer among microcontrollers on the rover (the hardware module is named FlexCAN, other implementations of CAN also exist). These CAN messages are shared amongst the entire network, and any microcontroller is capable of send/recv. The CAN msg ID determines the message priority. If two messages are being sent at the same time on the wire bus, the message with the lower ID number will be sent and the higher ID message will wait until the lower ID messages are done sending. This is called CAN arbitration.
Message Structures:
| Qty | Value | Footprint | References |
|---|---|---|---|
| 3 | R_US | Resistor_SMD:R_0805_2012Metric | R3, R3, R3 |
| 2 | 22pF | Capacitor_SMD:C_0805_2012Metric | C2, C3 |
| 2 | Screw_Terminal_01x02 | TerminalBlock_MetzConnect:TerminalBlock_MetzConnect_Type011_RT05502HBWC_1x02_P5.00mm_Horizontal | J3, J3 |
| 2 | Screw_Terminal_01x12 | TerminalBlock_4Ucon:TerminalBlock_4Ucon_1x12_P3.50mm_Horizontal | J1, J2 |
| 1 | 0.1uF | Capacitor_SMD:C_0805_2012Metric | C1 |
| 1 | 10k | Resistor_SMD:R_0805_2012Metric | R2 |
| 1 | Arduino_Nano_v3.x | Module:Arduino_Nano | A1 |
| 1 | Crystal_Oscillator_8MHz | LFXTAL:LFXTAL057135Bulk | U2 |
| 1 | LED_0805_2012Metric | LED_SMD:LED_0805_2012Metric | CAN |
| 1 | LM1084-5.0 | Package_TO_SOT_THT:TO-220F-3_Horizontal_TabDown | U1 |
| 1 | MAX3051 | MAX3051:SOIC127P600X175-8N | U4 |
| 1 | MCP2515-xSO | MCP2515_SMD:SOIC127P1030X265-18N | U3 |
The 17 most common of 22 parts.

Sooner-Rover-Team/Microcontrollers
Low-level Arduino and MCU integrations to other subteams


CopperPilot/Jetson-AI-Cam-CopperPilot
A carrier for Jetson Nano, Xavier NX and TX2 NX with two IMX219 cameras on a 39 mm stereo baseline, dual 4K outputs and CAN.

myaki-moe/usb2can
A compact and low cost open source USB to CAN bus adaptor. 紧凑且低成本的开源USB到CAN总线适配器





alex31/smartprobe
firmware and hardware for an autonomous five holes 3D pitot tube
It measures 48.3 × 82.4 mm and has 2 copper layers, 1.6 mm thick.
22 parts, built around the MAX3051EKA. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.
From the Sooner-Rover-Team/Microcontrollers repository on GitHub, at the commit this page was made from: the board is PCB/Arm/lowerArm_upperArm/lowerArm.kicad_pcb and its schematic PCB/Arm/lowerArm_upperArm/lowerArm.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Its repository publishes it under the MIT licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).