Last modified by Eric Nantel on 2026/04/06 13:18

Show last authors
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>
23
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</h1>
30 <p><b>Updated December 20, 2011</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> Bot Board II, BASIC Atom Pro 28, wireless PS2 controller/receiver.</p>
33 <p><b>Software &amp; downloads:</b></p>
34 <ul style="padding-left:1.2rem; margin-top:0.25rem; line-height:1.8;">
35 <li>BASIC Micro Studio</li>
36 <li><a href="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-bipeds/brat-biped-ps2/WebHome/bratosf3.zip">BRAT Servo Offset Finder Program</a></li>
37 <li><a href="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-bipeds/brat-biped-ps2/WebHome/pbrat1-2.zip">PS2 Control Code</a></li>
38 </ul>
39 </div>
40 <div style="text-align:center; flex:0 1 280px;">
41 <img src="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-bipeds/brat-biped-ps2/WebHome/brat00.jpg" style="max-width:100%; border:1px solid #ccc; border-radius:4px;">
42 <p style="font-size:12px; color:#666; margin-top:0.3rem;"><b>Biped BRAT.</b></p>
43 </div>
44 </div>
45
46 <!-- Step 1 -->
47 <div class="asm-step">
48 <div class="asm-step-header">
49 <div class="asm-step-name">PS2 BRAT — Verify Servo Channel Connections</div>
50 <div class="asm-step-num">Step 1 / 8</div>
51 </div>
52 <div class="asm-step-body">
53 <div class="asm-step-text">
54 <p>Make sure your servos are plugged into the appropriate channels per Table 1. Note: P9 is used by the speaker and cannot be used for a servo.</p>
55 </div>
56 <div class="asm-step-figure" style="flex: 0 1 auto;">
57 <table class="ref-table" style="width:auto;">
58 <tr><th>Bot Board I/O</th><th>Connection</th></tr>
59 <tr><td>P4</td><td>Left Ankle</td></tr>
60 <tr><td>P5</td><td>Left Knee</td></tr>
61 <tr><td>P6</td><td>Left Hip</td></tr>
62 <tr><td>P7</td><td>Right Ankle</td></tr>
63 <tr><td>P8</td><td>Right Knee</td></tr>
64 <tr><td>P10</td><td>Right Hip</td></tr>
65 </table>
66 <span style="margin-top:0.4rem;">Table 1.</span>
67 </div>
68 </div>
69 </div>
70
71 <!-- Step 2 -->
72 <div class="asm-step">
73 <div class="asm-step-header">
74 <div class="asm-step-name">PS2 BRAT — Configure Bot Board II Jumpers</div>
75 <div class="asm-step-num">Step 2 / 8</div>
76 </div>
77 <div class="asm-step-body">
78 <div class="asm-step-text">
79 <p>Set the Bot Board II jumpers per Table 2. The VS to AX0 jumper enables battery voltage monitoring — the robot beeps when the battery is low. Refer to Figure 2 for the jumper layout.</p>
80 </div>
81 <div class="asm-step-figure" style="flex: 0 1 auto;">
82 <table class="ref-table" style="width:auto; margin-bottom:0.5rem;">
83 <tr><th colspan="2">Bot Board II Jumper Settings (Table 2)</th></tr>
84 <tr><td>Enable</td><td>A, B, and C buttons</td></tr>
85 <tr><td>VS</td><td>I/O Groups 4–7 and 8–11</td></tr>
86 <tr><td>Enable</td><td>SPKEN (Speaker Enable)</td></tr>
87 <tr><td>Enable</td><td>VS (Servo Voltage) to AX0 (P16)</td></tr>
88 </table>
89 <span>Table 2.</span>
90 </div>
91 </div>
92 <div class="asm-fullwidth">
93 <p style="font-weight:bold; margin-bottom:0.4rem;">Figure 2 — Jumper diagram</p>
94 <img src="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-bipeds/brat-biped-ps2/WebHome/ps2brat1.gif" style="max-width:100%; border:1px solid #ccc; border-radius:4px;">
95 </div>
96 </div>
97
98 <!-- Step 3 -->
99 <div class="asm-step">
100 <div class="asm-step-header">
101 <div class="asm-step-name">PS2 BRAT — Find Servo Offsets</div>
102 <div class="asm-step-num">Step 3 / 8</div>
103 </div>
104 <div class="asm-step-body">
105 <div class="asm-step-text">
106 <p>Download and install BASIC Micro Studio. Download the <a href="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-bipeds/brat-biped-ps2/WebHome/bratosf3.zip">BRAT Servo Offset Finder Program</a>, load it into the IDE, and program the Atom Pro. Use the buttons to adjust:</p>
107 <ul style="margin-top:0.5rem; padding-left:1.2rem;">
108 <li><b>A</b> — decrease servo offset by 5µs</li>
109 <li><b>C</b> — increase servo offset by 5µs</li>
110 <li><b>B</b> — change which servo is being adjusted, and save offsets (order shown in Figure 3)</li>
111 </ul>
112 <p>If the Speaker is enabled, pressing B plays a tone that rises in pitch as you cycle through servos and drops to a longer lower tone when returning to Start.</p>
113 </div>
114 <div class="asm-step-figure">
115 <img src="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-bipeds/brat-biped-ps2/WebHome/bratosf3.jpg">
116 <span>Figure 3 — Offset finder sequence.</span>
117 </div>
118 </div>
119 </div>
120
121 <!-- Step 4 -->
122 <div class="asm-step">
123 <div class="asm-step-header">
124 <div class="asm-step-name">PS2 BRAT — Calibrate to Neutral Position</div>
125 <div class="asm-step-num">Step 4 / 8</div>
126 </div>
127 <div class="asm-step-body">
128 <div class="asm-step-text">
129 <p>Place the robot as close to neutral as possible and turn it on. It should hold the 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. Use the A, B, and C buttons to fine-tune.</p>
130 <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 effect.</p>
131 <p><span class="asm-warning">After adjusting all servos to match Figures 4-1 through 4-3, pressing B saves the offset values to the Atom Pro's EEPROM.</span></p>
132 </div>
133 <div class="asm-figures">
134 <div class="asm-step-figure">
135 <img src="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-bipeds/brat-biped-ps2/WebHome/brat10.jpg">
136 <span>Figure 4-1 (front view).</span>
137 </div>
138 <div class="asm-step-figure">
139 <img src="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-bipeds/brat-biped-ps2/WebHome/brat07.jpg">
140 <span>Figure 4-2 (side view).</span>
141 </div>
142 <div class="asm-step-figure">
143 <img src="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-bipeds/brat-biped-ps2/WebHome/brat04.jpg">
144 <span>Figure 4-3 (rear view).</span>
145 </div>
146 </div>
147 </div>
148 </div>
149
150 <!-- Step 5 -->
151 <div class="asm-step">
152 <div class="asm-step-header">
153 <div class="asm-step-name">PS2 BRAT — Load PS2 Control Code</div>
154 <div class="asm-step-num">Step 5 / 8</div>
155 </div>
156 <div class="asm-step-body">
157 <div class="asm-step-text">
158 <p>Download the <a href="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-bipeds/brat-biped-ps2/WebHome/pbrat1-2.zip">PS2 BRAT Code</a>, load it into the IDE, and program your BRAT.</p>
159 </div>
160 </div>
161 </div>
162
163 <!-- Step 6 -->
164 <div class="asm-step">
165 <div class="asm-step-header">
166 <div class="asm-step-name">PS2 BRAT — Prepare PS2 Cables</div>
167 <div class="asm-step-num">Step 6 / 8</div>
168 </div>
169 <div class="asm-step-body">
170 <div class="asm-step-text">
171 <p>Repeat this process on one end of both 6" servo extender cables:</p>
172 <ol style="padding-left:1.2rem; margin-top:0.5rem;">
173 <li>Use an exacto knife to carefully pry up the black tabs and slip the wires out of the housing.</li>
174 <li>Remove the black housing completely and set aside.</li>
175 <li>Cover the header pin receptacles with 1/2" of heat shrink.</li>
176 </ol>
177 </div>
178 <div class="asm-step-figure">
179 <img src="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-bipeds/brat-biped-ps2/WebHome/ps2c01.jpg">
180 <span>Figure 6.</span>
181 </div>
182 </div>
183 </div>
184
185 <!-- Step 7 -->
186 <div class="asm-step">
187 <div class="asm-step-header">
188 <div class="asm-step-name">PS2 BRAT — Connect PS2 Cables to Bot Board II</div>
189 <div class="asm-step-num">Step 7 / 8</div>
190 </div>
191 <div class="asm-step-body">
192 <div class="asm-step-text">
193 <p>Plug the cables into the Bot Board II per Table 7, and update the jumper settings as shown.</p>
194 </div>
195 <div class="asm-step-figure" style="flex: 0 1 auto;">
196 <table class="ref-table" style="width:auto; margin-bottom:0.5rem;">
197 <tr><th colspan="3">Bot Board II Connections (Table 7)</th></tr>
198 <tr><td rowspan="3">Cable 1</td><td>Black</td><td>P12</td></tr>
199 <tr><td>Red</td><td>P13</td></tr>
200 <tr><td>Yellow</td><td>P14</td></tr>
201 <tr><td rowspan="3">Cable 2</td><td>Black</td><td>GND</td></tr>
202 <tr><td>Red</td><td>5VDC</td></tr>
203 <tr><td>Yellow</td><td>P15</td></tr>
204 <tr><th colspan="3">Jumper Settings</th></tr>
205 <tr><td>Disable</td><td colspan="2">A, B, and C buttons</td></tr>
206 <tr><td>5V</td><td colspan="2">I/O Group 12–15</td></tr>
207 </table>
208 <span>Table 7.</span>
209 </div>
210 </div>
211 <div class="asm-fullwidth">
212 <div style="display:flex; flex-wrap:wrap; gap:1.5rem; align-items:flex-start;">
213 <div style="flex: 0 1 280px; text-align:center;">
214 <img src="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-bipeds/brat-biped-ps2/WebHome/ps2c02.jpg" style="max-width:100%; border:1px solid #ccc; border-radius:4px;">
215 <p style="font-size:12px; color:#666; margin-top:0.3rem;">Figure 7 (cable connections).</p>
216 </div>
217 <div style="flex: 1 1 300px; text-align:center;">
218 <img src="https://wiki.lynxmotion.com/info/wiki/lynxmotion/download/servo-erector-set-robots-kits/ses-v1-robots/ses-v1-bipeds/brat-biped-ps2/WebHome/ps2brat2.gif" style="max-width:100%; border:1px solid #ccc; border-radius:4px;">
219 <p style="font-size:12px; color:#666; margin-top:0.3rem;">Figure 7 — Wiring diagram.</p>
220 </div>
221 </div>
222 </div>
223 </div>
224
225 <!-- Step 8 -->
226 <div class="asm-step">
227 <div class="asm-step-header">
228 <div class="asm-step-name">PS2 BRAT — PS2 Control Reference</div>
229 <div class="asm-step-num">Step 8 / 8</div>
230 </div>
231 <div class="asm-step-body">
232 <div class="asm-step-text">
233 <p>The PS2 control commands are shown in Table 8.</p>
234 </div>
235 <div class="asm-step-figure" style="flex: 0 1 auto;">
236 <table class="ref-table" style="width:auto;">
237 <tr><th>PS2 Button</th><th>Command</th></tr>
238 <tr><td>Left Joystick Forward/Back</td><td>Walk forward/backward</td></tr>
239 <tr><td>Left Joystick Left/Right</td><td>Turn in place left/right</td></tr>
240 <tr><td>X</td><td>Return robot to home position</td></tr>
241 <tr><td>△</td><td>Headbutt</td></tr>
242 <tr><td>L1</td><td>Kick with left leg</td></tr>
243 <tr><td>R1</td><td>Kick with right leg</td></tr>
244 <tr><td>D-pad Up</td><td>Get up from face-down position</td></tr>
245 <tr><td>D-pad Down</td><td>Get up from back-down position</td></tr>
246 <tr><td>Start</td><td>Enable/Disable standby rest mode (enabled by default)</td></tr>
247 <tr><td>Select</td><td>Change stride length</td></tr>
248 </table>
249 <span style="margin-top:0.4rem;">Table 8.</span>
250 </div>
251 </div>
252 </div>
253
254 </div>
255 {{/html}}
Copyright RobotShop 2018