Skip to main content

RideSX Driver

jumpstarter-driver-ridesx provides functionality for Qualcomm RideSX devices, supporting fastboot flashing operations and power control through serial communication. It includes automatic compression handling (.gz, .gzip, .xz), built-in storage for firmware images with upload/download capabilities, and direct access to the underlying serial interface for custom commands.

This is mainly tailored towards images that were produced using automotive-image-builder:

automotive-image-builder build --target ridesx4 --export aboot.simg --mode package manifest.aib.yml ridesx.img

Installation

:substitutions:
$ pip3 install --extra-index-url {{index_url}} jumpstarter-driver-ridesx

Configuration

The RideSX driver supports two main components:

Storage and Flashing Configuration

Example configuration for the RideSX driver:

  storage:
    type: "jumpstarter_driver_ridesx.driver.RideSXDriver"
    config:
    children:
      # fastboot management serial port
      serial:
        type: "jumpstarter_driver_pyserial.driver.PySerial"
        config:
          url: "/dev/serial/by-id/usb-QUALCOMM_Inc._Embedded_Power_Measurement__EPM__device_98000205101B0224-if01"
          baudrate: 115200
  power:
    type: "jumpstarter_driver_ridesx.driver.RideSXPowerDriver"
    config:
    children:
      serial:
        type: "jumpstarter_driver_pyserial.driver.PySerial"
        config:
          url: "/dev/serial/by-id/usb-QUALCOMM_Inc._Embedded_Power_Measurement__EPM__device_98000205101B0224-if01"
          baudrate: 115200
  serial:
    type: "jumpstarter_driver_pyserial.driver.PySerial"
    config:
      url: "/dev/serial/by-id/usb-FTDI_Qualcomm_AIR_8775_AI208U7YXA-if01-port01"
      baudrate: 115200

CLI usage

$ jmp shell -l board=qc-ridesx4
# Flash the device using the artifacts from automotive-image-builder, this uses 3 partition file systems
$$ j storage flash --target system_a:rootfs.simg --target system_b:qm_var.simg --target boot_a:aboot.img
$$ j storage erase recoveryinfo
$$ j power on
$$ j serial start-console

By default the device is powered off after flashing. Use --no-power-off to leave it on.

Config parameters

RideSXDriver

Parameter Description Type Required Default
storage_dir Directory to store firmware images and temporary files str no /var/lib/jumpstarter/ridesx

RideSXPowerDriver

The power driver requires a serial child instance for communication.

Required Children

Both drivers require:

Child Description Required
serial PySerial driver instance for communicating with the device yes

Usage

Flash Single Partition

# Flash a single partition (paths must exist; flash runs fastboot on the exporter)
ridesx_client.flash("/path/to/boot.img", target="boot")

Flash Multiple Partitions

# Flash multiple partitions
partitions = {
    "boot": "/path/to/boot.img",
    "system": "/path/to/system.img",
    "userdata": "/path/to/userdata.img"
}
ridesx_client.flash(partitions)

Flash with Compressed Images

The driver automatically handles compressed images (.gz, .gzip, .xz):

# Flash compressed images - decompression is automatic
ridesx_client.flash("/path/to/boot.img.gz", target="boot")

Erase Partition

# Erase a partition (boots to fastboot, erases, leaves device in fastboot)
ridesx_client.erase_partition("recoveryinfo")

Power Control

# Turn device power on
power_client.on()

# Turn device power off
power_client.off()

# Power cycle the device
power_client.cycle(wait=5)  # Wait 5 seconds between off/on

API Reference

RideSXClient

.. autoclass:: jumpstarter_driver_ridesx.client.RideSXClient()
    :members: flash, flash_images, erase_partition, boot_to_fastboot, cli

RideSXPowerClient

.. autoclass:: jumpstarter_driver_ridesx.client.RideSXPowerClient()
    :members: on, off, cycle, rescue, serial

Release files for jumpstarter-driver-ridesx 0.9.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for jumpstarter-driver-ridesx 0.9.0
File Size Uploaded
jumpstarter_driver_ridesx-0.9.0.tar.gz 19.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for jumpstarter-driver-ridesx 0.9.0
File Interpreter ABI Platform
jumpstarter_driver_ridesx-0.9.0-py3-none-any.whl Python 3 none any Details

Total release size: 39.6 kB

Release files / jumpstarter_driver_ridesx-0.9.0.tar.gz

Download URL jumpstarter_driver_ridesx-0.9.0.tar.gz
Size 19.1 kB
Tags Source
SHA-256 checksum
How to use checksums
0160122932047b6c709eb44ce1041fab7ae71351403c4a83c73e469d68755f1e
BLAKE2b-256 checksum
How to use checksums
1cdcce5c982da19481037c80470829d17b460d2743b85d1e0f5e0cfdd40f8d1b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.8.22

Release files / jumpstarter_driver_ridesx-0.9.0-py3-none-any.whl

Download URL jumpstarter_driver_ridesx-0.9.0-py3-none-any.whl
Size 20.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
f910fd363c37bf97416563f151289d25938c78d25c8599ab15311acf8be5c867
BLAKE2b-256 checksum
How to use checksums
455f27aa67902355c3eccb9f2d990f0a6311d1a1ffcdb7f253ec13947c3cc519
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.8.22

Release history Release notifications | RSS feed

This release

0.9.0 This release

2 release files

0.8.1

2 release files

0.7.4

2 release files

0.7.3

2 release files

0.7.2

2 release files

0.7.1

2 release files

0.7.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page