Sabertooth Issue

Sabertooth 2×25 v2 – Arduino Due (3.3V) Simplified Serial: Motor Output ~0.5V at Idle / Startup — Level Shifting Not Helping

Platform: Arduino Due (3.3V logic) + Sabertooth 2×25 v2 Mode: Simplified Serial (8N1, 38400 baud) Connection: Due TX1 (Pin 18) → Sabertooth S1

The Problem

I’m interfacing an Arduino Due (SAM3X, 3.3V logic) with a Sabertooth 2×25 v2 in Simplified Serial mode as part of a robotics platform (AGX Xavier + Due + Sabertooth). The system is powered, DIP switches are correctly configured for Simplified Serial at 38400 baud, and the common ground is shared across all devices.

Observed behaviour:

  • With TX1 connected to S1: one motor terminal reads ~0.5V — motors should be at rest (no command sent, or command 64 / 192 for stop), but the Sabertooth is clearly interpreting something as a partial drive command.

  • With TX1 disconnected from S1: output returns to 0V as expected.

The moment the TX line is connected, the Sabertooth wakes up and acts on something — even before any serial command is intentionally sent.

Root Cause Hypothesis

The Arduino Due TX line idles HIGH at 3.3V. UART idle state is logic HIGH (mark state). The Sabertooth S1 input appears to expect a clean 5V TTL HIGH during idle. At 3.3V, the signal sits in an ambiguous threshold zone — not a definitive HIGH, not a definitive LOW — and the Sabertooth is interpreting this undefined voltage as serial framing noise or a partial command byte, resulting in a small but measurable motor output.

The Sabertooth 2×25 datasheet actually states:
“If using a TTL serial device like a microcontroller, the TX line of the microcontroller may be connected directly to S1.”

So a direct connection should work in theory — but this claim was clearly written with 5V microcontrollers (AVR/PIC) in mind, not 3.3V ARM-based boards like the Due.

Solutions Tried — All Failed

Attempt 1: Direct connection (TX1 → S1, shared GND)

  • Result: 0.5V on one motor terminal at idle. Persistent.

  • Conclusion: 3.3V logic level is insufficient / ambiguous for the Sabertooth’s S1 threshold.

Attempt 2: 10kΩ pull-down resistor on S1 to GND

  • Wiring: S1 → 10kΩ → GND, TX1 → S1

  • Expected: Force line low during noise/floating state

  • Result: Still ~0.5V on motor terminal. No improvement.

  • Analysis: UART idle is HIGH (3.3V), so a pull-down actively fights the TX line and cannot pull it below the Sabertooth’s threshold. Also doesn’t fix the core voltage level problem.

Attempt 3: BSS138 4-Channel Bi-Directional Logic Level Converter Module (3.3V ↔ 5V)

  • Wiring:

    • LV → Due 3.3V

    • GND (LV side) → Due GND

    • A1 → Due TX1 (Pin 18)

    • HV → Sabertooth 5V terminal

    • GND (HV side) → common GND

    • B1 → Sabertooth S1

  • Expected: Clean 5V TTL signal on B1 whenever TX1 drives A1

  • Result: Motor terminal voltage reduced slightly to ~0.3V — marginally better but still not 0V, still misinterpreting the idle line

  • Analysis: The BSS138 module is bi-directional and open-drain, designed primarily for I2C and slow logic. For UART, the transition speed and the idle-high pull-up topology may not be giving the Sabertooth a clean enough HIGH fast enough at startup. The improvement from 0.5V → 0.3V suggests the level shift is partially working but not reliably.

System Setup

AGX Xavier (Pin 39 → common GND)
         |
Arduino Due (TX1 Pin 18) → [BSS138 A1 → B1] → Sabertooth 2×25 v2 S1
         |                                              |
         └──────────── common GND ────────────────────-┘
                                  |
                          Sabertooth 5V → BSS138 HV

  • Baud rate: 38400

  • Protocol: Simplified Serial

  • DIP switch config: confirmed for Simplified Serial mode

  • Power: Due on USB/barrel, Sabertooth on separate battery — common GND shared

Hi @ujjawal_phd and welcome to our forum!

It seems that you already performed extensive troubleshooting steps.

At this point, I would advise that you write to Dimension Engineering directly on [email protected].

They would be able to troubleshoot further, and repair/exchange device is needed.

Thank you.