Components

Inventory

List of components available in the lab.

Date: 2024-10-02

Name Description Quantity

STM32G431KBT6

Microcontroller

30

STM32G441KBT6

Microcontroller

24

STM32G441CBT6

Microcontroller

20

DRV8243HQDGQRQ1

DRV8243 motor driver

45

10118193-0001LF

Micro USB socket

33

CM1223-02SO

TVS diodes 2-ch

10

BUK6Y10-30PX

PFET SOT669

0

BUK6Y24-40PX

PFET SOT669

30

MIC5504-3.3YM5

LDO 3.3V 300mA

60

NCP164CSN330T1G

LDO 3.3V 300mA

26

NCP718BSN500T1G

LDO 5V 300mA

24

NCV8730ASN500T1G

LDO 5V 150mA

16

XTPS62933DRLR

TPS62933 buck converter

14

SRP6060FA-5R6M

Inductor 5.6uH 10A

7

FTSH-105-01-L-DV-K

Programmer connector

0

20021121-00010T4LF

Pin header, 2x5-pin, 1.27mm pitch, SMD, Vertical, replacement for FTSH-105-01-L-DV-K

23

10129383-906001ALF

Pin header, 2x3-pin, 2.54mm pitch, SMD, Vertical, for servos

29

SI8640AB-B-IS1

4-ch isolator

0

MAX14930DASE+

4-ch isolator

0

MAX12930EASA+

2-ch isolator

5

RF-WUB190DS-DD

LED 0603 white

500

RC0603FR-0752K3L

52.3k 0603 resistor

79

CL21A226MAYNNNE

22uF 25V 0805 X5R

488

CL31B106KBHNNNE

10uF 50V 1206 X7R

200

C1206C107M9PAC

100uF 6.3V 1206 X5R

18

GRM21BR61E106KA73K

10uF 25V 0805 X5R

31

CL10A106MP8NNNC

10uF 10V 0603 X5R

490

IS471FE

IR sensor

19

OFL-3102

IR LED 3mm

19

Motor driver

Requirements

  • Should be capable of driving robot’s motors: https://www.pololu.com/product/4751

    • Brushed motor with quadrature encoder

    • Rated voltage: 12V

    • Stall current at 12V: 5.5A

    • Maximum (continuous) power: 12W

  • Maximum voltage from 4S battery is 16.8V (4x 4.2V).

  • Driver does not need to be capable of driving the motor at stall current. Driving the motor at stall current for longer period will overheat the motor.

  • Motor’s power can be higher than the rated power for a short duration.

  • Driver should be capable of limiting the current somewhere between the stall current and maximum power limit (where current is 12W / 16.8V).

DRV8243

Microcontroller

Requirements

  • Should have enough timers:

    • For generating PWM signals for drivers. Typically, brushed motor drivers have 1 or 2 PWM inputs.

    • For reading encoders outputs in encoder mode. Encoders can be read with external interrupts, but using timer’s encoder mode avoids the overhead of handling the interrupts.

    • For generating PWM signal for thrower motor driver. Thrower’s brushless motor is driven by low cost ESC (electronic speed controller), that has 1 PWM signal input. This PWM signal should be generated by a separate timer to be able to use different PWM frequency, since all PWM outputs from a timer have same the frequency.

    • If servo motors are needed for the thrower, then additional PWM output is needed for each servo.

    • Additional timer is needed to generate periodic interrupts for motor control code in the firmware.

  • Should have USB interface or UART/USART interface if USB-UART bridge is used.

USB connector

  • For powering the microcontroller and for communicating with robot’s computer.

  • Micro USB Type B is commonly used.

Amphenol 10118193-0001LF

USB protection

Requirements

  • TVS diodes compatible with USB voltages and signal speeds.

CM1223-02SO TVS diode array

Voltage regulators

SOT23-5 package with following pinout:

LDO voltage regulator recommended pinout

There are no other good reasons to use this pinout, other than that it has been used on previous boards.

It’s fine to use other packages that have a thermal pad or in general better thermal performance. Thermal performance of SOT23 package is relatively poor, but good enough for low currents.

Recommended voltage regulators below are just some that meet the requirements. There are probably cheaper and better performing regulators available.

Voltage regulator for microcontroller

Requirements

  • Input: 5V from USB.

  • Output: 3.3V, >200mA

  • For powering the microcontroller, encoders, isolators.

MIC5504-3.3YM5-TR

Voltage regulator at the motor driver’s side

Requirements

  • Input: 4S battery voltage (up to 16.8V).

  • Output: 5V, >50mA

  • For powering the isolators, driver pullup resistors.

NCP718BSN500T1G

Isolators

Requirements

  • Should electrically isolate motors' battery from computer’s battery to avoid short circuits on the motor’s side damaging the computer.

  • Signals between the microcontroller and motor drivers should go through isolator(s).

  • Needs to work with 3.3V and 5V.

SI8640AB-B-IS1

  • 4 channels

  • 2 isolators can be used for 3 pairs of motor driver PWM and direction signals, 1 motor driver nSLEEP signal and 1 thrower PWM signal.

  • NB SOIC16 package

  • Product page

  • Datasheet

MAX12930EASA+

  • 2 channels

  • Optional component when additional signals need to be isolated.

  • SOIC8 package

  • Product page

  • Datasheet

Encoder connectors

Requirements

  • For connecting encoder power and signal wires to the microcontroller.

  • 4 wires for each encoder.

Micro-MaTch 215079-4

Thrower ESC connector

Requirements

  • For connecting thrower motor controller.

  • Only 2 wires (GND and PWM) are needed.

Micro-MaTch 215079-4

Programmer connector

Requirements

  • For connecting STLink programmer to the microcontroller.

Amphenol 20021121-00010T4LF

  • Lower cost alternative to FTSH-105-01-L-DV-K.

  • Product page

Reverse voltage protection

Requirements

  • For avoiding reverse voltage damaging the components.

  • Should be connected between positive supply instead of ground to avoid having different ground potentials.

  • Simple and efficient solution is to use P-channel MOSFET.

  • MOSFET’s drain-source and gate-source rated voltages should be higher than battery voltage.

    • If battery voltage is higher than gate-source voltage, then zener diode can be used to clamp the gate voltage, and a resistor can be used to limit current through zener diode.

    • More information

    • Falstad simulation

BUK6Y10-30P

BUK6Y24-40PX

High current connections

Requirements

  • For connecting power input from battery and outputs from motor drivers.

  • No separate components are needed.

  • Simple rectangular SMD pads, where wires can be soldered, take little room and creates a reliable connection.

  • Pad size can be 3 x 3 mm or larger for 18 AWG wire.

LEDs

Requirements

  • LEDs can be connected to microcontroller and used in firmware to indicate that something is working.

  • LEDs can also be connected to voltage regulator output to indicate that the board has power.

  • LED’s brightness is controlled with current. The simplest way to limit current is to use resistor in series with the LED.

  • LED’s current can be calculated with the following equation: , where VF is LED’s forward voltage. VF can be found in the LED’s datasheet.

  • 0603 SMD package.

  • Current around 1 mA. Higher currents usually make the LED too bright and waste energy. Exact current is not that important if LED is used for visual indication and can be changed later by replacing the resistor.