Steven Palma
7b1b37b696
Merge branch 'main' into chore/merge_main_to_pipeline
2025-09-15 15:17:24 +02:00
Michel Aractingi
f55c6e89f0
Dataset v3 ( #1412 )
...
Co-authored-by: Simon Alibert <75076266+aliberts@users.noreply.github.com >
Co-authored-by: Remi Cadene <re.cadene@gmail.com >
Co-authored-by: Tavish <tavish9.chen@gmail.com >
Co-authored-by: fracapuano <francesco.capuano@huggingface.co >
Co-authored-by: CarolinePascal <caroline8.pascal@gmail.com >
2025-09-15 09:53:30 +02:00
AdilZouitine
0479eb8f69
docs: Add new section for debugging processor pipelines
...
- Introduced a new documentation entry for debugging processor pipelines, enhancing the existing guide on processors.
- This addition aims to provide users with insights and best practices for troubleshooting and optimizing their processor workflows.
2025-09-12 18:09:23 +02:00
Adil Zouitine
a877c596ba
chore(docs): Processor doc ( #1685 )
...
* chore(docs): initialize doc
* Added script for the second part of the processor doc
* precommit style nit
* improved part 2 of processor guide
* Add comprehensive documentation for processors in robotics
- Introduced a detailed guide on processors, covering their role in transforming raw robot data into model-ready inputs and vice versa.
- Explained core concepts such as EnvTransition, ProcessorStep, and RobotProcessor, along with their functionalities.
- Included examples of common processor steps like normalization, device management, batch processing, and text tokenization.
- Provided insights on building complete pipelines, integrating processors into training loops, and saving/loading configurations.
- Emphasized best practices and advanced features for effective usage of processors in robotics applications.
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* feat(docs): Enhance introduction to processors with additional converter functions
- Updated the introduction to processors documentation to include default batch-to-transition and transition-to-batch converters.
- Added detailed descriptions and examples for new specialized converter functions: `to_transition_teleop_action`, `to_transition_robot_observation`, `to_output_robot_action`, and `to_dataset_frame`.
- Improved clarity on how these converters facilitate integration with existing robotics applications.
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* Improved doc implement_your_own_pipeline
- Use normalization processor as default example
- Add section on transform features
- Add section on overrides.
* Add phone docs and use pipeline for robots/teleop docs
* Fix typo in documentation for adapters in robots/teleop section
* Enhance documentation for processors with detailed explanations and examples
- Updated the introduction to processors, clarifying the role of `EnvTransition` and `ProcessorStep`.
- Introduced `DataProcessorPipeline` as a generic orchestrator for chaining processor steps.
- Added comprehensive descriptions of new converter functions and their applications.
- Improved clarity on type safety and the differences between `RobotProcessorPipeline` and `PolicyProcessorPipeline`.
- Included examples for various processing scenarios, emphasizing best practices for data handling in robotics.
* Enhance documentation for processor migration and debugging
- Added detailed sections on the migration of models to the new `PolicyProcessorPipeline` system, including breaking changes and migration scripts.
- Introduced a comprehensive guide for debugging processor pipelines, covering common issues, step-by-step inspection, and runtime monitoring techniques.
- Updated examples to reflect new usage patterns and best practices for processor implementation and error handling.
- Clarified the role of various processor steps and their configurations in the context of robotics applications.
---------
Co-authored-by: Michel Aractingi <michel.aractingi@huggingface.co >
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Pepijn <pepijn@huggingface.co >
2025-09-12 18:00:37 +02:00
Gaëlle Lannuzel
6a3d57031a
2 add reachy 2 to updated lerobot ( #1767 )
...
* Start adding Reachy 2 (no camera)
* Fix joint shape
* Remove print
* Modify observation_features
* Fix observation state
* Try adding a fake Reachy teleoperator
* Saving test scripts
* Add reachy2camera to cameras
* Add teleop_left camera to observation
* Create test_reachy2_camera.py
* Update utils.py
* Add all rgb cameras
* Future depth work
* Try adding mobile_base velocity
* Update tests
* Update data_acquisition_server.py
* Update with use_external_commands
* Replay
* Usable with or without mobile base
* No need for new isntance
* Use same ip for cameras
* Remove useless imports
* Add resume
* Divide joints in multiple dicts
* Divide joinits into several dicts in teleoperator
* Fix forgotten method call
* Create test_robot_client.py
* Open gripper on start
* Add arguments for cameras
* Modify get_frame() requested size
* Call generate_joints_dict on _init_
* black + isort
* Add reachy2 in imports
* Add reachy2 dependencies
* Add documentation
* Update reachy2.mdx
* Update reachy2.mdx
* Clean files and add types
* Fix type in send_action
* Remove print
* Delete test files
* Clean code
* Update cameras
* Disconnect from camera
* Run pre-commit hooks
* Update pyproject.toml
* Create test_reachy2.py
* Fix generate_joints
* Update test_reachy2.py
* Update send_action test
* Update reachy2_cameras depth + CameraManager
* Update reachy2_camera tests
* Remove useless import and args
* Rename reachy2_teleoperator
* Create test_reachy2_teleoperator.py
* Fix remainging fake_teleoperator
* Remove useless elements
* Mock cameras in test_reachy2
* Delete commented lines
* Add use_present_position to teleoperator
* Add cameras tests
* Add check no part + test
* Use disable_torque_on_disconnect
* Use odometry for vel with present_position
* Update documentation
* Fix vel value type
* Use ensure_safe_goal_position
* Import joints dict from classes
* Update reachy2.mdx
* Update reachy2.mdx
* Update minimal version
* Update minimal version
* fix(tests) fixes for reachy2 tests; removing reachy2 references from the script
* Add reachy2_sdk fake as plugins
---------
Co-authored-by: Michel Aractingi <michel.aractingi@huggingface.co >
2025-09-05 11:03:14 +02:00
Pepijn
61b0eeae4b
Add feetech firmware update docs ( #1793 )
...
* Add feetech firmware update docs
* add bonus
* formatting
* adapt text
* feedback pr
2025-08-28 11:18:54 +02:00
Francesco Capuano
30c161006d
Add Async Inference ( #1196 )
...
Co-authored-by: Steven Palma <imstevenpmwork@ieee.org >
Co-authored-by: Michel Aractingi <michel.aractingi@huggingface.co >
2025-07-10 10:39:11 +02:00
Simon Alibert
039de254ea
Add Hope Jr ( #935 )
...
* Fix imports
* Add feetech write tests
* Nit
* Add autoclosing fixture
* Assert ping stub called
* Add CalibrationMode
* Add Motor in dxl robots
* Simplify split_int_bytes
* Rename read/write -> sync_read/write, refactor, add write
* Rename tests
* Refactor dxl tests by functionality
* Add dxl write test
* Refactor _is_comm_success
* Refactor feetech tests by functionality
* Add feetech write test
* Simplify _is_comm_success & _is_error
* Move mock_serial patch to dedicated file
* Remove test skips & fix docstrings
* Nit
* Add dxl operating modes
* Add is_connected in robots and teleops
* Update Koch
* Add feetech operating modes
* Caps dxl OperatingMode
* Update ensure_safe_goal_position
* Update so100
* Privatize methods & renames
* Fix dict
* Add _configure_motors & move ping methods
* Return models (str) with pings
* Implement feetech broadcast ping
* Add raw_values option
* Rename idx -> id_
* Improve errors
* Fix feetech ping tests
* Ensure motors exist at connection time
* Update tests
* Add test_motors_bus
* Move DriveMode & TorqueMode
* Update Koch imports
* Update so100 imports
* Fix visualize_motors_bus
* Fix imports
* Add calibration
* Rename idx -> id_
* Rename idx -> id_
* (WIP) _async_read
* Add new calibration method for robot refactor (#896 )
Co-authored-by: Simon Alibert <simon.alibert@huggingface.co >
* Remove deprecated scripts
* Rename CalibrationMode -> MotorNormMode
* Fix calibration functions
* Remove todo
* Add scan_port utility
* Add calibration utilities
* Move encoding functions to encoding_utils
* Add test_encoding_utils
* Rename test
* Add more calibration utilities
* Format baudrate tables
* Implement SO-100 leader calibration
* Implement SO-100 follower calibration
* Implement Koch calibration
* Add test_scan_port (TODO)
* Fix calibration
* Hack feetech firmware bug
* Update tests
* Update Koch & SO-100
* Improve format
* Rename SO-100 classes
* Rename Koch classes
* Add calibration tests
* Remove old calibration tests
* Revert feetech hack and monkeypatch instead
* Simplify motors mocks
* Add is_calibrated test
* Update viperx & widowx
* Rename viperx & widowx
* Remove old calibration
* feat(teleop): thread-safe keyboard teleop implementation (#869 )
Co-authored-by: Simon Alibert <75076266+aliberts@users.noreply.github.com >
* Add support for feetech scs series + various fixes
* Update dynamixel with motors bus & tables changes
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* (WIP) Add Hope Jr
* Rename arm -> hand
* (WIP) Add homonculus arm & glove
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* Add Feetech protocol version
* Implement read
* Use constants from sdks
* (nit) move write
* Fix broadcast ping type hint
* Add protocol 1 broadcast ping
* Refactor & add _serialize_data
* Add feetech sm8512bl
* Make feetech broadcast ping faster in protocol 1
* Cleanup
* Add support for feetech protocol 1 to _split_into_byte_chunks
* Fix unormalize
* Remove test_motors_bus fixtures
* Add more segmented tests (base motor bus & feetech), add feetech protocol 1 support
* Add more segmented tests (dynamixel)
* Refactor tests
* Add handshake, fix feetech _read_firmware_version
* Fix tests
* Motors config & disconnect fixes
* Add torque_disabled context
* Update branch & fix pre-commit errors
* Fix hand & glove readings
* Update feetech tables
* Move read/write_calibration implementations
* Add setup_motor
* Fix calibration msg display
* Fix setup_motor & add it to robots
* Fix _find_single_motor
* Remove deprecated configure_motor
* Remove deprecated dynamixel_calibration
* Remove names
* Remove deprecated import
* refactor/lekiwi robot (#863 )
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Simon Alibert <simon.alibert@huggingface.co >
Co-authored-by: Simon Alibert <75076266+aliberts@users.noreply.github.com >
* fix(teleoperators): use property is_connected (#1075 )
* Remove deprecated manipulator
* Update robot features & naming
* Update teleop features & naming
* Add make_teleoperator_from_config
* Rename find_port
* Fix config parsing
* Remove app script
* Add setup_motors
* Add teleoperate
* Add record
* Add replay
* Fix test_datasets
* Add mock robot & teleop
* Add new test_control_robot
* Add test_record_and_resume
* Remove deprecated scripts & tests
* Add calibrate
* Add docstrings
* Fix tests (no-extras install)
* Add SO101
* Remove pynput from optional deps
* Rename example 7
* Remove unecessary id
* Add MotorsBus docstrings
* Rename arm -> bus
* Remove Moss arm
* Fix setup_motors & calibrate configs
* Fix test_calibrate
* Add copyrights
* Update hand & arm
* Update homonculus hand & arm
* Fix dxl _find_single_motor
* Update glove
* Add setup_motors for lekiwi
* Fix glove calibration
* Complete docstring
* Add check for same min and max during calibration
* Move MockMotorsBus
* Add so100_follower tests
* (WIP) add calibration gui
* Fix test
* Add setup_motors
* Update calibration gui
* Remove old .cache folder
* Replace deprecated abc.abstractproperty
* Fix feetech protocol 1 configure
* Cleanup gui & add copyrights
* Anatomically precise joint names
* (WIP) Add glove to hand joints translation
* Move make_robot_config
* Add drive_mode & norm_mode in glove calibration
* Fix joints translation
* Fix normalization drive_mode
* nit
* Fix glove to hand conversion
* Adapt feetech calibration
* Remove pygame prompt
* Implement arm calibration (hacks)
* Better MotorsBus error messages
* Update feetech read_calibration
* Fix feetech test_is_calibrated
* Cleanup glove
* (WIP) Update arm
* Add changes from #1117
* refactor(cameras): cameras implementations + tests improvements (#1108 )
Co-authored-by: Simon Alibert <simon.alibert@huggingface.co >
Co-authored-by: Simon Alibert <75076266+aliberts@users.noreply.github.com >
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
* Fix arm joints order
* Add timeout/event logic
* Fix arm & glove
* Fix predict_action from record
* fix(cameras): update docstring + handle sn when starts with 0 + update timeouts to more reasonable value (#1154 )
* fix(scripts): parser instead of draccus in record + add __get_path_fields__() to RecordConfig (#1155 )
* Left/Right sides + other fixes
* Arm fixes and add config
* More hacks
* Add control scripts
* Fix merge errors
* push changes to calibration, teleop and docs
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* Move readme to docs
* update readme
Signed-off-by: Martino Russi <77496684+nepyope@users.noreply.github.com >
* Add files via upload
Signed-off-by: Martino Russi <77496684+nepyope@users.noreply.github.com >
* Update image sources
* Symlink doc
* Compress image
* Move image
* Update docs link
* fix docs
* simplify teleop scripts
* fix variable names
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* Address code review
* add EMA to glove
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* integrate teleoperation for hand
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* update docs
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* import hopejr/homunculus in teleoperate
* update docs for teleoperate, record, replay, train and inference
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* chore(hopejr): address comments
* chore(hopejr): address coments 2
* chore(docs): update teleoperation instructions for the hand/glove
* fix(hopejr): calibration int + update docs
---------
Signed-off-by: Martino Russi <77496684+nepyope@users.noreply.github.com >
Signed-off-by: Simon Alibert <75076266+aliberts@users.noreply.github.com >
Co-authored-by: Pepijn <138571049+pkooij@users.noreply.github.com >
Co-authored-by: Steven Palma <imstevenpmwork@ieee.org >
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: nepyope <nopyeps@gmail.com >
Co-authored-by: Martino Russi <77496684+nepyope@users.noreply.github.com >
Co-authored-by: Steven Palma <steven.palma@huggingface.co >
2025-07-08 15:47:11 +02:00
Pepijn
438334d58e
Add sim tutorial, fix lekiwi motor config, add notebook links ( #1275 )
...
Co-authored-by: AdilZouitine <adilzouitinegm@gmail.com >
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Michel Aractingi <michel.aractingi@huggingface.co >
Co-authored-by: s1lent4gnt <kmeftah.khalil@gmail.com >
Co-authored-by: Michel Aractingi <michel.aractingi@gmail.com >
Co-authored-by: Eugene Mironov <helper2424@gmail.com >
Co-authored-by: imstevenpmwork <steven.palma@huggingface.co >
Co-authored-by: Simon Alibert <75076266+aliberts@users.noreply.github.com >
Co-authored-by: Steven Palma <imstevenpmwork@ieee.org >
2025-06-13 18:48:39 +02:00
Simon Alibert
96fa48b5ec
Robot integration tutorial ( #1285 )
2025-06-13 18:23:07 +02:00
Dana Aubakirova
58afa2fbb0
fix(docs): SmolVLA fine-tuning getting started ( #1201 )
...
Co-authored-by: Pepijn <138571049+pkooij@users.noreply.github.com >
Co-authored-by: danaaubakirova <d.aubakirova@alumni.edu.kz >
Co-authored-by: Simon Alibert <75076266+aliberts@users.noreply.github.com >
Co-authored-by: Francesco Capuano <francesco_capuano@aol.com >
Co-authored-by: Steven Palma <steven.palma@huggingface.co >
2025-06-13 14:17:59 +02:00
Adil Zouitine
d8079587a2
Port HIL SERL ( #644 )
...
Co-authored-by: Michel Aractingi <michel.aractingi@huggingface.co >
Co-authored-by: Eugene Mironov <helper2424@gmail.com >
Co-authored-by: s1lent4gnt <kmeftah.khalil@gmail.com >
Co-authored-by: Ke Wang <superwk1017@gmail.com >
Co-authored-by: Yoel Chornton <yoel.chornton@gmail.com >
Co-authored-by: imstevenpmwork <steven.palma@huggingface.co >
Co-authored-by: Simon Alibert <simon.alibert@huggingface.co >
2025-06-13 13:15:47 +02:00
Simon Alibert
e23b41e79a
Hardware API redesign ( #777 )
...
Co-authored-by: Pepijn <138571049+pkooij@users.noreply.github.com >
Co-authored-by: Steven Palma <imstevenpmwork@ieee.org >
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Steven Palma <steven.palma@huggingface.co >
Co-authored-by: Adil Zouitine <adilzouitinegm@gmail.com >
Co-authored-by: Pepijn <pepijn@huggingface.co >
2025-06-05 17:48:43 +02:00
Pepijn
a1daeaf0c4
feat(docs): Add new docs build process ( #1046 )
...
Co-authored-by: Mishig Davaadorj <dmishig@gmail.com >
Co-authored-by: Steven Palma <steven.palma@huggingface.co >
2025-05-02 12:47:23 +02:00