3.4.0 (2025-08-28)
- add offline tutorial for osl (e397081)
- move offline mode methods to a common module to make it generalizeable across actuators and sensors (f2d2437)
- offline mode, fixes #266 (141039d)
- add i2t fault counts and thresholds to overcome pseudo ex bit triggers (f92be1f)
- limit number of attempts in ADC's update method to 1000 (042afe5)
- move FOS to I2R term instead of I; add generalized _filter_sensor method (8ae963f)
- move pi3hat warning to MoteusInterface (dae3db6)
- mypy errors on base (87b3634)
- refactor units' classes and methods in walking_compiled_controller example script (8ff3a5f)
- remove statistical outlier detection, use min-max bounds only; add consecutive fault count tracking for current and case temp; throw an exception if data packets are corrupted for more than half a second (6abf422)
- remove WMA filter (8ded24a)
- reset fault count to zero for every successful data read; move status-ex fault checking to a separate method (8c5a6fa)
- update thermal model unit tests (e87b86c)
- update unit tests for thermal model and add a few more test (7a98d07)
- remove deprecated mkdocs option; address docs-test errors (b928bf4)
3.3.0 (2025-07-24)
- [Moteus Interface] Pi3Hat Update and Stop Feature to be Improved #258 (c3f32a9)
- ability to untrack multiple vars as a list. (5294194)
- add context manager option to profiler. Updates required docs and tests (a193f21)
- add doc for basic motion example (0c4da4c)
- add docs and tutorial on softstart (3a8057c)
- add docs for compiled controller (576701c)
- add docs for compiled FSM controllers (1d47f63)
- add docs for fsm example walking controller python implementation (1f48651)
- add examples, tutorials, getting started docs (27c53ba)
- add exception for broken load cell wire detected (21fbd7d)
- Add generators module (05e29d4)
- add iterators and with context (0fd091c)
- add methods to scale state machine (0e9fcaf)
- add more logger docs (a99c33b)
- add new banner (8803f4d)
- add repography plots to README (7f602ae)
- add sensor tutorial files (186a1e7)
- add signal generator framework (44a1035)
- add softstart tutorial (9c40cfd)
- add tests and tutorials for generators module; modify data replay generator to support interpolation; allow kwargs within update calls; modify behavior of expression evaluator class to accept eval time variables (3eb287f)
- add thread safety to logger (551a84e)
- add time tutorials (51b2c57)
- added ability to pass multiple variables to the logger track_variable method (867d4f8)
- added docs for profiler (34c7015)
- added example docstrings to profiler.py (33a85ec)
- added heirarchical structure for documentation (49792a6)
- added method for tracking attributes of object. (21e41de)
- added more logger unit tests (838c96c)
- added unit tests for logger methods. (5408818)
- docs for state machine (6fc6323)
- include encoder map calls to actuators (9646620)
- initial add of dephy loadcell amp via actpack (1cd56a5)
- initial commit of fsm basic tutorial (0bf0697)
- initial commit of profiling code. (b67e393)
- minor overhaul of srtl. Now includes default non original phase (841b314)
- more examples for actuators module (53340e2)
- move smbus from communication extra to native (6e0505b)
- new fsm controller and a torque trajectory controller example (caeb3ec)
- test fsm controller with hardware (446685b)
- transition to uv for development (1860e77)
- updated docstrings in softrealtimeloop (a7ef25f)
- updates to profiler unit tests. (927715d)
- upgrade fsm to support general use cases (54b65b8)
- 332 update contribution steps in readme. (7ff3d68)
- 336 no concise way to log lots of variables (73f65a5)
- add authorship to logger (f2be55c)
- add docs on softrealtimeloop for two operating modes (88d8e4b)
- add gear ratio as a global var and add method to assign stream terminator (6c38e42)
- add knee trajectories to example script (82d3870)
- add methods to set update parameters separately (43bf78a)
- add more info to add_transition and update methods' docstrings about transition precedence (1b76710)
- add tag and init to sensor base, add create_joint_mappings method to osl robot class (e4cd0da)
- added profiler to init. (1cc76a2)
- bug in profiler t0 (4d39347)
- change type union to make tox happy (52504e8)
- clean up torque trajectory example (b36168a)
- docs path fix and removed old fsm tests (dc36bd1)
- docs update (ba80c8e)
- docs update and add del method to logger (2b3e16d)
- docstring (e152658)
- file_name was set to empty string in set_file_name method (ecdbd77)
- fix #347 and update fsm example to include actuator tags (39a2dee)
- fix #347 and update fsm example to include actuator tags (11d3f3c)
- fixes #354 (74d0b2f)
- handle scenario where actuator does not have a make_encoder_map func (1d2fc08)
- inherit from encoder base (3a07c5f)
- line numbers in fsm example quotes (adc9ea3)
- line numbers in fsm example quotes (7f131cd)
- lint and format updates. (3687884)
- load encoder map as polynomial object instead of raw coefficients (8976967)
- load encoder map as polynomial object instead of raw coefficients (34bb3c1)
- make actuator deps optional in init (ddb0542)
- Microstrain IMU is only compatible with specific streaming frequencies #384 (c8575f3)
- Microstrain IMU is only compatible with specific streaming frequencies #384 (01b2f44)
- minor changes to imu source. (093c05b)
- minor doc update (419c985)
- modify tutorial scripts to follow a similar pattern across various control modes (42da482)
- move safety guidelines to getting started (d9be93e)
- no more zero division error in time/srtl (abda2b9)
- patches for more unit tests (b605a28)
- prettier changed an indentation in readme (e6fc759)
- prettier doesn't modify docs' md file (8384d04)
- remove all references to knee, ankle, and impedance parameters (5ff0aa1)
- remove data and use args, kwargs--wild west approach (95c0325)
- remove duplicate LogLevel initialization and minor mypy errors (4d41ba9)
- remove excessive typecasting from loadcell (4ba1200)
- remove exit state; add warning before overwriting initial state; remove add_state and add_event methods (c1fe887)
- remove joint attributes from actuators (BREAKING CHANGE), remove redundant logic from homing routine (20bdb9c)
- remove old tests (d3ac43d)
- remove redundant methods and complexity within signal generator ABC (ae49c2d)
- remove trailing whitespaces (4153f26)
- removed unit test for deprecated log method (ac127a1)
- removed unnecessary type directive. Fixed in other pull requests that check for the os on these lines (5b74fc6)
- rename encoder map function for clarity (71e4e8b)
- rename set_zero to set_zero_position and use logger instead of print (1bbc70e)
- renamed method in logger to track_function. More accurately represents what is happening. (5a9c03c)
- replace self init with super, hardware test updates, and base class init fixes (99fb3c3)
- repr edits to actuator and encoder (c6ae4ee)
- repr edits to actuator and encoder (09b815e)
- required control modes for methods are not set via an internal mapping instead of @requires (91d1e6b)
- Resolve mypy type errors (5cb1f39)
- resolve ruff and mypy errors (dd9c9d4)
- resolved issues with ne operator and _custom_data attribute (fb971f8)
- revert controllers to control (7b65813)
- revert directory rename (c0216a4)
- ruff (8500c23)
- ruff update. (c05f544)
- ruff whitespace (c8025af)
- switch to command_motor_impedance for new Dephy API instead of command_motor_position (a72dc9b)
- type annotations in loadcell (3b53a25)
- types in doc for compiled control (50688ca)
- unit tests are now compatible with new logger setup (a0d80d7)
- unit tests for sensor classes (026bbb0)
- update contribution steps in readme. (71501fe)
- update default port for imu example (e44bd29)
- update example line numbers (cd8ed40)
- update line numbers in docs quote (22226a3)
- update method signature now matches the entire library; fix #307 (8eed688)
- update softrealtime loop doc (bf2f433)
- update to demo loadcell func for i2c (c8ff5f9)
- update to docstrings in logger (3ee930f)
- updated mkdocs (3301f19)
- use if conditions instead of asserts (c53e6a8)
- use soft realtime clock instead of while loops (38d216b)
- wait for user input before starting to home the joint (233a6ab)
- whitespace (d1d006e)
- add anujtaosf as a contributor for doc, and example (dd60683)
- add anushkarathi as a contributor for bug (8dbb769)
- add copy icon to code snippets, fix build and coverage badges (89bec4e)
- add esharnow as a contributor for test, bug, and doc (540b0b2)
- add gpranav162 as a contributor for code (189df79)
- add gpranav162 as a contributor for doc (511a88d)
- add JapmanGill as a contributor for test, bug, and code (cbe0248)
- add jderosia as a contributor for doc, test, and 2 more (7c11478)
- add JerryGu-leiting as a contributor for doc (6d79186)
- add jkotar3 as a contributor for test, bug, and code (c392f15)
- add Katharine-Walters as a contributor for bug (64ab7ff)
- add logger tutorial (c05b62a)
- add matteo-crotti as a contributor for bug (6b63bec)
- add nundinir as a contributor for bug (45d609f)
- add permission denied troubleshooting note (cf55b4c)
- add Robin0265 as a contributor for test, bug, and 2 more (22277e3)
- add senthurayyappan as a contributor for infra, security, and 2 more (62eab04)
- add shreyhas as a contributor for doc, test, and example (10a8c38)
- add tkevinbest as a contributor for bug, test, and 2 more (f499b3e)
- add unshrawal as a contributor for bug, and code (aa90e31)
- add VarunSatyadevShetty as a contributor for doc, and example (259f536)
- add zachbons as a contributor for bug (dce517b)
- added docstrings with examples (381b270)
- create .all-contributorsrc [skip ci] (31d341b)
- finalize tutorials for time module (249abcd)
- fix encoder tutorial (0eb49b9)
- fix imu tutorial (08b55d4)
- fix indentation (383fc35)
- fix installation direction (c3e5894)
- fix loadcell tutorial (5eab5de)
- fix mkdocs errors (1b17151)
- fix ruff errors (ba36900)
- fixed pre-commit errors (7ff1fc9)
- fixed type: ignore error (9d0089c)
- incomplete sensor tutorials (e9ac0bf)
- minor fix to encoder tutorial (5d56968)
- minor modifications to actuator base guide, add class diagram (e490b88)
- modified docstrings to function with mkdocs (824d4ff)
- remove examples, fix links in time tutorials, and add contributing guidelines (c0a4a69)
- remove old contributing section (72cefa9)
- removed old doc formatting (0a88760)
- update .all-contributorsrc [skip ci] (682da72)
- update .all-contributorsrc [skip ci] (6c6c238)
- update .all-contributorsrc [skip ci] (41cf5da)
- update .all-contributorsrc [skip ci] (46f1de3)
- update .all-contributorsrc [skip ci] (124ec2c)
- update .all-contributorsrc [skip ci] (5962fad)
- update .all-contributorsrc [skip ci] (48edfba)
- update .all-contributorsrc [skip ci] (1e32e77)
- update .all-contributorsrc [skip ci] (97e5151)
- update .all-contributorsrc [skip ci] (3fac0e4)
- update .all-contributorsrc [skip ci] (a29540f)
- update .all-contributorsrc [skip ci] (b917841)
- update .all-contributorsrc [skip ci] (65fbf26)
- update .all-contributorsrc [skip ci] (d128ba9)
- update .all-contributorsrc [skip ci] (e502fa5)
- update .all-contributorsrc [skip ci] (35234aa)
- update .all-contributorsrc [skip ci] (be90146)
- update .all-contributorsrc [skip ci] (774cee2)
- update README.md [skip ci] (7e928ee)
- update README.md [skip ci] (09e7060)
- update README.md [skip ci] (61e1336)
- update README.md [skip ci] (4558a33)
- update README.md [skip ci] (a5dbc16)
- update README.md [skip ci] (4c754d6)
- update README.md [skip ci] (474c9f1)
- update README.md [skip ci] (d752ccb)
- update README.md [skip ci] (82d9c43)
- update README.md [skip ci] (8fef120)
- update README.md [skip ci] (8d7ec65)
- update README.md [skip ci] (ce2043e)
- update README.md [skip ci] (419ebef)
- update README.md [skip ci] (cffbd57)
- update README.md [skip ci] (b76d3fa)
- update README.md [skip ci] (63d3d5a)
- update README.md [skip ci] (0068b02)
- update README.md [skip ci] (d666cf1)
- update README.md [skip ci] (cd41541)
- updated examples and navigation structure (52559ac)