Motors purchased from Research and Desire come pre-programmed. You only need to follow this guide if you sourced your motor elsewhere.
Web-Based Programming Tool
The easiest way to program your Gold Motor is the browser-based tool:Gold Motor Programming Tool
Program your motor directly from Chrome, Edge, or other Chromium-based browsers using the Web Serial API.
Prerequisites
Before you begin, gather the following:- RS485 to USB adapter with 5V+, GND, A, and B pins (example adapter)
- 20-36V DC power supply for the motor
- Chromium-based browser (Chrome, Edge, Brave, etc.)
Programming Instructions
1
Disconnect the signal cable
Remove the OSSM Reference Board 4-pin signal plug from the motor.
2
Connect the RS485 adapter
Wire the RS485 USB adapter to the motor programming port:
| Adapter Pin | Motor Pin |
|---|---|
| A | A |
| B | B |
| 5V+ | 5V+ |
| GND | GND |
3
Power the motor
Supply 20-36V DC power to the motor through either:
- The OSSM Reference Board
- An external power supply
Verify the green LED on the rear of the servo illuminates, confirming power is connected.
4
Connect to the programming tool
- Open the Gold Motor Programming Tool in your browser
- Click Connect to Motor
- Select your USB serial port from the browser dialog
5
Configure motor settings
Review and adjust the settings as needed:
- Basic settings are displayed by default and are sufficient for most OSSM builds
- Advanced settings can be revealed but require caution
6
Write settings to motor
- Click Write Settings to program the motor
- The tool writes settings multiple times to ensure reliability
- Verify the updated values display correctly
Confirm all settings match your expected configuration before proceeding.
7
Disconnect and reassemble
- Remove power from the motor
- Disconnect the RS485 programming adapter
- Reconnect the OSSM signal cable
Running the Tool Locally
You can run the programming tool offline:- Download the
GMPfolder from the OSSM hardware repository - Open
index.htmlin a Chromium-based browser - Follow the same connection and programming steps
Troubleshooting
Motor not detected
Motor not detected
- Verify the RS485 adapter is properly connected
- Check that A connects to A and B connects to B (not crossed)
- Ensure the motor has power (green LED visible)
- Try a different USB port
- Confirm your browser supports Web Serial API
Programming fails or times out
Programming fails or times out
- Disconnect and reconnect the RS485 adapter
- Power cycle the motor
- Ensure the OSSM signal cable is disconnected
- Try reducing the distance between adapter and motor
Settings don't persist after power cycle
Settings don't persist after power cycle
- Re-run the write operation
- Verify the tool shows success after writing
- Check for firmware compatibility issues
Legacy Python Script
A Python-based programming script is available for advanced users who prefer command-line tools. This script is less maintained than the web tool.
Default Settings Changed
The programming tools configure these essential settings:| Setting | Value | Purpose |
|---|---|---|
| Steps per revolution | 800 | Required for OSSM motion control |
| Communication protocol | RS485 | Matches OSSM PCB interface |
| Over-torque behavior | Reduce torque | Prevents sudden motor disable |

