Serial Output Not Working / COM Port Issues
If your serial output device (e.g., an Arduino-based controller, Thanos, M4S, or SMC3) isn’t responding, work through this guide step by step.
Quick Diagnosis Flowchart
Section titled “Quick Diagnosis Flowchart”- Does the device show up in Windows Device Manager? → If not, it’s a driver or cable issue → Install Drivers / USB Cable Issues
- Is the correct COM port selected in DR Sim Manager? → Check COM Port Selection
- Can you connect but get no motion? → Baud Rate Mismatch or Protocol Mismatch
- Does it say “Access is denied” or fail to connect? → Port In Use
- Does it connect sometimes but drop out? → USB Cable Issues or USB Bandwidth
1. Check COM Port Selection
Section titled “1. Check COM Port Selection”- Go to the Outputs tab.
- Find your serial output and check that the correct COM port is selected.
- If you don’t see your device listed, try clicking Refresh to rescan available ports.
- If the port still doesn’t appear, the device isn’t being recognized by Windows — continue to the driver and cable sections below.
How to Find Your COM Port in Windows Device Manager
Section titled “How to Find Your COM Port in Windows Device Manager”- Press Win + X and select Device Manager (or search for “Device Manager” in the Start menu).
- Expand the Ports (COM & LPT) section.
- Your device will be listed with its COM port number (e.g., “USB-SERIAL CH340 (COM3)”).
- If you don’t see a Ports section at all, or your device shows up under Other devices with a yellow warning icon, drivers are not installed correctly.
COM Port Number Changes
Section titled “COM Port Number Changes”Windows may assign a different COM port number if you plug your device into a different USB port. If your device was working before and stopped after plugging it into a different port, check Device Manager for the new COM port number and update it in DR Sim Manager’s output configuration.
2. Install Drivers
Section titled “2. Install Drivers”Some serial devices require specific drivers to be recognized by Windows:
- Arduino Uno / Mega (ATmega16u2) — Usually recognized automatically. If not, install the Arduino IDE which includes the necessary drivers.
- CH340/CH341-based boards — Common on Arduino clones and many motion controllers. Download and install the CH340 driver from the manufacturer’s website.
- FTDI-based boards (FT232) — Download and install the FTDI VCP (Virtual COM Port) driver from the FTDI website.
- CP2102-based boards — Download the CP210x USB to UART driver from Silicon Labs.
After installing drivers:
- Unplug your device.
- Wait 10 seconds.
- Plug it back in.
- Check Device Manager to confirm the device appears under Ports (COM & LPT).
- Restart DR Sim Manager and select the correct COM port.
3. Baud Rate Mismatch
Section titled “3. Baud Rate Mismatch”The baud rate in DR Sim Manager must exactly match the baud rate configured on your device’s firmware. If they don’t match, the device will receive garbled data or no recognizable data at all.
Symptoms of baud rate mismatch:
- Device connects successfully (no errors) but doesn’t move
- Device moves erratically or vibrates
- Device LEDs blink but actuators don’t respond correctly
How to fix:
- Check your device’s documentation or firmware configuration for the expected baud rate.
- In DR Sim Manager, go to the Outputs tab and find your serial output.
- Set the Baud Rate to match your device’s firmware setting.
- Common baud rates: 115200, 250000, 500000, 1000000. Check your controller’s documentation for the correct value.
4. Serial Port Settings
Section titled “4. Serial Port Settings”Beyond baud rate, the following serial parameters must also match your device:
- Data Bits — Usually 8 (default).
- Parity — Usually None (default). Options: None, Even, Odd, Mark, Space.
- Stop Bits — Usually 1 (default). Options: 1, 1.5, 2.
If any of these don’t match your device’s firmware settings, communication will fail or produce garbled data. Most motion controllers use the standard settings (8-N-1: 8 data bits, No parity, 1 stop bit).
5. Port In Use
Section titled “5. Port In Use”Only one application can use a COM port at a time. If another application has the port open, DR Sim Manager will fail to connect with an “Access is denied” error.
Common applications that may hold a COM port open:
- Arduino IDE Serial Monitor
- Other motion software (SimTools, FlyPT Mover, etc.)
- Terminal programs (PuTTY, Tera Term)
- Controller configuration utilities
- Another instance of DR Sim Manager
How to fix:
- Close any other application that might be using the COM port.
- If you can’t identify the application, try restarting your PC to release all COM port locks.
- Click Refresh in DR Sim Manager’s output configuration and try connecting again.
6. USB Cable Issues
Section titled “6. USB Cable Issues”USB cable problems are one of the most common — and most overlooked — causes of serial output failures.
- Use a data cable, not a charge-only cable. Charge-only cables lack the data wires needed for serial communication. If your device’s LEDs light up but it doesn’t appear in Device Manager, try a different cable.
- Try a different USB port on your computer. Front panel USB ports sometimes have lower power or bandwidth.
- Avoid USB hubs if possible — connect directly to your PC’s rear USB ports. If you must use a hub, use a powered hub.
- Check cable length — Very long USB cables (over 3 meters / 10 feet) can cause signal degradation. Use the shortest cable that reaches.
- Check for loose connections — Make sure the cable is firmly plugged in at both ends. A loose connection can cause intermittent disconnections.
7. Protocol Mismatch
Section titled “7. Protocol Mismatch”DR Sim Manager supports several serial output protocols (Serial Output, SMC3, DMover, etc.). Using the wrong output type for your controller will result in the controller receiving data it doesn’t understand.
How to verify:
- Make sure you added the correct output type in the Outputs tab for your specific controller:
- Thanos Controller → Use the “Thanos Controller” output type
- M4S Controller → Use the “M4S Controller” output type
- SMC3 → Use the “SMC3 Serial Output” type
- Generic Arduino → Use the “Serial Output” type and configure the protocol to match your firmware
- DMover → Use the “DMover Controller” output type
- VNM → Use the “VNM Controller” output type
- Check the output’s port mapping — make sure each output port is mapped to the correct actuator from your Sim Config.
For detailed output configuration instructions, see the Outputs page.
8. USB Bandwidth with Multiple Devices
Section titled “8. USB Bandwidth with Multiple Devices”If you have multiple serial devices connected (e.g., separate controllers for different actuators, bass shakers, wind simulators), USB bandwidth can become a bottleneck, especially if all devices share the same USB controller.
Symptoms:
- Intermittent disconnections
- Delayed or stuttering motion
- Some devices work while others don’t
How to fix:
- Distribute devices across different USB controllers on your motherboard (typically front vs. rear ports use different controllers).
- Use a powered USB hub for devices that need it.
- Reduce the number of other USB devices (webcams, capture cards) sharing the same controller.
Error Messages Reference
Section titled “Error Messages Reference”| Error Message | Meaning | Solution |
|---|---|---|
| “COM port is not configured” | No COM port selected | Select a COM port in the output configuration |
| “Access is denied” | Another application has the port open | Close other applications using the port |
| “Connection failed” | Could not open the COM port | Check driver installation, cable, and port selection |
| “Failed to start - COM port not configured” | Tried to start motion without selecting a port | Configure the COM port in the Outputs tab first |
Still Not Working?
Section titled “Still Not Working?”- Check the Debug Log — Open the Debug Log dock and set Log Verbosity to DEBUG for the most detailed messages. Look for “Device Error” or “SerialController” messages.
- Test with a simple terminal program — Use a program like PuTTY or Arduino Serial Monitor to verify you can communicate with your device at all. If the device doesn’t respond to any program, the issue is hardware-related.
- Try the device on another PC — This determines whether the problem is with the device or your computer.
- Join Discord — The Departed Reality Discord community can help troubleshoot hardware-specific issues.