Skip to content

Commit de04470

Browse files
authored
Improve build documentation (#523)
* added INA260 details * added testing of INA260 * Added details of testing the INA260 in the README * updated PCA9685 instructions * typo * specify wire length for roboclaws
1 parent 8106eef commit de04470

File tree

5 files changed

+694
-34
lines changed

5 files changed

+694
-34
lines changed

electrical/pcb/README.md

Lines changed: 56 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -135,10 +135,12 @@ The INA260 daughter board is used for digital sensing of voltage and current, me
135135

136136
**Option 1: If you have an INA260 daughter board, you should install that in footprint U1.**
137137

138-
TODO: update parts here
139-
140138
1. Attach an 8x1 female header to the 8 pins on the bottom side of the INA260 / U1 footprint, as seen in Figure 3.10
141-
2. Attach a 3x1 female header (cut from a longer Nx1 header) to the two pins on the top side of the INA260 / U1 footprint, as seen in Figure 3.10
139+
2. Solder the 8x1 male header pins to the INA260.
140+
3. Attach a 3x1 female header (cut from a longer Nx1 header) to the two pins on the top side of the INA260 / U1 footprint, as seen in Figure 3.14. You'll need to manually remove the center pin.
141+
4. Removce the center pin from a 3x1 male header pins, and solder to the INA260.
142+
5. Solder across pads A0 and A1 on the INA260 (to set it to use I2C Address 0x45)
143+
6. Install M2.5 x 12mm + 6mm standoffs to the side of the INA260 opposite the pins as shown in Figure 3.20
142144

143145
| <img src="../../images/pcb_assembly/v2_0_1/assembly/ina260_headers.png" height="300"> |
144146
|:-:|
@@ -154,11 +156,7 @@ TODO: need to update this discussion of bypassing U1 once the layout has been up
154156

155157
Install a 0 ohm resistor in footprint R30, on the top side of the board
156158

157-
### 3.6 Test INA260 installation
158-
159-
TODO
160-
161-
### 3.7 Install 5V bus regulator
159+
### 3.6 Install 5V bus regulator
162160

163161
This is the power regulator for the 5V line, which powers all the motors.
164162

@@ -172,7 +170,7 @@ Install 3 female headers for the daughter board, into U4. You will need a two 4x
172170
|:-:|
173171
| Figure 3.17: 5V regulator installed |
174172

175-
### 3.8 Install 12V bus regulator U3
173+
### 3.7 Install 12V bus regulator U3
176174

177175
Solder a 5x1 female header to the U3 footprint, and attach an appropriately sized standoff
178176

@@ -190,7 +188,7 @@ TODO: specify standoff
190188
|:-:|
191189
| Figure 3.20: 12v regulator installed (2) |
192190

193-
### 3.9 Install 3.3V bus regulator U7 and decoupling capacitor C7
191+
### 3.8 Install 3.3V bus regulator U7 and decoupling capacitor C7
194192

195193
The 3.3V bus regulator is a linear voltage regulator and is physically much smaller - it comes in the same packaging as diode D1. Make sure to install the regulator in the correct direction as shown in figure 3.21.
196194

@@ -208,7 +206,7 @@ Capacitor C7 is the decoupling capacitor for the 3.3v bus. Make sure to install
208206
|:-:|
209207
| Figure 3.24: Capacitor C7 installed |
210208

211-
### 3.10 Install resistors R15, R24, and BJT transistor Q1
209+
### 3.9 Install resistors R15, R24, and BJT transistor Q1
212210

213211
These form the circuit for the alert signal LED logic.
214212

@@ -221,7 +219,7 @@ These form the circuit for the alert signal LED logic.
221219
| Figure 3.26: R15, R24, and Q1 installed |
222220

223221

224-
### 3.11 Test all voltage lines
222+
### 3.10 Test all voltage lines
225223

226224
Test all the power buses/voltage lines using the test points on the far left side of the top side of the board (T7 through T12).
227225

@@ -251,7 +249,7 @@ The silk screen right of each hole indicates what voltage each test point should
251249
| Figure 3.31: testing the PWR bus (main board power plane, after battery protection circuitry ) |
252250

253251

254-
### 3.12 Install PCA9685 daughter board in U2 footprint and capacitor C3
252+
### 3.11 Install PCA9685 daughter board in U2 footprint and capacitor C3
255253

256254
:exclamation: Before continuing, make sure to disconnect the power supply from the previous step! You should not have the board powered on while installing components. :exclamation:
257255

@@ -261,32 +259,42 @@ First you will need to install female headers on the motor board, for the PCA968
261259
- 6x1 female header
262260
- 3x 2x4 female headers
263261

264-
You **may** use larger headers to fill all the holes in the U2 footprint, but it's not really necessary for the normal working configuration of the motor board. Attach these headers to the appropriate spots in the U2 footprint, as shown in figure 3.22.
265-
266-
You will need to attach male headers to the PCA9685 daughter board, as shown in figure 3.23. Also, 5v power is provided to the PCA9685 through the two holes at the top of the U2 header. To connect these, I soldered 2 small wire leads on the PCA9685 daughter board, and then soldered them on to the motor board once I installed the PCA9685.
267-
268-
TODO: update instructions with alternative to janky wire leads for PCA9685
269-
270-
TODO: figure 3.33 is not very good
262+
You **may** use larger headers to fill all the holes in the U2 footprint, but it's not really necessary for the normal working configuration of the motor board. Attach these headers to the appropriate spots in the U2 footprint, as shown in figure 3.32.
271263

272264
| <img src="../../images/pcb_assembly/v2_0_1/assembly/PXL_20230418_053133239.jpg" height="300"> |
273265
|:-:|
274266
| Figure 3.32: U2 with female headers installed |
275267

276-
| <img src="../../images/pcb_assembly/v2_0_1/assembly/PXL_20230418_054413269.MP.jpg" height="300"> |
268+
You will need to attach male headers to the PCA9685 daughter board, as shown in figure 3.33.
269+
270+
| <img src="../../images/pcb_assembly/v2_0_1/assembly/pca9685_headers.jpg" height="300"> |
277271
|:-:|
278272
| Figure 3.33: Male headers soldered onto PCA9685 daughter board |
279273

274+
Also, 5v power is provided to the PCA9685 through the two holes at the top of the U2 header. You have a couple options for this.
275+
276+
** Option 1 - Wires **
277+
To connect these, I soldered 2 small wire leads on the PCA9685 daughter board, and then soldered them on to the motor board once I installed the PCA9685.
278+
279+
** Option 2 - 1x1 Pins/Headers
280+
The V+ and GND on the PCA9685 don't exactly line up with the GND_motor and +5V_motor pins on the Motor board, but are close enough you can make them connect with two 1x1 pins on the PCA9685 and two 1x1 headers on the Motor board, as shown in figure 3.34.
281+
282+
| <img src="../../images/pcb_assembly/v2_0_1/assembly/pca9685_headers.jpg" height="300"> |
283+
|:-:|
284+
| Figure 3.34: Male headers soldered onto PCA9685 daughter board |
285+
280286
| <img src="../../images/pcb_assembly/v2_0_1/assembly/PXL_20230424_003801047.jpg" height="300"> |
281287
|:-:|
282-
| Figure 3.29: PCA9685 installed in motor board |
288+
| Figure 3.35: PCA9685 installed in motor board |
289+
290+
Finally install capicator C3 as shown in figure 3.36.
283291

284292
| <img src="../../images/pcb_assembly/v2_0_1/assembly/c3_installed.png" height="300"> |
285293
|:-:|
286-
| Figure 3.29.1 : C3 installed |
294+
| Figure 3.36 : C3 installed |
287295

288296

289-
### 3.13 Install resistor R5 and capacitor C1
297+
### 3.12 Install resistor R5 and capacitor C1
290298

291299
These are aids for the INA260, and can be left out if the IN260 is not used
292300

@@ -304,13 +312,27 @@ Use an 8x1 female header for J20.
304312
|:-:|
305313
| Figure 3.31: Components installed, as viewed from top of board |
306314

307-
### 3.14 Install resistors R2,R3,R4
315+
### 3.14 Test INA260 installation
316+
317+
To test the INA260, you will follow https://learn.adafruit.com/adafruit-ina260-current-voltage-power-sensor-breakout/arduino, and connect an Arduino to GND, SCL, and SDA on J20. You'll change the initalization step to
318+
```
319+
if (!ina260.begin(0x45)) {
320+
```
321+
to account for the I2C bus address. When you turn your power on, you should see something like this in the Arduino serial terminal:
322+
```
323+
Found INA260 chip
324+
Current: 85.00 mA
325+
Bus Voltage: 14456.25 mV
326+
Power: 1230.00 mW
327+
```
328+
329+
### 3.15 Install resistors R2,R3,R4
308330

309331
| <img src="../../images/pcb_assembly/v2_0_1/assembly/r2_r3_r4.png" height="300"> |
310332
|:-:|
311333
| Figure 3.32: Components installed, as viewed from top of board |
312334

313-
### 3.15 Install Roboclaw standoffs, headers, and capacitors
335+
### 3.16 Install Roboclaw standoffs, headers, and capacitors
314336

315337
Now we'll add the parts for roboclaw footprints RC1, RC2, and RC3.
316338

@@ -323,7 +345,7 @@ Finally, install the following capacitors for each RC footprint:
323345
- RC2: capacitors C2,C4,C9,C10 (figure 3.34). Install on the underside of the board.
324346
- RC3: capacitors C14,C16,C18,C21 (figure 3.34). Install on the top side of the board.
325347

326-
Technically, you can install the capacitors on either side of the board, but it makes for a cleaner presentation if you install them where their respecit "C" labels are on the board.
348+
Technically, you can install the capacitors on either side of the board, but it makes for a cleaner presentation if you install them where their respective "C" labels are on the board.
327349

328350
| <img src="../../images/pcb_assembly/v2_0_1/assembly/rc1_pop.png" height="300"> |
329351
|:-:|
@@ -333,7 +355,7 @@ Technically, you can install the capacitors on either side of the board, but it
333355
|:-:|
334356
| Figure 3.34: C13,C15,C17,C20 and C14,C16,C18,C21 installed|
335357

336-
### 3.16 Install motor supply headers J16,J17,J18
358+
### 3.17 Install motor supply headers J16,J17,J18
337359

338360
Figure 3.35 shows how these should be installed. J16 on the top of the board is installed in the same way.
339361

@@ -343,9 +365,9 @@ Make sure to orient the connector in the proper direction, as indicated in the i
343365
|:-:|
344366
| Figure 3.35: J17 and J18 installed, on bottom of board|
345367

346-
### 3.17 Install 3x Roboclaw boards in footprints RC1, RC2, RC3
368+
### 3.18 Install 3x Roboclaw boards in footprints RC1, RC2, RC3
347369

348-
First, wire the 6pos terminal block headers to the roboclaw boards, as indicated in figure 3.36.
370+
First, wire the 6pos terminal block headers to the roboclaw boards, as indicated in figure 3.36. Cut the wires to about 5cm and tin the ends.
349371

350372
Unless you have an older version of the PCB (v2.0.2 or earlier), wire the pins in the J16,J17,J18 headers directly to the pins on the corresponding side of the roboclaw - it is a direct 1-to-1 mapping all the way down, with no wires crossed. Use 16AWG wire (18AWG would also be fine)
351373

@@ -361,29 +383,29 @@ Then install the 3 roboclaws in the RC1, RC2, and RC3 footprints. It doesn't mat
361383
|:-:|
362384
| Figure 3.37: Installing the roboclaw boards |
363385

364-
### 3.18 Install capacitors C5,C6
386+
### 3.19 Install capacitors C5,C6
365387

366388
| <img src="../../images/pcb_assembly/v2_0_1/assembly/PXL_20230426_055549256.MP.jpg" height="300"> |
367389
|:-:|
368390
| Figure 3.38: Installing capacitors C5, C6|
369391

370-
### 3.19 Install corner servo header J19, and capacitor C19
392+
### 3.20 Install corner servo header J19, and capacitor C19
371393

372394
Make sure to install C19 in the proper direction, as shown in figure 3.39. One side of the capacitor has negative polarity indicators on it, that should be installed opposite the "+" sign on the footprint.
373395

374396
| <img src="../../images/pcb_assembly/v2_0_1/assembly/j19_c19.png" height="300"> |
375397
|:-:|
376398
| Figure 3.39: J19 and C19 installed (top of photo) |
377399

378-
### 3.20 Install LED array U5
400+
### 3.21 Install LED array U5
379401

380402
Make sure to align the slightly "chipped"/beveled corner of the LED array with the beveled corner of the U5 footprint, to have proper LED polarity
381403

382404
| <img src="../../images/pcb_assembly/v2_0_1/assembly/u5_installed.png" height="300"> |
383405
|:-:|
384406
| Figure 3.40: LED array U5 installed |
385407

386-
### 3.21 Install drive motor headers J8,J9,J10,J11,J13,J14
408+
### 3.22 Install drive motor headers J8,J9,J10,J11,J13,J14
387409

388410
| <img src="../../images/pcb_assembly/v2_0_1/assembly/IMG_0827.jpeg" height="300"> |
389411
|:-:|
Binary file not shown.

0 commit comments

Comments
 (0)