Difference between revisions of "Tawaki/v2.01"
Line 204: | Line 204: | ||
'''CAN FD''' | '''CAN FD''' | ||
{|border="1" cellspacing="0" style="text-align:center" cellpadding="2%" width="50%" | {|border="1" cellspacing="0" style="text-align:center" cellpadding="2%" width="50%" | ||
!style="background:#F0F0F0" width="3%"|''Pin #''!!style="background:#F0F0F0" width="8%"|''Name''!!style="background:#F0F0F0" width="10%"|''Type''!!style="background:#F0F0F0"|''Description'' | !style="background:#F0F0F0" width="3%"|''Pin #''!!style="background:#F0F0F0" width="8%"|''Name''!!style="background:#F0F0F0" width="10%"|''Type''!!style="background:#F0F0F0" width="10%"|''MCU Port''!!style="background:#F0F0F0" width="10%"|''MCU Resource''!!style="background:#F0F0F0"|''Description'' | ||
|- | |- | ||
|1||style="background:Green; color:white"|CANL||I/O||CAN FD bidirectional - line | |1||style="background:Green; color:white"|CANL||I/O||PD0<br>PD1||FDCAN1.Rx<br>FDCAN1.Tx||CAN FD bidirectional - line | ||
|- | |- | ||
|2||style="background:Yellow; color:black"|CANH||I/O||CAN FD bidirectional + line | |2||style="background:Yellow; color:black"|CANH||I/O||PD0<br>PD1||FDCAN1.Rx<br>FDCAN1.Tx||CAN FD bidirectional + line | ||
|} | |} | ||
''Note: solder JP2 to enable embedded 120Ω terminator resistor ''<br> | ''Note: solder JP2 to enable embedded 120Ω terminator resistor ''<br> |
Latest revision as of 02:33, 29 July 2024
Hardware Revision History
Version # | Release Date | Release Notes |
---|---|---|
v2.01 | 03/2024 |
Push-Button added for easier boot mode selection |
v2.00 | 10/2023 | Initial release of Tawaki v2 |
Overview
Pictures
Key Features
- STMicro STM32H753VIH Micro Controller Unit
- ARM Cortex-M7, 480 MHz CPU, FPU & DSP instructions, 2MBytes Flash, 1MB RAM, etc.
- On-board Sensors
- 6 DOF Accelerometers & Gyrometers TDK-Invensense ICM-42688-P
- 3 DOF Magnetometer STMicro LIS3MDL
- Baro-Altimeter Bosch BMP390
- 8x Servos or ESC outputs: PWM/OneShot/DShot (+D-Shot Telemetry serial input)/DShot bidir
- 2x RC Receiver Inputs (S.BUS, PPM & Spektrum Satellite compatible, including receiver binding)
- Communication Buses
- 3x UARTs (including one with hardware flow control signals)
- 1x I2C bus (3.3V logic level, 2 connectors)
- 1x SPI bus (with Slave Select, Master or Slave)
- 1x CAN/CANFD bus
- 1x USB-C (& remote) : DFU mode (download) or USB storage (direct access to MicroSD card) or FullSpeed Mode
- 8x Auxiliary Inputs/Outputs spread over 2 connectors (8x ADC, 8x Timers different from servos, x1 UART, etc.)
- MicroSD card (+ dedicated power supply for emergency files closing system)
- Debug Connector (Serial Wire Debug)
- Power
- source 2 to 6 Lipo cells (6 to 26v)
- 5V/5A (max total for Tawaki + Servos + Payload)
- 3.3V/3A Low Noise (max total for payload)
- Controlled PowerSwitch 5V/2A supply on AUX A connector
- x4 Status Leds
- Connectors fully compatible with Tawaki v1 & Apogee autopilot
- Mechanical
- 53 x 25mm (2.1" x 0.98"), including 4x Φ2mm mounting holes (shares the same external dimensions and mounting points as Tawaki v1 & Apogee)
- 4x Φ3mm extra mounting slotted holes, 30 to 31mm spacing (30.5mm standard from Racers ESC, GPS modules, etc. )
- 11g (0.4 oz) (including Micro-SD card)
Pinout
Simplified Pinout Diagram (Paparazzi use)
Pins Name and Type are specified with respect to the Autopilot Board
Simplified Pinout Tables (Paparazzi use)
Servos a1 / a2 / a3 / a4
Pin # | Name | Type | MCU Port | Primary MCU Resource |
Description |
---|---|---|---|---|---|
1 | GND | PWR | - | - | common ground |
2 | +5V | PWR | - | - | 5V Rail from autopilot |
3 | SRVa1 SRVa2 SRVa3 SRVa4 |
OUT | PE9 PE11 PE13 PE14 |
Tim1.Ch1 Tim1.Ch2 Tim1.Ch3 Tim1.Ch4 |
Servo signal (PWM) |
Servos b
Pin # | Name | Type | MCU Port | Primary MCU Resource |
Description |
---|---|---|---|---|---|
1 | GND | PWR | - | - | common ground |
2 | VBAT | PWRIN/OUT | - | - | Battery Rail (if solder bridge JP1 ON) |
3 | SRVb1 | OUT | PA6 | Tim3.Ch1 | Servo signal (PWM) |
4 | SRVb2 | OUT | PA7 | Tim3.Ch2 | Servo signal (PWM) |
5 | SRVb3 | OUT | PB0 | Tim3.Ch3 | Servo signal (PWM) |
6 | SRVb4 | OUT | PB1 | Tim3.Ch4 | Servo signal (PWM) |
7 | DSHTin | IN | PA10 | UART1.Rx | DShot Telemetry serial input |
R/C
Pin # | Name | Type | MCU Port | Possible MCU Resource |
Description |
---|---|---|---|---|---|
1 | GND | PWR | - | - | common ground |
2 | +5V | PWR | - | - | 5V Rail from autopilot |
3 | +3.3V | PWR | - | - | 3.3V Rail from autopilot |
4 | RC1 | IN | PE0 | UART8.Rx | (5V Tolerant) Serial (SBUS, Spektrum, etc.) |
5 | RCaux | I/O | PC6 | UART6.Tx Tim3.Ch1 Tim8.Ch1 |
(5V Tolerant) Serial (SBUS, Spektrum, etc.) or PPM Stream RC receiver signal |
UART2
Pin # | Name | Type | MCU Port | Primary MCU Resource |
Description |
---|---|---|---|---|---|
1 | GND | PWR | - | - | common ground |
2 | +5V | PWR | - | - | 5V Rail from autopilot |
3 | +3.3V | PWR | - | - | 3.3V Rail from autopilot |
4 | RX2 | IN | PD6 | UART2.Rx | Serial Input (3.3V level) |
5 | TX2 | OUT | PD5 | UART2.Tx | Serial Output (3.3V level) |
UART3
Pin # | Name | Type | MCU Port | Primary MCU Resource |
Description |
---|---|---|---|---|---|
1 | GND | PWR | - | - | common ground |
2 | +5V | PWR | - | - | 5V Rail from autopilot |
3 | +3.3V | PWR | - | - | 3.3V Rail from autopilot |
4 | RX3 | IN | PD9 | UART3.Rx | Serial Input (3.3V level) |
5 | TX3 | OUT | PD8 | UART3.Tx | Serial Output (3.3V level) |
UART7
Pin # | Name | Type | MCU Port | Primary MCU Resource |
Description |
---|---|---|---|---|---|
1 | GND | PWR | - | - | common ground |
2 | +5V | PWR | - | - | 5V Rail from autopilot |
3 | +3.3V | PWR | - | - | 3.3V Rail from autopilot |
4 | RX7 | IN | PB3 | UART7.Rx | Serial Input (3.3V level) |
5 | TX7 | OUT | PA15 | UART7.Tx | Serial Output (3.3V level) |
I2C2 (x2)
Pin # | Name | Type | MCU Port | Primary MCU Resource |
Description |
---|---|---|---|---|---|
1 | GND | PWR | - | - | common ground |
2 | +5V | PWR | - | - | 5V Rail from autopilot |
3 | +3.3V | PWR | - | - | 3.3V Rail from autopilot |
4 | SDA2 | Open Drain I/O | PB11 | I2C2.SDA | Serial Bus DAta (3.3V level, 2.2kΩ pull-up) |
5 | SCL2 | Open Drain I/O | PB10 | I2C2.SCL | Serial Bus CLock (3.3V level, 2.2kΩ pull-up) |
SPI2
Pin # | Name | Type | MCU Port | Primary MCU Resource |
Description |
---|---|---|---|---|---|
1 | GND | PWR | - | - | common ground |
2 | +5V | PWR | - | - | 5V Rail from autopilot |
3 | +3.3V | PWR | - | - | 3.3V Rail from autopilot |
4 | NSS2 | I/O | PB12 | SPI2.nSS | Slave Select. Selects the SPI slave |
5 | MOSI2 | I/O | PB15 | SPI2.MOSI | Master Out Slave In. Data output from master / data input to slave |
6 | MISO2 | I/O | PB14 | SPI2.MISO | Master In Slave Out. Data input to master / data output from slave |
7 | SCK2 | I/O | PD3 | SPI2.SCK | Serial clock. Clock output from master or input to slave |
CAN FD
Pin # | Name | Type | MCU Port | MCU Resource | Description |
---|---|---|---|---|---|
1 | CANL | I/O | PD0 PD1 |
FDCAN1.Rx FDCAN1.Tx |
CAN FD bidirectional - line |
2 | CANH | I/O | PD0 PD1 |
FDCAN1.Rx FDCAN1.Tx |
CAN FD bidirectional + line |
Note: solder JP2 to enable embedded 120Ω terminator resistor
AUX a
Pin # | Name | Type | MCU Port | Possible MCU Resource |
Description |
---|---|---|---|---|---|
1 | GND | PWR | - | - | common ground |
2 | +5V Aux | PWR | (Controlled by) PC13 | - | 5V from autopilot through Power Switch (PC13 = Low => OFF / PC13 = High => ON) |
3 | +3.3V | PWR | - | - | 3.3V Rail from autopilot |
4 | AUXa1 | I/O | PA0 | ADC1.InP16 Tim2.Ch1 Tim5.Ch1 UART2.CTS UART4.Tx |
General Purpose I/O |
5 | AUXa2 | I/O | PA1 | ADC1.InP17/N16 Tim2.Ch2 Tim5.Ch2 UART2.RTS UART4.Rx |
General Purpose I/O |
6 | AUXa3 | I/O | PA2 | ADC1/2.InP14 Tim2.Ch3 Tim5.Ch3 UART2.Tx |
General Purpose I/O |
7 | AUXa4 | I/O | PA3 | ADC1/2.InP15 Tim2.Ch4 Tim5.Ch4 UART2.Rx |
General Purpose I/O |
AUX b
Pin # | Name | Type | MCU Port | Possible MCU Resource |
Description |
---|---|---|---|---|---|
1 | GND | PWR | - | - | common ground |
2 | +5V | PWR | - | - | 5V Rail from autopilot |
3 | +3.3V | PWR | - | - | 3.3V Rail from autopilot |
4 | AUXb1 | I/O | PB6 | Tim4.Ch1 UART1.Tx UART5.Tx I2C1.SCL CAN2.Tx |
General Purpose I/O |
5 | AUXb2 | I/O | PB7 | Tim4.Ch2 UART1.Rx I2C1.SDA |
General Purpose I/O |
6 | AUXb3 | I/O | PB8 | Tim4.Ch3 Tim16.Ch1 UART4.Rx I2C1.SCL |
General Purpose I/O |
7 | AUXb4 | I/O | PB9 | Tim4.Ch4 Tim17.Ch1 UART4.Tx I2C1.SDA SPI2.NSS |
General Purpose I/O |
USB FS
Pin # | Name | Type | MCU Port | Description |
---|---|---|---|---|
1 | GND | PWR | - | common ground |
2 | D+ | I/O | PA12 | USB Full Speed bidirectional D+ line |
3 | D- | I/O | PA11 | USB Full Speed bidirectional D- line |
4 | VBUS | IN | PA9 | USB bus power (5V) |
5 | BOOT | IN | BOOT0 | DFU or USB Mode selection (BOOT0 MCU pin) |
Note: USB-C Receptacle and Molex Picoblade connectors are in parallel, only one should be connected at a time.
SWD
Pin # | Name | Type | MCU Port | Description |
---|---|---|---|---|
1 | GND | PWR | - | common ground |
2 | +3.3V | PWR | - | 3.3V Rail from autopilot |
3 | nRST | IN | NRST | MCU Reset (active low) |
4 | SWCLK | IN | PA14 | Serial Wire Clock |
5 | SWDIO | I/O | PA13 | Serial Wire Data Input/Output |
Detailed Features
Power Supply
There are several ways to power the Tawaki board. CAUTION! use only one of these sources at a time:
- with a battery or any power source that delivers between 6 and 26V
- by connecting it to a USB port
- with a power source that delivers a regulated, stable 5V
Each of these methods is detailed below.
Powering using battery/external source soldered onto battery pads
This is the basic setup: the Tawaki then generates all the internal power sources needed by its components. Additionally, the board provides +5V and +3.3V power sources through dedicated ports for external payload.
Limitations:
- input power source range: 6-26V (2-6 Lipo cells)
- maximum current usable by both Tawaki and payload on the +5V: I5V < 5A
- maximum current usable for payload on the +3.3V: I3.3V < 3A
- maximum total current usable: (I5V+I3.3V) < 5A
With this setup, the external power source is available on the “VBAT” pin of the “Servos B” header - but only if solder bridge JP1 is jumped (turned ON) with a small blob of solder.
Limitation:
- maximum current on the “VBAT” pin: IVbat < 1A (because of the header’s specifications)
Powering using battery/external source connected on "Servos B" header
With this setup, the “GND”(-) and “VBAT”(+) pins of the “Servos B” header are used as the main entry ports for the external power source - but only if solder bridge JP1 is jumped (turned ON) with a small blob of solder. This can be interesting when the ESC already delivers the external power source voltage through its command and control signals (as is frequently the case on multi-rotors).
Limitations:
- input power source range: 6-26V (2-6 Lipo cells)
- maximum current on the “VBAT” pin: IVbat < 1A (because of the header’s specifications)
Powering using USB-C only
It is possible to power the Tawaki with only a host computer, through the USB-C cable. This setup allows to power the board and all its components, while at the same time flashing it.
In this case, the "VBUS" pin of the "USB FS" header must be connected to the "+5V" pin of any header that is equipped with one - with the exception of the "5Vaux" pin of the "AUX a" header.
Limitation:
- the host computer must be capable of providing the current needed for: powering the board, and any potential external payload. With a maximum limit of 1A (because of the header’s specifications)
Note: with this setup, the voltage of the external power source (VBAT) obviously cannot be measured by the micro-controller (MCU).
Powering using external 5V source
In some cases the external power source is out of range and cannot be used, but an external 5V power source is available (for example provided by the ESC). In this case, the external 5V power source must be connected to the "+5V" and "GND" pins of any header that are equipped with them - with the exception of the "5Vaux" pin of the "AUX a" header.
Limitations:
- the external 5V power source must be capable of providing the current needed for powering the Tawaki and any potential external payload. With a maximum limit of 1A (because of the headers' specifications)
- voltage range: depending on potential external payload 5V capability, 4-6V for Tawaki board only.
- the "VBUS" pin of the "USB FS" header must not be connected to the "+5V" pin of any header
Note: with this setup, the voltage of the external power source (VBAT) obviously cannot be measured by the micro-controller (MCU).
USB Modes
DFU Flash mode
There is two options to boot the autopilot in DFU mode in order to flash it:
- push and maintain "BOOT" small button
- plug USB cable (already host connected)
OR
- push and maintain "BOOT" small button
- turn on autopilot power source.
- plug USB cable.
USB Storage mode
USB Storage mode make autopilot's SDcard content easily available by host computer as for an Pendrive.
To enter in USB storage mode, simply connect it to host computer USB (no action on small button) :
- If autopilot power is OFF, a new external disk drive should be detected by host computer OS.
- If autopilot power is already ON and running, autopilot task is stopped and board enters in USB storage mode. When unmounted and unplugged, autopilot task restart.
Wiring vs Button
For all previous USB modes, small "BOOT" push-button action can be replaced by shorting pin #4 (VBUS) and pin #5 (BOOT) of "USB FS" header.
In these configurations (button pushed or pin# 4 & 5 connected), BOOT0 pin of the STM32 MCU is connected to VBUS pin.
This "USB FS" header arrangement allow to wire a "remote" USB interface (USB receptacle + mode push-button) reasonably distant from autopilot board.
Detailed Pinout
Pins Name and Type are specified with respect to the Autopilot Board
Schematic
Mechanical
CAD Files / 3D Model
WIP
Board production
WIP
Hardware Source Files
Tawaki v2.01 hardware design (zipped Kicad 8 project)
Source code
Available in Paparazzi latest git master branch.
Where to Buy
Check availability on Get Hardware page