A Python library for processing sensor data on Dexmate Robots
Project description
DexSensor
A unified sensor management system for Dexmate robots. DexSensor provides automatic robot detection and configuration for cameras, IMU, LiDAR, and other sensors through an easy-to-use command line interface.
Features
- Automatic Robot Detection: Detects robot model and loads appropriate sensor configuration
- Multiple Robot Variants: Support for different robot models with optimized sensor configurations
- Unified Sensor Management: Consistent interface for cameras, IMU, LiDAR, and other sensors
- Real-time Communication: High-performance sensor data streaming
- Flexible Configuration: Easy configuration management with YAML files
- Command Line Interface: Simple CLI for sensor control and configuration
Installation
DexSensor is distributed as a pre-built package for Dexmate robot systems.
# Install DexSensor package
pip install dexsensor
# Verify installation
dexsensor --help
Quick Start
Automatic Robot Detection
Set your robot model and launch sensors:
# Set robot name environment variable
export ROBOT_NAME=vg-rc2 # for vega-rc2
export ROBOT_NAME=vg-1 # for vega-1
# Launch sensors with automatic detection
dexsensor launch
Manual Robot Selection
# Specify robot model explicitly
dexsensor launch --robot vega-rc2
# Launch specific sensors only
dexsensor launch --sensor head_camera base_front_camera
# Override configuration values
dexsensor launch --set head_camera.fps=60 lidar.enable=true
Supported Robot Variants
| Variant | Description | Default Sensors |
|---|---|---|
vega-rc1 |
Development setup | All sensors disabled |
vega-rc2 |
Basic operation | Head camera + front camera |
vega-1 |
Production setup | Head camera only |
base |
Full configuration | All sensors available |
Command Line Interface
Launch Sensors
# Basic usage
dexsensor launch
# With specific robot model
dexsensor launch --robot vega-rc2
# Launch specific sensors
dexsensor launch --sensor head_camera lidar
# Launch all sensors (enables all sensors regardless of default config)
dexsensor launch --sensor all
# Launch all base cameras (base_left, base_right, base_front, base_back)
dexsensor launch --sensor base_camera
# Override configuration
dexsensor launch --set head_camera.fps=60 lidar.enable=true
# Use custom configuration file
dexsensor launch --config /path/to/config.yaml
# Combine options
dexsensor launch --robot vega-1 --set head_camera.fps=30 --sensor head_camera
Configuration Management
# Generate configuration template
dexsensor gen-cfg
# Generate for specific robot model
dexsensor gen-cfg --robot vega-rc2
# Save to custom location
dexsensor gen-cfg --robot vega-1 --output /path/to/config.yaml
Command Options
| Option | Description | Example |
|---|---|---|
--robot |
Specify robot variant | --robot vega-rc2 |
--sensor |
Launch specific sensors, "all", or "base_camera" | --sensor head_camera lidar, --sensor all, or --sensor base_camera |
--config |
Use custom config file | --config config.yaml |
--set |
Override config values | --set head_camera.fps=60 |
--zenoh |
Custom Zenoh config | --zenoh zenoh.json5 |
Configuration
Configuration Files
DexSensor uses YAML configuration files with the following precedence:
- Command line overrides (
--set key=value) - Custom configuration files (
--config file.yaml) - Default configuration file (
~/.dexmate/sensors/default_config.yaml) - Robot variant defaults (based on detected/specified robot model)
Configuration Example
head_camera:
enable: true
fps: 30
resolution: HD1080
depth_mode: NEURAL
base_front_camera:
enable: true
width: 640
height: 480
fps: 30
format: MJPG
lidar:
enable: false
ip_address: "192.168.50.41"
udp_port: 8089
base_imu:
enable: true
head_imu:
enable: true
Environment Variables
| Variable | Description | Example |
|---|---|---|
ROBOT_NAME |
Robot model for auto-detection | export ROBOT_NAME=vg-rc2 |
Sensor Types
DexSensor supports the following sensor types:
- Cameras: RGB cameras, stereo cameras (ZED), RGBD cameras
- IMU: Inertial measurement units for head and base
- LiDAR: 2D laser range finders
- Additional sensors: Extensible for future sensor types
System Requirements
- Operating System: Linux (Ubuntu 20.04+ recommended)
- Python: 3.10 or higher
- Hardware: Compatible Dexmate robot hardware
- Network: Ethernet connection for sensor communication
Troubleshooting
Common Issues
Sensors not detected:
# Check robot name is set
echo $ROBOT_NAME
# Verify configuration
dexsensor gen-cfg --robot vega-rc2
Permission errors:
# Check USB device permissions
sudo usermod -a -G dialout $USER
# Log out and back in
Network connectivity:
# Test sensor network connectivity
ping 192.168.50.41 # Example LiDAR IP
Log Files
DexSensor logs are available at:
- System logs:
/var/log/dexsensor/ - User logs:
~/.dexmate/logs/
Support
For technical support and documentation:
- Documentation: Contact your Dexmate representative
- Technical Support: support@dexmate.ai
- Sales Inquiries: contact@dexmate.ai
License
DexSensor is proprietary software licensed exclusively for use with Dexmate robot systems.
Copyright © 2024 Dexmate. All rights reserved.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file dexsensor-0.1.10-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: dexsensor-0.1.10-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 1.6 MB
- Tags: CPython 3.13, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b18206846ecf3d00cfe07fab04c4a53825127e6edb8cb0b05a99a907cabeef9e
|
|
| MD5 |
4d72d8e44ada4cbf7c3b8579744d8bfd
|
|
| BLAKE2b-256 |
ad06fa5800aac3ea0657f1e4b01ea10a72f09dd9afab61439b5850ae9e091add
|
File details
Details for the file dexsensor-0.1.10-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.
File metadata
- Download URL: dexsensor-0.1.10-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- Upload date:
- Size: 1.4 MB
- Tags: CPython 3.13, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2d251742e8fed4216fe8218c8d40a8396ff676fb23c1312d13dd28a19d7128f3
|
|
| MD5 |
2a23c784398b80042a545f4f60b363b3
|
|
| BLAKE2b-256 |
98d3f2dfb059d74686c82518c867ea91b1fae95f6a28f4a01e48dcf4a8b46983
|
File details
Details for the file dexsensor-0.1.10-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: dexsensor-0.1.10-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 1.6 MB
- Tags: CPython 3.12, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5c9842b9f45d130927d71bc83dcfa70037d7a6dd38e03938546d7126270f991b
|
|
| MD5 |
72725e66701d38b6d3b18ce4c9a2b092
|
|
| BLAKE2b-256 |
2e6db6b5481d4245c9f42519aade506b465cf1a09bfc57469acae48247c810cf
|
File details
Details for the file dexsensor-0.1.10-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.
File metadata
- Download URL: dexsensor-0.1.10-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- Upload date:
- Size: 1.4 MB
- Tags: CPython 3.12, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
eda8c0eb6848ee251ce085e01ec7d3eabd8580ea0bac8859ce8ecb7df6b5b1b2
|
|
| MD5 |
4969435f94c00ea904928d95ead34198
|
|
| BLAKE2b-256 |
857ccdd7dfd5d05219e51f552c8d6393d9da9288c9b8b73835d79ded86446de9
|
File details
Details for the file dexsensor-0.1.10-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: dexsensor-0.1.10-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 1.4 MB
- Tags: CPython 3.11, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
154e06277ce3d9939924bdd2aa782b74e7167a05e4e330c6eed55754db8708f9
|
|
| MD5 |
6e4ba47009c0d8d43c8bfabdf4f6915d
|
|
| BLAKE2b-256 |
d7de5b13eae8eb054beba1c7b81b146d26a382e39adde857434e65d426490986
|
File details
Details for the file dexsensor-0.1.10-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.
File metadata
- Download URL: dexsensor-0.1.10-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- Upload date:
- Size: 1.3 MB
- Tags: CPython 3.11, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c39cc45f928be4ba5aeeedde46687dc065ae5585cfe15a9f64a18e32fbc7abd3
|
|
| MD5 |
d1c90cac99556692777c9d3671792246
|
|
| BLAKE2b-256 |
96d481f3cc1b973c538ca8a3ac1496b724cd533c11df546814ead68f8d860d1f
|
File details
Details for the file dexsensor-0.1.10-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: dexsensor-0.1.10-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 1.4 MB
- Tags: CPython 3.10, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9d06da791a6b90214d9775bd0f7286933051bd205c64da25c2b74ac67c7a4f2c
|
|
| MD5 |
fde6233b8344264b979f7c11629d2f9a
|
|
| BLAKE2b-256 |
96da41d240d621dd301c7b3b580e2046f4d73c106369f66314dc5411a7101763
|
File details
Details for the file dexsensor-0.1.10-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.
File metadata
- Download URL: dexsensor-0.1.10-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- Upload date:
- Size: 1.3 MB
- Tags: CPython 3.10, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0fe8e5e6b355b76ea1e74765ba9a7e2a157e40e85add6b19a2a19374310edcb8
|
|
| MD5 |
f11152b6c645eb422c43af3ab2704757
|
|
| BLAKE2b-256 |
305b11ce92f7af8f381c4ebe8d4f8ca2c9a348cd5ee5c319b669c450ef13b602
|