Table of Contents
Introduction
Context
What it will not have
support ardupilot as a backup
support Bluetooth
design around nucleo
similar to pixracer
6S or 3S battery cell monitor
What it will have
Fix servo backfeed issue
seeduino xiao
main proccessor EFS is already devving around
needs to have access to pins for EFS debugging w/ logic analyzer
gps connector for external gps
contains compass as well
Neo M9N or M9P (see arch doc for link)
same as we use on the drone
this device has the CMOS battery inside of it
wifi module on the board or external, EE designer choice
barometer
on the boardDoing it offboard since efs doesn’t really need it right now.
a few neopixels on the board
low battery indicator (need to have input voltage sense) → done already?
power supplies support 6S 5S 4S and 3S battery input
maximize mechanical packaging benefits
support 30.5x30.5mm mounting pattern
just do connectors to sensors instead of on the same pcba
sd card on board for logging → done already?Not in this rev for the sake of pin spaceDisplay screen on board or external (TFT variant)
support 1:1 harnesses for all external modules
JST connectors for all off board stuff
Add diode for Neopixel supply voltage, drop 0.7V to meet data sheet supply voltage to logic voltage ratio
If possible usb port for debugging mavlink? - Not mandatory
Why
improve functionality for ease of development and connectivity
integrated in one thing for flight tests, easy to verify it looks good
Justified in Tracking Antenna Long Term Vision & 2024-06-01 EFS Director Sync
Who
When
For Tracking Ant M3
Engineering
Architecture
https://uwarg-docs.atlassian.net/wiki/spaces/EL/whiteboard/2601156613Very straight forward
To-do
Here is an action list to help with collaboration with Siddharth. Set status to “In Progress” when you start something so I don't take it. Put “Finished” when done. I can start with the pcb after the schematic is done. I will base it off of the nucleo shield file to make life easy.
Schematic/Pre-PCB Tasks | Status |
---|---|
Fix servo backfeed issue | |
Add seeeduino xiao to schematic
| Completed |
Determine the correct connector for the gps and add to the schematic | Completed |
Add wifi module to schematic (connector) | Completed |
Bonus tasks: Can be saved for next rev but good if time | |
---|---|
Select and add neopixels
| |
| Completed |
| |
| Not doing |
PCB Tasks (Moreso reminders here) | |
---|---|
|
Changes to existing board
I am basing the schematic off of the current nucleo shield board. I made a new schematic for the new onboard devices and removed the interface sheet for the nucleo interconnectors. The Seeeduino has way less pins than the nucleo so things have changed. I have removed the additional servo pins that do not have overcurrent protection since we only need three pins. I have also removed the SD card reader/writer since debug data is sent over WiFi. I am also removing the protocol connectors that we don’t need and putting everything that uses the same bussed protocols on the same bus.
Connectors
“For now the sensors we are using on the tracking antenna: GPS(UART), IMU(I2C/SPI), WIFI(SPI).” “the imu we were using I believe only has i2c.“ https://discord.com/channels/776618956638388305/1113893873891160074/1259663283191943198
I2C
One I2C connector is needed for the IMU
Adding one more for the barometer (if it is chosen to be added in the future.
I am adding another one because it adds zero extra pin usage to put another device on the same I2C bus
UART
Needed for the GPS
Just adding the one since it isnt a bus. Also we only have one dedicated serial port on the seeeduino.
SPI
For Wifi module
There is no space on the seeeduino for any extras :(
WIFI Module
Decided to keep it off board. this keeps it consistent with the GPS module. One SPI connector for this.
Barometer
ICP-20100 TDK InvenSense | Sensors, Transducers | DigiKey
Plopping this here for now since it is what the pixhawk uses but it is probably too small and I have to check with EFS to make sure they are cool with it using I2C (since we are out of pins on the seeeduino and I2C is the only one where we can just throw it in the existing bus).
EFS doesn’t seem to care too much about it. I think the play is to not add it on board and just use the extra I2C connector if we need one and connect it to an external baro breakout board. This also allows us to defer the job of breaking out the IC to someone else so this board is easier to solder and more reliable.
USB debug port
Not doing this since it is just a nice to have and we do not have more pins for another serial port.
Seeeduino
Using this variant for the headers so it is removable:
102010388 Seeed Technology Co., Ltd | Development Boards, Kits, Programmers | DigiKey
So the datasheet on digikey looks like something I’d see in an electronics kit tutorial I would do middle school so I had to look elsewhere for the footprint. For reference and to brighten up your day, here is the one of the first files you see in the datasheet zip 💀:
I will be going off the datasheet I found here on another website: Seeed-Studio-XIAO-Series-SOM-Datasheet.pdf (seeedstudio.com) and Seeed-Studio-XIAO-Series-Package-and-PCB-Design.pdf (seeedstudio.com) for the pad layout.
The seeeduino with headers has 7 adjacent header pins on either side. For the female header sockets, these should do PPPC071LFBN-RC Sullins Connector Solutions | Connectors, Interconnects | DigiKey. I plan to mount them in the correct place for the seeeduino and then have another set just mounted outside of that for EFS to use for debugging. Female headers should be best for that anyways since they are more protected.
The 5V pin is connected the Vin solder pad internally, so the 5V pin can be used to power the seeeduino. However, a diode should be placed on the Vin to make sure connecting a usb port to the seeeduino won’t send current into the battery. The forward voltage drop should be fine since the seeeduino can run on 3.3V. The average operating current is 14.5mA but looking at the datasheet of the chip inside, SAM D21/DA1 Family Data Sheet (microchip.com), the maximum draw could be up to 96 mA. For a good safety factor, I’ll make sure the diode can handle 200mA.
Nathan’s seeeduino tracking antenna board is here for reference hardware/Projects/Arduino_AAT at master · UWARG/hardware (github.com).