Skip to the content
2 layers48.3 × 82.4 mmLowerArm, the printed circuit board in 3D

Low-level Arduino and MCU integrations to other subteams

Size
48.3 × 82.4 mm
Copper layers
2
Thickness
1.6 mm
Parts
22
Nets
45
Pads
113
Tracks, vias
212, 8
Pours
2
Routed
Yes
KiCad
KiCad 6 (file 20211014)
Created
24 Jun 2023
Updated
28 Aug 2024

Overview

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.

Main components

1

README

README.md

Microcontrollers

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.

Data Communication

UDP

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:

  • Wheels = [0x01, 0x01, w0, w1, w2, w3, w4, w5, checkSum]
  • LEDs = [0x01, 0x02, r, g, b]
  • Arm = [0x02, bicep, forearm, base, wrist_pitch, wrist_roll, claw, checkSum]
  • Science = [0x03, big_actuator, drill, small_actuator, test_tubes, camera_servo, checkSum]

CAN

Teensy CAN Library

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:

  • Controls msg Ebox to Arm: LOWER ARM =(id=0x01, [bicep, forearm, base]), UPPER ARM =(id=0x02, [wrist_pitch, wrist_roll, claw])
  • Controls msg Ebox to Science: id=0x03, [big_actuator, drill, small_actuator, test_tubes, camera_servo]
  • Sensor msg Sciecne to Ebox: id=0x04, [temperature, humidity, methane1, methane2]

Parts

22
QtyValueFootprintReferences
3R_USResistor_SMD:R_0805_2012MetricR3, R3, R3
222pFCapacitor_SMD:C_0805_2012MetricC2, C3
2Screw_Terminal_01x02TerminalBlock_MetzConnect:TerminalBlock_MetzConnect_Type011_RT05502HBWC_1x02_P5.00mm_HorizontalJ3, J3
2Screw_Terminal_01x12TerminalBlock_4Ucon:TerminalBlock_4Ucon_1x12_P3.50mm_HorizontalJ1, J2
10.1uFCapacitor_SMD:C_0805_2012MetricC1
110kResistor_SMD:R_0805_2012MetricR2
1Arduino_Nano_v3.xModule:Arduino_NanoA1
1Crystal_Oscillator_8MHzLFXTAL:LFXTAL057135BulkU2
1LED_0805_2012MetricLED_SMD:LED_0805_2012MetricCAN
1LM1084-5.0Package_TO_SOT_THT:TO-220F-3_Horizontal_TabDownU1
1MAX3051MAX3051:SOIC127P600X175-8NU4
1MCP2515-xSOMCP2515_SMD:SOIC127P1030X265-18NU3

The 17 most common of 22 parts.

More from Sooner-Rover-Team/Microcontrollers

1
  • 2 layers77 × 53.6 mmEbox, the printed circuit board in 3D

    Ebox

    Sooner-Rover-Team/Microcontrollers

    Low-level Arduino and MCU integrations to other subteams

    9 partsMIT

Similar boards

  • 2 layers53 × 36 mmController, the printed circuit board in 3D

    Controller

    najnesnaj/moosesnif

    canbus volvo reverse engineering

    35 parts17
  • 8 layers78 × 55 mmJetson AI Cam CopperPilot, the printed circuit board in 3D

    Jetson AI Cam CopperPilot

    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.

    305 parts15
  • 2 layers26.1 × 15 mmUsb2can pcb, the printed circuit board in 3D

    Usb2can pcb

    myaki-moe/usb2can

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

    19 parts10GPL-3.0
  • 4 layers60 × 44 mmSTM32G431, the printed circuit board in 3D

    STM32G431

    Jana-Marie/OtterControlNG

    Next generation of OtterControl.

    156 parts9
  • 4 layers92 × 92 mmRtihu, the printed circuit board in 3D

    Rtihu

    AMSAT-NA/PacSatDocs

    395 parts4
  • 12 layers92 × 92 mmAMSAT SDR, the printed circuit board in 3D

    AMSAT SDR

    WA1CYB/SDR_Gen2

    AMSAT ASCENT Software Defined Radio for CubeSats

    634 parts3MIT
  • 4 layers84.5 × 17 mmSmartProbe v004, the printed circuit board in 3D

    SmartProbe v004

    alex31/smartprobe

    firmware and hardware for an autonomous five holes 3D pitot tube

    90 parts1

Questions

How big is the LowerArm PCB?

It measures 48.3 × 82.4 mm and has 2 copper layers, 1.6 mm thick.

What parts does the LowerArm use?

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.

Where can I download the LowerArm KiCad files?

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.

Can I use the LowerArm design in my own project?

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).