Changes for page BRAT Biped PS2 & BotBoarduino Tutorial
Last modified by Eric Nantel on 2026/04/06 13:19
edited by Eric Nantel
on 2023/01/23 10:21
on 2023/01/23 10:21
edited by Eric Nantel
on 2026/04/06 13:19
on 2026/04/06 13:19
Change comment: There is no comment for this version
Summary
-
Page properties (2 modified, 0 added, 0 removed)
-
Attachments (0 modified, 9 added, 0 removed)
Details
- Page properties
-
- Parent
-
... ... @@ -1,1 +1,1 @@ 1 -se rvo-erector-set-robots-kits.ses-v1-robots.ses-v1-bipeds.WebHome1 +ses-v1.ses-v1-robots.ses-v1-bipeds.WebHome - Content
-
... ... @@ -1,3 +1,240 @@ 1 -{{html wiki="false" clean="true"}} 1 +{{html wiki="false" clean="false"}} 2 +<style> 3 + .asm { font-family: Verdana, Helvetica, sans-serif; font-size: 14px; max-width: 960px; } 4 + .asm-step { background: #fff; border: 1px solid #ddd; border-radius: 8px; margin-bottom: 1.5rem; overflow: hidden; } 5 + .asm-step-header { background: #F5A800; display: flex; align-items: stretch; justify-content: space-between; } 6 + .asm-step-name { padding: 0.6rem 1rem; font-weight: bold; font-size: 15px; color: #2C1A00; } 7 + .asm-step-num { background: #1a1a1a; color: white; padding: 0.6rem 1.1rem; font-weight: bold; font-size: 15px; display: flex; align-items: center; white-space: nowrap; } 8 + .asm-step-body { display: flex; flex-wrap: wrap; gap: 1.25rem; padding: 1rem; align-items: flex-start; } 9 + .asm-step-text { flex: 1 1 250px; font-size: 13px; line-height: 1.6; } 10 + .asm-step-figure { flex: 0 1 280px; text-align: center; } 11 + .asm-step-figure img { max-width: 100%; height: auto; border: 1px solid #ccc; border-radius: 4px; } 12 + .asm-step-figure span { display: block; font-size: 12px; color: #666; margin-top: 0.3rem; } 13 + .asm-figures { display: flex; flex-wrap: wrap; gap: 0.75rem; } 14 + .asm-fullwidth { padding: 1rem; border-top: 1px solid #eee; font-size: 13px; overflow-x: auto; } 15 + .ref-table { border-collapse: collapse; font-size: 12px; } 16 + .ref-table th { background: #ccc; border: 1px solid #aaa; padding: 0.3rem 0.6rem; text-align: center; } 17 + .ref-table td { border: 1px solid #ddd; padding: 0.3rem 0.6rem; text-align: center; } 18 + .ref-table tr:nth-child(odd) td { background: #f9f9f9; } 19 + .ref-table tr:nth-child(even) td { background: #fff; } 20 + .asm-warning { color: #c00; font-weight: bold; } 21 + .asm h1 { font-size: 18px; margin-bottom: 0.25rem; } 22 +</style> 2 2 24 +<div class="asm"> 25 + 26 + <!-- Header --> 27 + <div style="padding: 0.5rem 0 1rem 0; display:flex; flex-wrap:wrap; gap:1.5rem; align-items:flex-start;"> 28 + <div style="flex:1 1 300px;"> 29 + <h1 class="asm">PS2 Biped BRAT Tutorial (BotBoarduino)</h1> 30 + <p><b>Updated April 9, 2012</b></p> 31 + <p><span class="asm-warning">Safety first!</span> Wear eye protection and never touch a powered robot!</p> 32 + <p><b>Hardware required:</b> BotBoarduino, wireless PS2 controller/receiver.</p> 33 + <p><b>Software:</b> <a href="http://arduino.cc/en/Main/Software" target="_blank">Arduino Software</a></p> 34 + </div> 35 + <div style="text-align:center; flex:0 1 280px;"> 36 + <img src="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-bipeds/brat-biped-ps2-b/WebHome/brat00.jpg" style="max-width:100%; border:1px solid #ccc; border-radius:4px;"> 37 + <p style="font-size:12px; color:#666; margin-top:0.3rem;"><b>Biped BRAT.</b></p> 38 + </div> 39 + </div> 40 + 41 + <!-- Step 1 --> 42 + <div class="asm-step"> 43 + <div class="asm-step-header"> 44 + <div class="asm-step-name">PS2 BRAT (BBuino) — Verify Servo Channel Connections</div> 45 + <div class="asm-step-num">Step 1 / 8</div> 46 + </div> 47 + <div class="asm-step-body"> 48 + <div class="asm-step-text"> 49 + <p>Make sure your servos are plugged into the appropriate channels per Table 1. Note: P1 is used for communications and P5 is used by the speaker — neither can be used for servos.</p> 50 + </div> 51 + <div class="asm-step-figure" style="flex: 0 1 auto;"> 52 + <table class="ref-table" style="width:auto;"> 53 + <tr><th>BotBoarduino</th><th>Connection</th></tr> 54 + <tr><td>P2</td><td>Left Ankle</td></tr> 55 + <tr><td>P3</td><td>Left Knee</td></tr> 56 + <tr><td>P4</td><td>Left Hip</td></tr> 57 + <tr><td>P10</td><td>Right Ankle</td></tr> 58 + <tr><td>P11</td><td>Right Knee</td></tr> 59 + <tr><td>P12</td><td>Right Hip</td></tr> 60 + <tr><td>P13</td><td>Panning Servo (Optional)</td></tr> 61 + </table> 62 + <span style="margin-top:0.4rem;">Table 1.</span> 63 + </div> 64 + </div> 65 + </div> 66 + 67 + <!-- Step 2 --> 68 + <div class="asm-step"> 69 + <div class="asm-step-header"> 70 + <div class="asm-step-name">PS2 BRAT (BBuino) — Configure BotBoarduino Jumpers</div> 71 + <div class="asm-step-num">Step 2 / 8</div> 72 + </div> 73 + <div class="asm-step-body"> 74 + <div class="asm-step-text"> 75 + <p>Set the BotBoarduino jumpers per Table 2. The VS to P0 (Analog 0) jumper enables battery voltage monitoring — the robot beeps when the battery is low. Refer to Figure 2 for the jumper layout.</p> 76 + </div> 77 + <div class="asm-step-figure" style="flex: 0 1 auto;"> 78 + <table class="ref-table" style="width:auto; margin-bottom:0.5rem;"> 79 + <tr><th colspan="2">BotBoarduino Jumper Settings (Table 2)</th></tr> 80 + <tr><td>Enable</td><td>A, B, and C buttons (JA, JB, JC)</td></tr> 81 + <tr><td>5V</td><td>Analog Group</td></tr> 82 + <tr><td>VS</td><td>I/O Groups 1–5 and 6–9</td></tr> 83 + <tr><td>Enable</td><td>SPK (Speaker)</td></tr> 84 + <tr><td>Enable</td><td>VS (Servo Voltage) to P0 (Analog 0)</td></tr> 85 + </table> 86 + <span>Table 2.</span> 87 + </div> 88 + </div> 89 + <div class="asm-fullwidth"> 90 + <p style="font-weight:bold; margin-bottom:0.4rem;">Figure 2 — Jumper diagram</p> 91 + <img src="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-bipeds/brat-biped-ps2-b/WebHome/bbubrat02.png" style="max-width:100%; border:1px solid #ccc; border-radius:4px;"> 92 + </div> 93 + </div> 94 + 95 + <!-- Step 3 --> 96 + <div class="asm-step"> 97 + <div class="asm-step-header"> 98 + <div class="asm-step-name">PS2 BRAT (BBuino) — Install Arduino & Load Code</div> 99 + <div class="asm-step-num">Step 3 / 8</div> 100 + </div> 101 + <div class="asm-step-body"> 102 + <div class="asm-step-text"> 103 + <p>Download and install the <a href="http://arduino.cc/en/Main/Software" target="_blank">Arduino Software</a>. Install the <a href="https://github.com/Lynxmotion/Arduino-PS2X/raw/master/PS2X_lib.zip">PS2X library</a> — instructions for installing libraries are available <a href="http://arduino.cc/en/Reference/Libraries" target="_blank">here</a>. Download the BRAT code from <a href="https://github.com/Lynxmotion/Brat/tree/master/BRAT_Arduino" target="_blank">GitHub</a>.</p> 104 + <p>Open the .ino file in the IDE, program the BotBoarduino, then power the robot down.</p> 105 + </div> 106 + <div class="asm-step-figure"> 107 + <img src="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-bipeds/brat-biped-ps2-b/WebHome/bratosf4.png"> 108 + <span>Figure 3 — Offset finder sequence.</span> 109 + </div> 110 + </div> 111 + </div> 112 + 113 + <!-- Step 4 --> 114 + <div class="asm-step"> 115 + <div class="asm-step-header"> 116 + <div class="asm-step-name">PS2 BRAT (BBuino) — Calibrate to Neutral Position</div> 117 + <div class="asm-step-num">Step 4 / 8</div> 118 + </div> 119 + <div class="asm-step-body"> 120 + <div class="asm-step-text"> 121 + <p>Place the robot as close to neutral as possible, <b>hold the "A" button</b>, and turn it on. It should hold the neutral position resembling Figures 4-1 through 4-3. If any joint is off by more than 15°, remove the servo horn, rotate to align, and reattach.</p> 122 + <ul style="margin-top:0.5rem; padding-left:1.2rem;"> 123 + <li><b>B</b> — decrease servo offset by 1°</li> 124 + <li><b>C</b> — increase servo offset by 1°</li> 125 + <li><b>A</b> — change which servo is being adjusted, and save offsets. When the program reaches "Save Data" it saves offsets and runs the program. If you make a mistake, restart while holding A.</li> 126 + </ul> 127 + <p>If the Speaker is enabled, pressing A plays a tone that rises in pitch as you cycle through servos.</p> 128 + <p>Note: HS-422 hip servos may oscillate when lifted — normal and minimal when walking. Higher voltage worsens this. HS-475, HS-485, HS-645 servos do not exhibit this.</p> 129 + </div> 130 + <div class="asm-figures"> 131 + <div class="asm-step-figure"> 132 + <img src="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-bipeds/brat-biped-ps2-b/WebHome/brat10.jpg"> 133 + <span>Figure 4-1 (front view).</span> 134 + </div> 135 + <div class="asm-step-figure"> 136 + <img src="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-bipeds/brat-biped-ps2-b/WebHome/brat07.jpg"> 137 + <span>Figure 4-2 (side view).</span> 138 + </div> 139 + <div class="asm-step-figure"> 140 + <img src="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-bipeds/brat-biped-ps2-b/WebHome/brat04.jpg"> 141 + <span>Figure 4-3 (rear view).</span> 142 + </div> 143 + </div> 144 + </div> 145 + </div> 146 + 147 + <!-- Step 6 (labelled 6 in original, Step 5 missing) --> 148 + <div class="asm-step"> 149 + <div class="asm-step-header"> 150 + <div class="asm-step-name">PS2 BRAT (BBuino) — Prepare PS2 Cables</div> 151 + <div class="asm-step-num">Step 5 / 8</div> 152 + </div> 153 + <div class="asm-step-body"> 154 + <div class="asm-step-text"> 155 + <p>Repeat this process on one end of two 6" servo extender cables:</p> 156 + <ol style="padding-left:1.2rem; margin-top:0.5rem;"> 157 + <li>Use an exacto knife to carefully pry up the black tabs and slip the wires out of the housing.</li> 158 + <li>Remove the black housing completely and set aside.</li> 159 + <li>Cover the header pin receptacles with 1/2" of heat shrink.</li> 160 + </ol> 161 + </div> 162 + <div class="asm-step-figure"> 163 + <img src="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-bipeds/brat-biped-ps2-b/WebHome/ps2c01.jpg"> 164 + <span>Figure 5.</span> 165 + </div> 166 + </div> 167 + </div> 168 + 169 + <!-- Step 7 --> 170 + <div class="asm-step"> 171 + <div class="asm-step-header"> 172 + <div class="asm-step-name">PS2 BRAT (BBuino) — Connect PS2 Cables to BotBoarduino</div> 173 + <div class="asm-step-num">Step 6 / 8</div> 174 + </div> 175 + <div class="asm-step-body"> 176 + <div class="asm-step-text"> 177 + <p>Plug the cables into the PS2 receiver and BotBoarduino per Table 7, and update the jumper settings as shown. To adjust offsets later, unplug the PS2 receiver and replace the JA, JB, and JC jumpers.</p> 178 + </div> 179 + <div class="asm-step-figure" style="flex: 0 1 auto;"> 180 + <table class="ref-table" style="width:auto; margin-bottom:0.5rem;"> 181 + <tr><th colspan="3">BotBoarduino Connections (Table 7)</th></tr> 182 + <tr><td rowspan="3">Cable 1</td><td>Black</td><td>P6</td></tr> 183 + <tr><td>Red</td><td>P7</td></tr> 184 + <tr><td>Yellow</td><td>P8</td></tr> 185 + <tr><td rowspan="3">Cable 2</td><td>Black</td><td>GND</td></tr> 186 + <tr><td>Red</td><td>5VDC</td></tr> 187 + <tr><td>Yellow</td><td>P9</td></tr> 188 + <tr><th colspan="3">Jumper Settings</th></tr> 189 + <tr><td>Disable</td><td colspan="2">JPU (Remove JA, JB, JC)</td></tr> 190 + <tr><td>5V</td><td colspan="2">I/O Group 12–15</td></tr> 191 + </table> 192 + <span>Table 7.</span> 193 + </div> 194 + </div> 195 + <div class="asm-fullwidth"> 196 + <p style="font-weight:bold; margin-bottom:0.25rem;">Schematic — double-check connections below. <a href="https://wiki.lynxmotion.com/info/wiki/lynxmotion/view/servo-erector-set-system/ses-electronics/ses-modules/botboarduino/botboarduino-manual/#aglance" target="_blank">PS2 cable colour reference</a></p> 197 + <div style="display:flex; flex-wrap:wrap; gap:1rem; align-items:flex-start; margin-top:0.5rem;"> 198 + <div style="flex: 0 1 280px; text-align:center;"> 199 + <img src="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-bipeds/brat-biped-ps2-b/WebHome/ps2c02.jpg" style="max-width:100%; border:1px solid #ccc; border-radius:4px;"> 200 + <p style="font-size:12px; color:#666; margin-top:0.3rem;">Figure 6 (cable connections).</p> 201 + </div> 202 + <div style="flex: 1 1 300px; text-align:center;"> 203 + <img src="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-bipeds/brat-biped-ps2-b/WebHome/bbups2brat.png" style="max-width:100%; border:1px solid #ccc; border-radius:4px;"> 204 + <p style="font-size:12px; color:#666; margin-top:0.3rem;">Figure 7 — Full wiring schematic.</p> 205 + </div> 206 + </div> 207 + </div> 208 + </div> 209 + 210 + <!-- Step 8 --> 211 + <div class="asm-step"> 212 + <div class="asm-step-header"> 213 + <div class="asm-step-name">PS2 BRAT (BBuino) — PS2 Control Reference</div> 214 + <div class="asm-step-num">Step 8 / 8</div> 215 + </div> 216 + <div class="asm-step-body"> 217 + <div class="asm-step-text"> 218 + <p>The PS2 control commands are shown in Table 8. To adjust servo offsets later, unplug the PS2 receiver and replace the JA, JB, and JC jumpers.</p> 219 + </div> 220 + <div class="asm-step-figure" style="flex: 0 1 auto;"> 221 + <table class="ref-table" style="width:auto;"> 222 + <tr><th>PS2 Button</th><th>Command</th></tr> 223 + <tr><td>Left Joystick Forward/Back</td><td>Walk forward/backward</td></tr> 224 + <tr><td>Left Joystick Left/Right</td><td>Turn in place left/right</td></tr> 225 + <tr><td>X</td><td>Return robot to home position</td></tr> 226 + <tr><td>△</td><td>Headbutt</td></tr> 227 + <tr><td>L1</td><td>Kick with left leg</td></tr> 228 + <tr><td>R1</td><td>Kick with right leg</td></tr> 229 + <tr><td>D-pad Up</td><td>Get up from face-down position</td></tr> 230 + <tr><td>D-pad Down</td><td>Get up from back-down position</td></tr> 231 + <tr><td>Start</td><td>Enable/Disable standby rest mode (enabled by default)</td></tr> 232 + <tr><td>Select</td><td>Change stride length</td></tr> 233 + </table> 234 + <span style="margin-top:0.4rem;">Table 8.</span> 235 + </div> 236 + </div> 237 + </div> 238 + 239 +</div> 3 3 {{/html}}
- bbubrat02.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +xwiki:XWiki.ENantel - Size
-
... ... @@ -1,0 +1,1 @@ 1 +56.9 KB - Content
- bbups2brat.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +xwiki:XWiki.ENantel - Size
-
... ... @@ -1,0 +1,1 @@ 1 +82.9 KB - Content
- brat00.jpg
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +xwiki:XWiki.ENantel - Size
-
... ... @@ -1,0 +1,1 @@ 1 +7.8 KB - Content
- brat04.jpg
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +xwiki:XWiki.ENantel - Size
-
... ... @@ -1,0 +1,1 @@ 1 +12.0 KB - Content
- brat07.jpg
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +xwiki:XWiki.ENantel - Size
-
... ... @@ -1,0 +1,1 @@ 1 +11.6 KB - Content
- brat10.jpg
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +xwiki:XWiki.ENantel - Size
-
... ... @@ -1,0 +1,1 @@ 1 +12.5 KB - Content
- bratosf4.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +xwiki:XWiki.ENantel - Size
-
... ... @@ -1,0 +1,1 @@ 1 +29.6 KB - Content
- ps2c01.jpg
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +xwiki:XWiki.ENantel - Size
-
... ... @@ -1,0 +1,1 @@ 1 +11.6 KB - Content
- ps2c02.jpg
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +xwiki:XWiki.ENantel - Size
-
... ... @@ -1,0 +1,1 @@ 1 +8.8 KB - Content

