The DHB-10 defaults to a speed control scale from 1000 to 2000 us. That’s PULSOUT duration values from 500 (full speed clockwise) to 750 (stop) to 1000 (full speed counterclockwise). The DHB-10 has a scale command for adjusting that range. For example SCALE 200 would make it fit PULSOUT durations from 650 to 850. The result: Arlo goes a lot faster! This also means it’ll travel and turn more for a given number of pulses, so some recalibration may be in order.
' Arlo - Change Pulse Scale.bs2 ' Change pulse scale from 1000...2000 us to 1300 to 1700 us so that ' Robotics with the Boe-Bot examples can run the Arlo at top speed. ' {$STAMP BS2} ' {$PBASIC 2.5} DEBUG "Program Running!", CR FREQOUT 4, 2000, 3000 ' Signal program start/reset. DEBUG "SCALE 200", CR ' Display SCALE message SEROUT 13, 32800, ["SCALE 200", CR] ' Full speed in 650-850 SERIN 13, 32800, 50, ERR, [WAIT(CR)] ' Wait for DHB-10's confirmation ' Uncomment to return to default ' DEBUG "SCALE 1000", CR ' Display SCALE message ' SEROUT 13, 32800, ["SCALE 1000", CR] ' Full speed in 500-1000 ' SERIN 13, 32800, 50, ERR, [WAIT(CR)] ' Get DHB-10's reply DEBUG "STORE SCALE", CR ' Display STORE SCALE message SEROUT 13, 32800, ["STORE SCALE", CR] ' Remember scale SERIN 13, 32800, 50, ERR, [WAIT(CR)] ' Get DHB-10's reply SEROUT 13, 32800, ["PULSE", CR] ' Exit from serial to pulse mode SERIN 13, 32800, 50, ERR, [WAIT(CR)] ' Get DHB-10's reply DEBUG "Done!" END ERR: ' Error routine DEBUG "ERROR, no reply from DHB-10.", CR ' Error message STOP ' End program