Releases: OpenMind/OM1
v1.0.1-beta.2
v1.0.1-beta.2
What's new in this release
- A huge performance improvement has been added.
- Standardized the codebase to only support multimode configuration, removing the separate single-mode structure and related folders. Single-mode setups are still supported and are now automatically converted to multimode via the new runtime infrastructure.
- Added support for monitoring and reporting the charging status of the Unitree Go2 robot.
- Standardized generic sensor input types with robot-specific variants. New separate background processes added for Unitree G1, Go2 and Turtlebot4.
- Docker now accepts
OM_COMMANDto switch config. - Refactored
ApproachingPersonbackground plugin to use Zenoh for person-approaching events. - Updated the ElevenLabs TTS integration to reduce latency by switching from JSON/base64 audio responses to a live audio streaming output, and changes the default ElevenLabs output format to PCM at 16kHz.
- OM1 now supports Isaac Sim.
- Improved test coverage across plugins.
What's Changed
- chore(deps): bump protobuf from 5.29.5 to 5.29.6 by @dependabot[bot] in #2134
- Split odom and rplidar for different robots and add support for G1 by @openminddev in #2136
- Gitbook migration by @Prachi1615 in #2146
- Update slogan by @openminddev in #2147
- fix: correct log messages in KokoroTTSProvider from ElevenLabs to Kokoro by @giwaov in #2151
- feature/add-unitree-go2-odom-provider-tests by @Wanbogang in #2161
- fix(logging): preserve exception tracebacks in critical runtime paths by @MuhamadRifansyah in #2149
- fix: resolve code quality and consistency issues in Kokoro TTS connector by @Wanbogang in #2142
- fix: properly filter blanked RPLidar angles using any() in _path_processor by @Ridwannurudeen in #2141
- test(actions): add unit tests for gps action by @LupaFlex in #2133
- test(actions): add unit tests for face action by @LupaFlex in #2132
- fix: typo and copy-paste fixes in src/ and config/ by @0xbyt4 in #2127
- Implement tests for singleton decorator by @kivancbeser in #2107
- Fix duplicate 'the' typo in UBTECH Yanshee documentation by @erenyegit in #2105
- docs: fix typos, grammar, and deprecated packages across documentation by @0xbyt4 in #2099
- refactor: remove unnecessary pass statement in Sensor.init by @eren-karakus0 in #2086
- fix: remove debug code that randomly inflates ETH balance in production by @letmehateu in #2071
- Add ApproachingPerson background with Zenoh integration by @openminddev in #2070
- test: add error handling and edge case tests for DualLLM by @goblin0xcrypto in #2019
- Fix and update unit tests for OpenAI LLM plugin by @Wanbogang in #2044
- Add unit tests for zenoh session module by @Wanbogang in #2038
- fix: ensure timestamp default values match str type annotations in TeleOps dataclasses by @wtoqxy0000 in #2035
- test: add unit tests for llm output_model module by @Wanbogang in #2005
- fix(docs): incorrect type hint in battery_turtlebot4 by @windlgrass in #2004
- fix(docs): incorrect class name in AMCLLocalizationInput docstring by @windlgrass in #2003
- fix(docs): Optional[Callable] type hints in callback methods by @windlgrass in #2002
- fix: make SerialReader serial port configurable via config by @MuhamadRifansyah in #1986
- docs: fix CLI command inconsistency in Installation Guide by @0xEdmundo in #1984
- test: add unit tests for runtime logging module by @Wanbogang in #1977
- Add serial connection cleanup to RtkProvider.stop by @aydnOktay in #1955
- docs(unitree): clarify Linux-only support for realsense provider by @MuhamadRifansyah in #1936
- fix: add null guard for cortex_loop_task in CancelledError handler by @0xbyt4 in #1913
- add ChargingStatus and ChargingStatusUnitreeGo2 components for monit… by @jerinpeter in #1807
- fix: replace blocking requests with async aiohttp in Tesla connector by @0xbyt4 in #1806
- fix: restore .env.example filename to original convention by @0xbyt4 in #1797
- docs: fix docstring issues across codebase by @0xbyt4 in #1796
- docs: fix article usage in llm plugin docstrings by @Katewxp in #1791
- docs(AvatarProvider): add missing parameter description in send_avatar_command by @s3328537 in #1787
- Remove duplicate entries in .dockerignore by @AyazKaan in #1785
- fix: replace blocking requests.post with aiohttp in fabric_closest_peer by @0xbyt4 in #1775
- fix: add missing separator in resolution format string by @wtoqxy0000 in #1722
- fix: correct latency calculation using fuser_start_time by @0xbyt4 in #1800
- fix: add VideoCapture release to prevent resource leak in VLM_Local_YOLO by @0xbyt4 in #1521
- fix: rename unused loop variables with underscore prefix (B007) by @0xbyt4 in #1450
- fix: use unique temp file name to prevent race condition by @0xbyt4 in #1801
- Fix test: expect 'om/' prefix for charging topic by @openminddev in #2167
- Docs update by @Prachi1615 in #2180
- update docker file to use OM1_COMMAND from env file by @YuchengZhou821 in #2183
- fix: initialize dev_jwt and dimo attributes to prevent AttributeError by @0xbyt4 in #2172
- fix: add missing environment variables to env.example by @DasRasyo in #2153
- Isaac sim docs by @Prachi1615 in #2205
- chore(deps): bump pillow from 11.1.0 to 12.1.1 by @dependabot[bot] in #2223
- Abandon single mode by @YuchengZhou821 in #2204
- test: add unit tests for 14 missing action connectors by @0xbyt4 in #2206
- Add error handling to ZenohListenerProvider.stop by @aydnOktay in #2006
- test: add unit tests for 14 background plugins by @0xbyt4 in #2232
- Change elevenlabs to use audio output live stream by @shicaih in #2225
- Restructure docs by @Prachi1615 in #2224
- Mode docs update by @Prachi1615 in #2237
- refactor: update configuration and improve ASR message handling across plugins by @openminddev in #2236
- test: add unit tests for 7 remaining action connectors by @0xbyt4 in #2227
New Contributors
- @giwaov made their first contribution in #2151
- @Ridwannurudeen made their first contribution in #2141
- @LupaFlex made their first contribution in #2133
- @kivancbeser made their first contribution in #2107
- @erenyegit made their first contribution in #2105
- @eren-karakus0 made their first contribution in #2086
- @letmehateu made their first contribution in #2071
- @0xEdmundo made their first contribution in #1984
- @Katewxp made their first contribution in #1791
- @s3328537 made their first contribution in #1787
- @AyazKaan made their first contribution in #1785
- @DasRasyo made their first contribution in #2153
- @shicaih made their first contribution in #2225
Full Changelog: v1.0.1-beta.1...v1.0.1-beta.2
v1.0.1-beta.1
v1.0.1-beta.1
What's new in this release
- Added support for LimX TRON
- Ollama support added for local inference
- Latest config version is now upgraded to v1.0.2
- Documentation updates
- We've updated the full autonomy documentation for G1 and Go2
- Added documentation for Gazebo setup
- Fixed typos and broken links across documentation
- Refreshed docstrings throughout the codebase
- Updated API endpoint documentation
- Updated API pricing documentation and information regarding the new subscription plans
- Introduced support for 'concurrent', 'sequential', and 'dependencies' action execution modes in orchestrator and configuration schemas
- Added greeting conversation mode and state management
- Added local support for Koroko and Riva model
- Added person following mode
- Improved unit test coverage for provider and input plugins
What's Changed
- Refactor backgrounds using pydantic by @YuchengZhou821 in #847
- feat: Add config validation CLI command by @Wanbogang in #831
- Update llm and simulator by @YuchengZhou821 in #851
- Update TTS interrupt by @YuchengZhou821 in #852
- fix: correct typo in simple_paths.py (lattency -> latency) by @KangJKJK in #860
- added ota documentation by @Prachi1615 in #858
- G1 full autonomy by @Prachi1615 in #857
- fix: correct multiple typos in documentation and code by @Wanbogang in #862
- Remove docs upload workflow and rename config schema workflow by @openminddev in #866
- fix: log naming consistency for SimplePathsProvider by @ScapeXYZ in #876
- ci: update workflow dependencies and refine config schema by @MuhamadRifansyah in #891
- Add vulture and typos checks; fix typos and naming by @openminddev in #894
- docs: fix typos and documentation inconsistencies in GalleryIdentitiesProvider by @ScapeXYZ in #896
- docs: improve multi-mode configuration schema documentation by @MuhamadRifansyah in #899
- Release notes by @Prachi1615 in #910
- Add action execution modes and dependencies support by @openminddev in #872
- fix(schema): correct JSON syntax error blocking validation by @MuhamadRifansyah in #958
- Fix docstring indentation in DualLLM class by @openminddev in #986
- set tts interrupt to false by @YuchengZhou821 in #1005
- Standardize docstring by @openminddev in #987
- Update contribution guidelines by @Prachi1615 in #1008
- Format pre-commit command as code block in docs by @openminddev in #1036
- docs: improve D435 background docstrings with complete parameter documentation by @0xKingBack in #1034
- fix(schema): enforce positive hertz frequency in multi-mode config by @MuhamadRifansyah in #1037
- docs: improve orchestrator docstrings with complete parameter documentation by @ORietze in #1029
- Docs: Improved LLM History Manager docstrings for better readability! ✨ by @Yiyufadacai in #1027
- fix(style): standardize docstrings in LLM plugins to match project conventions by @0xyynb in #1016
- fix(schema): correct unitree_ethernet property name typo by @MuhamadRifansyah in #1038
- fix(config): handle invalid json5 configuration files gracefully by @MuhamadRifansyah in #997
- Add Prettier hook and reformat JSON5 config files by @openminddev in #1039
- feat: Add Ollama LLM support for local inference by @0xbyt4 in #955
- A simple typo fix by @KangJKJK in #900
- test: Add comprehensive unit tests for NearAI LLM plugin by @Bihruze in #893
- test: Add comprehensive unit tests for QwenLLM plugin by @Bihruze in #892
- fix typos and missing words in LLM model documentation by @batuhankocyigit in #993
- fix(core): fix typo and standardize NMEA naming conventions by @ScapeXYZ in #909
- docs: Add Ollama LLM support documentation by @0xbyt4 in #1042
- ci: replace fragile grep with robust JUnit XML parsing by @MuhamadRifansyah in #1088
- Format integration test workflow triggers by @openminddev in #1091
- fix: fix incorrect cyclonedds volume mount breaking DDS communication by @shashiyy in #1085
- Update integration test by @openminddev in #1094
- Add GitHub Actions workflow for integration tests by @openminddev in #1095
- restructured docs by @Prachi1615 in #1096
- Doc tweaks by @Prachi1615 in #1097
- Rename integration test workflow to nightly by @openminddev in #1103
- fix(runtime): prevent history data loss and support sync clients by @MuhamadRifansyah in #1109
- Update Ethereum RPC URL in governance plugin by @openminddev in #1113
- fix(schema): enforce positive hertz frequency in single-mode config by @Wanbogang in #1105
- add missing stop() methods to Gemini and OpenAI plugins by @Savage890 in #1093
- Fix: Close serial connection in GpsProvider.stop() to prevent resourc… by @Soth912 in #1092
- fix(schema): enforce positive timeout_seconds in multi-mode config by @Wanbogang in #1121
- docs: improve RPLidar background docstrings with complete parameter documentation by @xieps00 in #1081
- docs: improve Odom background docstrings with complete parameter documentation by @wttAIxyy in #1076
- docs(unitree_g1_locations): clarify parameters and init by @wtingting1988 in #1158
- docs: fix JetPack typo in README by @zclsx in #1156
- docs(serial_reader): clarify parameters and init by @wangzhe19991 in #1140
- docs: improve ElevenLabs TTS background docstrings for better readability by @wpengpeng168 in #1136
- Add AgentTeleopsStatus background and tests by @openminddev in #1162
- Add MoveTronSDK connector and interface by @openminddev in #1236
- fix: add timeout to HTTP requests to prevent indefinite hangs by @0xbyt4 in #1232
- fix: prevent single input failure from crashing all inputs by @0xbyt4 in #1229
- chore: clean up import statements by @MonkeyMarcel in #1223
- docs: explain MockInput usage in comments by @yacheng1988 in #1214
- fix: correct docstring typos and parameter name mismatch by @bloxflux in #1211
- docs: clarify unitree_go2_state methodology by @changchun989 in #1207
- docs(unitree_go2_amcl): clarify parameters and init by @beibi9966 in #1203
- docs(unitree_g1_navigation): clarify parameters and init by @xiahu88988 in #1201
- chore(schema): tighten validation for context condition operators by @MuhamadRifansyah in #1196
- fix(ci): correct CycloneDDS cache key hashFiles path by @MuhamadRifansyah in #1191
- Test/function call provider bugs by @Budalebah in #1264
- test: Add unit tests for UbTtsProvider by @Budalebah in #1262
- docs: improve GPS Background Documentation by @shahrukhjutt98 in #1247
- Improve action docstrings and fix critical bug in tweet connector by @Wanbogang in #1244
- improve(cli): make JSON parse error handling more robust by @MuhamadRifansyah in #1286
- improve(security): replace os.popen with subprocess.run by @MuhamadRifansyah in #1284
- refactor(cli): replace regex-based component validation with AST parsing by @MuhamadRifansyah in #1285
- fix(rpdriver): ensure consistent return types by raising exceptions by @MuhamadRifansyah in #1283
- fix: correct Zenoh publisher variable name and add null checks by @0xbyt4 in #1275
- fix: replace silent exception swallowing with proper logging by @0xbyt4 in #1271
- fix: extend transition lock ...
v1.0.0
What's new in this release?
- Development Section
Added a dedicated section to help developers quickly get started with setup, building, and testing. - Gazebo
We now have full simulation support on gazebo with slam, naviation, auto charging for unitree Go2. This leverages users to test OM1 on a simulator without a need to have a physical hardware with them. - Config version management
Updated configuration file to add a new fieldversion. This field ensures that configuration files remain compatible as the runtime evolves. - Unitree G1 Full Autonomy
We now support full autonomy for Unitree G1. It supports Facial detection and anonymisation, 3D SLAM map generation, Navigation. - Hot Reload
Added hot reload support to speed up development by automatically reusing resolved dependencies after the first run. Runtime configuration is persisted via .runtime.json5, enabling seamless restarts and agent switching without full reinitialization. - OTA
Introduced full support for over-the-air updates, enabling users to seamlessly upgrade to the latest runtime versions. Configurations now allow smooth version management and automated deployment of updates. - Modes and Lifecycle Documentation
We have added detailed guidelines in our docs for different modes supported and lifecycle management. - Local LLM support for Thor
Added support for local large language models (LLMs) on Thor with a 3.2-second timeout. When both cloud and local responses are available, the local LLM determines which response to proceed with. - Context aware mode transition
OM1 now supports context-aware mode transitions, allowing autonomous mode switching without human intervention. - LiDAR Localization
Improved localization accuracy using LiDAR sensors. - ML Stack Migration
Moved the machine learning stack to Thor (running on Jetson 7.0). AGX is still supported but with limited capabilities. - Runtime version
Upgraded to the latest runtime version for improved performance and stability. - Documentation Fixes
Corrected typos and improved clarity across the documentation. - Introducesd pydantic config
Refactored the action connector architecture to improve type safety, extensibility, and maintainability by introducing Pydantic-based configurations and stronger generic typing. Added connector-specific config models and enhanced documentation with detailed docstrings for improved clarity and validation.
What's Changed
- chore: remove repetitive word in comment by @vastonus in #595
- chore: fix a large number of spelling issues by @rocksload in #605
- Refactor dockerfile for small improvements by @sirdavos47 in #598
- Update repo name by @Prachi1615 in #622
- Improve Unitree Go2 Battery Handler with Safe Message Parsing by @cryptoahmet06 in #558
- Fix readme by @Prachi1615 in #628
- Hot-reload and configuration management by @openminddev in #642
- Configuration handling improvements by @openminddev in #643
- fix: critical runtime stability and error handling bugs by @ismoilh in #578
- Feat/update to recent face by @WenjinFu in #623
- Fix WebSocket callback registration order in Go2 connector by @cryptoahmet06 in #641
- Face presence fix bug by @WenjinFu in #666
- Remove redundant runtime config update by @openminddev in #655
- Modes documentation by @Prachi1615 in #487
- Hot reload by @Prachi1615 in #672
- Update architecture image in README.md by @Prachi1615 in #650
- Add ASR publisher by @YuchengZhou821 in #657
- Add audio device readiness check to entrypoint by @openminddev in #678
- fix: Critical bug fixes and security improvements by @aydnOktay in #570
- fix placeholder key by @Prachi1615 in #691
- Remove unused go2 locations and fix tts by @openminddev in #689
- fix: update entrypoint script to use python venv by @openminddev in #692
- Lifecycle docs by @Prachi1615 in #693
- updated brainpack images by @Prachi1615 in #695
- Simulation update by @ShaohongZ in #369
- Add pre-commit-hooks and fix lints by @openminddev in #703
- feat: integrate avatar commands for thinking in llm by @YuchengZhou821 in #694
- added new release notes by @Prachi1615 in #705
- Add lidar localization by @openminddev in #711
- Reformat avatar ws server to zenoh by @YuchengZhou821 in #712
- add attributes to Paths by @WenjinFu in #716
- docs: fix documentation inconsistencies and formatting issues by @jjjjjuuuuu99 in #698
- Add configure method to ElevenLabsTTSProvider by @openminddev in #734
- add response message by @YuchengZhou821 in #729
- Add avatar in unitree go2 modes by @openminddev in #743
- Introduces automatic cleanup of Zenoh sessions by @openminddev in #744
- Refactor zenoh session management by @openminddev in #745
- Introduce json5 version by @openminddev in #758
- Fix dockerignore by @openminddev in #759
- Add-g1-support by @jerinpeter in #750
- Add version verification by @openminddev in #763
- Update 9_troubleshooting_guide.mdx by @reopaah in #727
- fix: replace print statement with logging in ROS2PublisherProvider by @Wanbogang in #783
- Support unitree sdk with Gazebo by @openminddev in #795
- Add config provider by @YuchengZhou821 in #742
- fix: remove extra print() in dimo_tesla error handling by @Wanbogang in #789
- Add context manager by @openminddev in #800
- Free disk to build images by @openminddev in #801
- Add script and git actions by @YuchengZhou821 in #803
- update script by @YuchengZhou821 in #804
- Remove redundant print() functions by @ylmin in #806
- update script to refine hook definitions by @YuchengZhou821 in #810
- docs: fix typo in zenoh.md - 'tryinmg' to 'trying' by @Wanbogang in #815
- docs: fix typo in mintlify zenoh documentation by @Wanbogang in #816
- feat: Support configurable crypto assets in Coinbase wallet by @TonyKim525 in #809
- Update pyright to standard by @openminddev in #817
- add dual llm support by @WenjinFu in #802
- Add frontier exploration mode by @openminddev in #821
- Upgrade om1-modules hash by @openminddev in #822
- support dynamic transition rules extracting by @YuchengZhou821 in #823
- Update configurations and fix config tests by @openminddev in #827
- chore: fix some minor issues in the comments by @huyejia in #658
- Add CODE_OF_CONDUCT by @openminddev in #828
- Add venv cache to lint by @openminddev in #829
- chore: fix minor lints and add tests for edge cases by @vizzzix in #620
- Add detailed logging to OpenAI and Qwen LLM plugins by @openminddev in #830
- docs: fix typos in configuration and video processor documentation by @Wanbogang in #820
- docs: Add detailed docstrings to modes and list_configs in cli.py by @Slldaoo in #834
- Add development section by @Prachi1615 in #715
- Bump latest runtime version to v1.0.1 by @openminddev in #838
- docs: update outdated file paths in README by @bani8g in #586
- Refactor tests for improved mocking and type safety by @openminddev in #840
- Introduce pydantic config by @openminddev in #833
New Contributors
- @vastonus made their first contribution in #595
- @rocksload made their first contribution in #605
- @sirdavos47 made their first contribution in #598
- @cryptoahmet06 made their first contribut...
v1.0.0-beta.4
What's new in this release
- Openrouter support for LLama and Anthropic: Added compatibility with OpenRouter API, enabling seamless access to more AI providers, including Meta’s LLaMA and Anthropic Claude models.
This allows flexible model selection for natural language processing, reasoning, and control tasks depending on performance or cost preferences. - Support multiple modes: We now support 5 different modes with Unitree Go2 full autonomy.
- Welcome mode - Initial greeting and user information gathering
- Conversation - Focused conversation and social interaction mode
- Slam - Autonomous navigation and mapping mode
- Navigation - Autonomous navigation mode
- Guard - Patrol and security monitoring mode
- Support face blurring and detection: The OpenMind Privacy System is a real-time, on-device face detection and blurring module designed to protect personal identity during video capture and streaming.
It runs entirely on the Unitree Go2 robot’s edge device, requiring no cloud or network connectivity.
All frame processing happens locally — raw frames never leave the device. Only the processed, blurred output is stored or streamed.
The module operates offline and maintains low latency suitable for real-time applications - Support multiple RTSP inputs: The OpenMind RTSP Ingest Pipeline manages multiple RTSP inputs, supporting three camera feeds and one microphone input for synchronized streaming. The top camera feed is processed through the OpenMind face recognition module for detection, overlay, and FPS monitoring, while the microphone (default_mic_aec) handles audio capture and streaming. All processed video and audio streams are ingested through the OpenMind API RTSP endpoint, enabling multi-source real-time data flow within the system.
- Support echo cancellation and remote video streaming: Use our portal to remotely display your face in our dog backpack and talk to people directly.
- Support navigation and mapping: The Navigation and Mapping enables OM1 to move intelligently within its environment using two core modes: Navigation Mode and Slam Mode.
In Slam Mode, the robot explores its surroundings autonomously, using onboard sensors to build and continuously update internal maps for spatial awareness and future navigation. This mode is typically used during initial setup or when operating in new or changing environments.
In Navigation Mode, the robot travels between predefined points within an existing mapped area, leveraging maps generated in Slam Mode for path planning, obstacle avoidance, and safe movement to target locations. - Refactor AI control messaging: We now use function calls for taking actions.
Here's our new flow - Actions -> Function calls params -> LLM -> Function calls -> Json Structure (CortexOutputModel). - Support Nvidia Thor: We now support Nvidia Thor for Unitree Go2 full autonomy.
- Added release notes to our docs: The official documentation now includes a dedicated Release Notes section, making it easier to track feature updates, improvements, and bug fixes over time. This also improves transparency for developers and users integrating new releases.
- Introducing Lifecycle
Each operational mode in OM1 follows a defined lifecycle, representing the complete process from entry to exit of that mode. A mode lifecycle ensures predictable behavior, safe transitions, and consistent data handling across all system states.
What's Changed
- Create Media_server.mdx by @TangmereCottage in #401
- Add VLM Vila RTSP input and provider integration by @openminddev in #403
- Update submodule to fix RTSP connections by @openminddev in #408
- Update avatar by @openminddev in #410
- Stabilize the integration tests by @openminddev in #412
- Refactor AI control messaging to use AIStatusRequest and AIStatusResponse by @openminddev in #411
- Release notes by @Prachi1615 in #402
- simplified getting started guide by @Prachi1615 in #407
- Add spatial memory by @openminddev in #400
- Add location volume by @openminddev in #413
- Update om1-modules by @openminddev in #415
- Add provider for teleops conversation by @YuchengZhou821 in #422
- Support Near AI by @openminddev in #424
- updated docs for audio config by @Prachi1615 in #427
- Add venv to image by @openminddev in #434
- Replace the json structure output with function calls by @openminddev in #433
- update supported models docs by @Prachi1615 in #437
- feat: add face presence provider/input and test example by @WenjinFu in #436
- Add mode system by @openminddev in #439
- Update full autonomy docs by @Prachi1615 in #432
- Fix audio path by @openminddev in #450
- Openrouter support by @Prachi1615 in #431
- Feat/hello mode by @WenjinFu in #446
- Update default entry and internet check by @openminddev in #452
- Install iputils-ping to allow the om1 to ping the internet by @openminddev in #453
- added navigation integeration by @jerinpeter in #445
- Fix bugs for unitree_go2_modes by @openminddev in #457
- updated the llm prompt and gallery status by @WenjinFu in #464
- added amcl localization input by @jerinpeter in #458
- Add TTS control by @openminddev in #468
- updated navigation with tts feedback by @jerinpeter in #469
- Improve guard mode by @openminddev in #475
- Fix motor_speed setter validation in RPLidar driver by @sohw400 in #478
- update support email by @Prachi1615 in #486
- change to get recent seconds faces to llm by @WenjinFu in #488
- Introduce lifecycle by @openminddev in #477
- Fix: Add multilingual support for Google ASR including Korean by @sohw400 in #461
- Support Nvidia Thor by @TangmereCottage in #438
- Add reviewer rules by @openminddev in #546
- Fix reviewer rules by @openminddev in #547
- Add more rules for tag by @openminddev in #548
New Contributors
- @YuchengZhou821 made their first contribution in #422
- @WenjinFu made their first contribution in #436
- @jerinpeter made their first contribution in #445
- @sohw400 made their first contribution in #478
Full Changelog: v1.0.0-beta.3...v1.0.0-beta.4
v1.0.0-beta.3
What's new in this release
- Downgraded Python to 3.10 for better Jetson support.
- Integrated Nav2 for state feedback and target publishing, with auto AI-mode disable after localization.
- Zenoh configs/sessions moved to zenoh_msgs, now preferring local network before multicast.
- Added avatar background server to communicate with the OM1-avatar
- Improved avatar animation with thinking behavior and ASR response injection into prompts.
- Added support for long range control of humanoids and quadrupeds using the TBS_TANGO2 radios.
- Added sleep mode for ASR, if there's no voice input for 5 min, it goes to sleep.
Docker
📦 openmindagi/om1:v1.0.0-beta.3
What's Changed
- Downgrade 3.10 jetson by @openminddev in #386
- Add auto sleep by @openminddev in #387
- Update workflows to Python 3.10 by @openminddev in #388
- Add voice sleep mode by @openminddev in #389
- Use RecoveryStand rather than StandUp by @openminddev in #390
- Reliable game controller by @TangmereCottage in #391
- Improve avatar animation by @openminddev in #392
- Production guidline docs by @Prachi1615 in #393
- Production guideline docs by @Prachi1615 in #394
- Update crsf_long_range_control.mdx by @TangmereCottage in #397
- Add nav2 support by @openminddev in #396
- Improve silence rate by @openminddev in #385
- added release notices by @Prachi1615 in #398
Full Changelog: v1.0.0-beta.2...v1.0.0-beta.3
v1.0.0-beta.2
v1.0.0-beta.2
This release adds support for custom camera indices and enables both microphone and speaker functionality in Docker.
Docker
📦 openmindagi/om1:v1.0.0-beta.2
What's Changed
- Fix volume and add camera index by @openminddev in #384
Full Changelog: v1.0.0-beta.1...v1.0.0-beta.2
v1.0.0-beta.1
Overview
First Beta release for OM1
We’re excited to announce the first beta release of OM1, an open-source, modular, and agentic OS for robots. OM1 is hardware-agnostic, enabling developers to prototype, test, and deploy robotics applications without being tied to a specific platform.
Features
- Multiple LLM provider integrations(OpenAI, Gemini, Deepseek, xAI).
- GoogleASR model for speech to text.
- Riva and Eleven Labs for TTS.
- Preconfigured agents for Unitree Go2, G1, TurtleBot, Ubtech Yanshee.
- Full autonomy for Go2 with Real-time SLAM, support for RPLiDAR A1/A2/A3 series sensors, Nav2 for autonomous navigation, automatic handling of coordinate frame transforms.
- Simulator support with Gazebo for Go2.
- Multi-arch support - AMD64 and ARM64
Docker Image
To initiate the complete setup, start the following docker images (more technical details can be found in our documentation)
📦 openmindagi/om1:v1.0.0-beta.1
What's Changed
- Add global time ticker by @openminddev in #4
- Add ASRTTSProvider by @openminddev in #1
- Add emotion analytics and webcam by @TangmereCottage in #3
- each input has their own buffer by @TangmereCottage in #6
- rename mutate->connect by @TangmereCottage in #7
- Add full conversation mode by @openminddev in #5
- ethereum wallet by @TangmereCottage in #11
- Add global io provider by @openminddev in #13
- Add project lint by @openminddev in #17
- Add OpenMind LLM endpoint by @openminddev in #16
- Add Simulator, Bugfixes, and Ethereum Wallet by @TangmereCottage in #8
- Fix conversation mode by @openminddev in #18
- Add runtime unit tests by @openminddev in #19
- Add Fuser unit test by @openminddev in #20
- Add LLM unit test by @openminddev in #21
- Add Inputs unit tests by @openminddev in #22
- Add Providers unit tests by @openminddev in #23
- Add ticker for simulator by @openminddev in #25
- Add support to DeepSeek by @openminddev in #29
- wallet and pygame bug fixes by @TangmereCottage in #28
- Add Coinbase integration by @kyle-openmind in #27
- add comments to .env by @kyle-openmind in #31
- add coinbase documentation to README by @kyle-openmind in #30
- Fix unit test and add api_key detection by @openminddev in #34
- Add unitree submodule by @openminddev in #37
- Add input config by @openminddev in #39
- Install cycloneDDS in CI by @openminddev in #40
- Set cyclonedds to be optional by @openminddev in #42
- Fix cap in emotion detection by @openminddev in #43
- Key Simplification by @TangmereCottage in #44
- Add Gemini LLM Support by @tolgaouz in #36
- Cyclone DDS and add unitree library by @TangmereCottage in #26
- move mac installation note to the brew installation section by @kyle-openmind in #52
- Hackathon prep by @TangmereCottage in #49
- Add vila vlm by @openminddev in #38
- Refactor/remove duplicate threading by @ahmadkhan100 in #58
- improve movement by @TangmereCottage in #55
- Initiate channel in config by @openminddev in #61
- Release Candidate by @TangmereCottage in #60
- Add docs by @openminddev in #63
- feat: add favicon configuration to documentation by @ahmadkhan100 in #65
- upgrade spot with local vision by @TangmereCottage in #66
- Unitree Go2 front camera VLM by @openminddev in #62
- Support twitter bot by @boya-crypto in #41
- Add API reference by @openminddev in #67
- Install om1 rather than om1-modules by @openminddev in #68
- Governance by @TangmereCottage in #59
- Add pre-commit docs by @openminddev in #70
- Fix coco vlm by @openminddev in #72
- feat: Add WebSim implementation with real-time UI and configuration by @ahmadkhan100 in #73
- Fix event loop by @openminddev in #74
- make webcam index configurable by @TangmereCottage in #80
- fix tests by @TangmereCottage in #82
- Add API price docs by @openminddev in #76
- Update README.md by @paigexu522 in #77
- Add simulator tests by @openminddev in #78
- Support multiple models by @openminddev in #79
- Rename SensorOutput->Sensor by @TangmereCottage in #81
- Add configuration support to simulators similar to the base input system by @ahmadkhan100 in #84
- fix: Change README by @ali-hindy in #87
- Reduce passthrough boilerplate by @hunter-at-topology in #86
- Enable audio in and out config via device names by @TangmereCottage in #85
- Support ElevenLabs TTS by @openminddev in #97
- Add global API key support to runtime configuration by @openminddev in #90
- Support custom elevenlabs api key by @openminddev in #102
- fix most actions by @TangmereCottage in #103
- Update README.md by @SecretAgentShh in #96
- Fix gemini config by @tolgaouz in #104
- Add PR template by @openminddev in #106
- Add issue templates by @openminddev in #105
- Change documentation theme color to be same as the SaaS portal. by @sandrasong in #112
- Add LLMHistoryManager by @openminddev in #117
- Update README.md for install uv for Mac M1/2/3 by @bobjiang in #116
- Fix TTS from ElevenLabs by @openminddev in #114
- Use eleven_flash_v2_5 model as the default one by @openminddev in #115
- history block synthesis by @TangmereCottage in #113
- Filter invalid ASR response by @openminddev in #120
- Support OpenAI and Gemini as VLM by @kyle-openmind in #118
- Added new homepage and other pages by @WisdomNwokocha in #124
- Improving the payload for the summarizer by @TangmereCottage in #127
- Add config test by @openminddev in #122
- IRIS by @TangmereCottage in #108
- Simplify data models by @TangmereCottage in #133
- Unitree Go2 Support by @openminddev in #134
- fixed links in read me by @ShaohongZ in #131
- Add docs to set default devices by @openminddev in #137
- Unitree Go2 xbox controller by @openminddev in #135
- Support multiple ASR rates by @openminddev in #132
- Lastpr by @WisdomNwokocha in #139
- Update home.mdx by @WisdomNwokocha in #141
- Updating OpenAI and Gemini VLM prompt by @kyle-openmind in #140
- Create LLM plugin for XAI by @kyle-openmind in #136
- Add serial example by @TangmereCottage in #128
- Fix the documentation theme color. by @sandrasong in #143
- Replace the logo cover image with the correct background by @sandrasong in #144
- Add google asr by @openminddev in #146
- Require API key for ASR by @openminddev in #147
- add attitude message by @TangmereCottage in #149
- Fix XY movement by @ohharsen in https://github.com/OpenMind/O...