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)
| File | Size | Uploaded | |
|---|---|---|---|
| jumpstarter_driver_ridesx-0.9.0.tar.gz | 19.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| 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
|