Repository Summary
| Description | |
| Checkout URI | https://github.com/hiran-t/MITI-sdk.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-11-05 |
| Dev Status | DEVELOPED |
| Released | UNRELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| libmiti | 0.1.2 |
| miti_bridge | 0.1.2 |
README
MITI SDK
The robot side of MITI. miti_bridge connects a ROS 2 robot to MITI. It is built on libmiti, a C++ library that any program can use to stream to MITI, with or without ROS.
Install miti_bridge
On the robot: Ubuntu 22.04 (Humble) or 24.04 (Jazzy), amd64 or arm64, with ROS 2 installed. miti_bridge is not in ROS’s apt repository yet, so add this repository’s own apt repository once, then install the package:
curl -fsSL https://hiran-t.github.io/MITI-sdk/key.gpg | sudo gpg --dearmor -o /usr/share/keyrings/miti-sdk.gpg
echo "deb [signed-by=/usr/share/keyrings/miti-sdk.gpg] https://hiran-t.github.io/MITI-sdk $(. /etc/os-release && echo $UBUNTU_CODENAME) main" | sudo tee /etc/apt/sources.list.d/miti-sdk.list
sudo apt update && sudo apt install ros-$ROS_DISTRO-miti-bridge
To run it as a service with Docker, on the robot or on a computer on its network, use the image ghcr.io/hiran-t/miti-bridge (Humble or Jazzy, amd64 or arm64); docs/docker.md has the steps:
docker run -d --name miti-bridge --restart unless-stopped --network host --ipc host \
-e ROS_DOMAIN_ID=0 ghcr.io/hiran-t/miti-bridge:jazzy
On Windows, build it with pixi. On another setup, build it from source. The packages are also on their way into ROS’s own repositories (docs/releases.md), which will need no repository to add.
Run
ros2 launch miti_bridge miti_start
It serves MITI on port 8765. In MITI, click the gear in the status bar and enter ws://<robot-ip>:8765 as the Bridge URL. Every parameter is also a launch argument, for example:
ros2 launch miti_bridge miti_start port:=8765 "topic_whitelist:=['/tf.*', '/camera/.*']"
To keep the bridge’s work off the robot, it can also run on the MITI machine and join the robot’s ROS 2 network over DDS: see Run miti_bridge beside MITI in MITI’s manual.
Build from source
On Ubuntu with ROS 2 installed, in a folder of your choice:
sudo apt install python3-rosdep python3-colcon-common-extensions git
git clone https://github.com/hiran-t/MITI-sdk.git && cd MITI-sdk
source /opt/ros/$ROS_DISTRO/setup.bash
sudo rosdep init # once per machine, if rosdep was never set up
rosdep update && rosdep install --from-paths core ros --ignore-src -y
colcon build --base-paths core ros --cmake-args -DCMAKE_BUILD_TYPE=Release -DMITI_BUILD_TESTS=OFF -DMITI_BUILD_EXAMPLES=OFF -DBUILD_TESTING=OFF
Then run it from that folder:
source install/setup.bash
ros2 launch miti_bridge miti_start
Windows
There is no package for Windows: miti_bridge is built from source with pixi, which brings ROS 2 Humble or Jazzy from RoboStack and the libraries libmiti needs. It needs Visual Studio 2022 or its Build Tools, with the Desktop development with C++ workload, and Git. In PowerShell:
git clone https://github.com/hiran-t/MITI-sdk.git; cd MITI-sdk
pixi run -e humble build-bridge # into install\humble; -e jazzy for Jazzy
Then run it from that folder:
pixi shell -e humble
.\install\humble\local_setup.ps1
ros2 launch miti_bridge miti_start
If PowerShell refuses to run local_setup.ps1, allow your own scripts once with Set-ExecutionPolicy -Scope CurrentUser RemoteSigned. When Windows asks whether miti_bridge may use the network, allow it on private networks for MITI on another machine to connect.
Status
libmiti, and miti_bridge on Humble and Jazzy, pass the conformance suite. MITI connects to miti_bridge from 3.4.3, and has it send cameras as JPEG and reduce point clouds on the robot. Typed messages are planned.
Where to read more:
- docs/design.md: goals, architecture, measurements and decisions
-
docs/protocol.md: the MITI protocol, version 1 (
miti.bridge.v1) - conformance/: checks a server against the protocol, on a fixture ROS 2 graph
- core/: libmiti, the C++ core
- ros/miti_bridge/: the ROS 2 node, its parameters and how it works
- docs/releases.md: how releases and the apt repository are made
- prototypes/generic_service_client/: calling a service of any type on Humble, which miti_bridge needs
-
bench/link/: how late TF and a camera arrive over a slow link (
tc netem)
| Part | What it is |
|---|---|
libmiti |
The C++ core, without ROS: WebSocket server, priority scheduling, JPEG and point cloud reduction |
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Description | |
| Checkout URI | https://github.com/hiran-t/MITI-sdk.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-11-05 |
| Dev Status | DEVELOPED |
| Released | UNRELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| libmiti | 0.1.2 |
| miti_bridge | 0.1.2 |
README
MITI SDK
The robot side of MITI. miti_bridge connects a ROS 2 robot to MITI. It is built on libmiti, a C++ library that any program can use to stream to MITI, with or without ROS.
Install miti_bridge
On the robot: Ubuntu 22.04 (Humble) or 24.04 (Jazzy), amd64 or arm64, with ROS 2 installed. miti_bridge is not in ROS’s apt repository yet, so add this repository’s own apt repository once, then install the package:
curl -fsSL https://hiran-t.github.io/MITI-sdk/key.gpg | sudo gpg --dearmor -o /usr/share/keyrings/miti-sdk.gpg
echo "deb [signed-by=/usr/share/keyrings/miti-sdk.gpg] https://hiran-t.github.io/MITI-sdk $(. /etc/os-release && echo $UBUNTU_CODENAME) main" | sudo tee /etc/apt/sources.list.d/miti-sdk.list
sudo apt update && sudo apt install ros-$ROS_DISTRO-miti-bridge
To run it as a service with Docker, on the robot or on a computer on its network, use the image ghcr.io/hiran-t/miti-bridge (Humble or Jazzy, amd64 or arm64); docs/docker.md has the steps:
docker run -d --name miti-bridge --restart unless-stopped --network host --ipc host \
-e ROS_DOMAIN_ID=0 ghcr.io/hiran-t/miti-bridge:jazzy
On Windows, build it with pixi. On another setup, build it from source. The packages are also on their way into ROS’s own repositories (docs/releases.md), which will need no repository to add.
Run
ros2 launch miti_bridge miti_start
It serves MITI on port 8765. In MITI, click the gear in the status bar and enter ws://<robot-ip>:8765 as the Bridge URL. Every parameter is also a launch argument, for example:
ros2 launch miti_bridge miti_start port:=8765 "topic_whitelist:=['/tf.*', '/camera/.*']"
To keep the bridge’s work off the robot, it can also run on the MITI machine and join the robot’s ROS 2 network over DDS: see Run miti_bridge beside MITI in MITI’s manual.
Build from source
On Ubuntu with ROS 2 installed, in a folder of your choice:
sudo apt install python3-rosdep python3-colcon-common-extensions git
git clone https://github.com/hiran-t/MITI-sdk.git && cd MITI-sdk
source /opt/ros/$ROS_DISTRO/setup.bash
sudo rosdep init # once per machine, if rosdep was never set up
rosdep update && rosdep install --from-paths core ros --ignore-src -y
colcon build --base-paths core ros --cmake-args -DCMAKE_BUILD_TYPE=Release -DMITI_BUILD_TESTS=OFF -DMITI_BUILD_EXAMPLES=OFF -DBUILD_TESTING=OFF
Then run it from that folder:
source install/setup.bash
ros2 launch miti_bridge miti_start
Windows
There is no package for Windows: miti_bridge is built from source with pixi, which brings ROS 2 Humble or Jazzy from RoboStack and the libraries libmiti needs. It needs Visual Studio 2022 or its Build Tools, with the Desktop development with C++ workload, and Git. In PowerShell:
git clone https://github.com/hiran-t/MITI-sdk.git; cd MITI-sdk
pixi run -e humble build-bridge # into install\humble; -e jazzy for Jazzy
Then run it from that folder:
pixi shell -e humble
.\install\humble\local_setup.ps1
ros2 launch miti_bridge miti_start
If PowerShell refuses to run local_setup.ps1, allow your own scripts once with Set-ExecutionPolicy -Scope CurrentUser RemoteSigned. When Windows asks whether miti_bridge may use the network, allow it on private networks for MITI on another machine to connect.
Status
libmiti, and miti_bridge on Humble and Jazzy, pass the conformance suite. MITI connects to miti_bridge from 3.4.3, and has it send cameras as JPEG and reduce point clouds on the robot. Typed messages are planned.
Where to read more:
- docs/design.md: goals, architecture, measurements and decisions
-
docs/protocol.md: the MITI protocol, version 1 (
miti.bridge.v1) - conformance/: checks a server against the protocol, on a fixture ROS 2 graph
- core/: libmiti, the C++ core
- ros/miti_bridge/: the ROS 2 node, its parameters and how it works
- docs/releases.md: how releases and the apt repository are made
- prototypes/generic_service_client/: calling a service of any type on Humble, which miti_bridge needs
-
bench/link/: how late TF and a camera arrive over a slow link (
tc netem)
| Part | What it is |
|---|---|
libmiti |
The C++ core, without ROS: WebSocket server, priority scheduling, JPEG and point cloud reduction |
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Description | |
| Checkout URI | https://github.com/hiran-t/MITI-sdk.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-11-05 |
| Dev Status | DEVELOPED |
| Released | UNRELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| libmiti | 0.1.2 |
| miti_bridge | 0.1.2 |
README
MITI SDK
The robot side of MITI. miti_bridge connects a ROS 2 robot to MITI. It is built on libmiti, a C++ library that any program can use to stream to MITI, with or without ROS.
Install miti_bridge
On the robot: Ubuntu 22.04 (Humble) or 24.04 (Jazzy), amd64 or arm64, with ROS 2 installed. miti_bridge is not in ROS’s apt repository yet, so add this repository’s own apt repository once, then install the package:
curl -fsSL https://hiran-t.github.io/MITI-sdk/key.gpg | sudo gpg --dearmor -o /usr/share/keyrings/miti-sdk.gpg
echo "deb [signed-by=/usr/share/keyrings/miti-sdk.gpg] https://hiran-t.github.io/MITI-sdk $(. /etc/os-release && echo $UBUNTU_CODENAME) main" | sudo tee /etc/apt/sources.list.d/miti-sdk.list
sudo apt update && sudo apt install ros-$ROS_DISTRO-miti-bridge
To run it as a service with Docker, on the robot or on a computer on its network, use the image ghcr.io/hiran-t/miti-bridge (Humble or Jazzy, amd64 or arm64); docs/docker.md has the steps:
docker run -d --name miti-bridge --restart unless-stopped --network host --ipc host \
-e ROS_DOMAIN_ID=0 ghcr.io/hiran-t/miti-bridge:jazzy
On Windows, build it with pixi. On another setup, build it from source. The packages are also on their way into ROS’s own repositories (docs/releases.md), which will need no repository to add.
Run
ros2 launch miti_bridge miti_start
It serves MITI on port 8765. In MITI, click the gear in the status bar and enter ws://<robot-ip>:8765 as the Bridge URL. Every parameter is also a launch argument, for example:
ros2 launch miti_bridge miti_start port:=8765 "topic_whitelist:=['/tf.*', '/camera/.*']"
To keep the bridge’s work off the robot, it can also run on the MITI machine and join the robot’s ROS 2 network over DDS: see Run miti_bridge beside MITI in MITI’s manual.
Build from source
On Ubuntu with ROS 2 installed, in a folder of your choice:
sudo apt install python3-rosdep python3-colcon-common-extensions git
git clone https://github.com/hiran-t/MITI-sdk.git && cd MITI-sdk
source /opt/ros/$ROS_DISTRO/setup.bash
sudo rosdep init # once per machine, if rosdep was never set up
rosdep update && rosdep install --from-paths core ros --ignore-src -y
colcon build --base-paths core ros --cmake-args -DCMAKE_BUILD_TYPE=Release -DMITI_BUILD_TESTS=OFF -DMITI_BUILD_EXAMPLES=OFF -DBUILD_TESTING=OFF
Then run it from that folder:
source install/setup.bash
ros2 launch miti_bridge miti_start
Windows
There is no package for Windows: miti_bridge is built from source with pixi, which brings ROS 2 Humble or Jazzy from RoboStack and the libraries libmiti needs. It needs Visual Studio 2022 or its Build Tools, with the Desktop development with C++ workload, and Git. In PowerShell:
git clone https://github.com/hiran-t/MITI-sdk.git; cd MITI-sdk
pixi run -e humble build-bridge # into install\humble; -e jazzy for Jazzy
Then run it from that folder:
pixi shell -e humble
.\install\humble\local_setup.ps1
ros2 launch miti_bridge miti_start
If PowerShell refuses to run local_setup.ps1, allow your own scripts once with Set-ExecutionPolicy -Scope CurrentUser RemoteSigned. When Windows asks whether miti_bridge may use the network, allow it on private networks for MITI on another machine to connect.
Status
libmiti, and miti_bridge on Humble and Jazzy, pass the conformance suite. MITI connects to miti_bridge from 3.4.3, and has it send cameras as JPEG and reduce point clouds on the robot. Typed messages are planned.
Where to read more:
- docs/design.md: goals, architecture, measurements and decisions
-
docs/protocol.md: the MITI protocol, version 1 (
miti.bridge.v1) - conformance/: checks a server against the protocol, on a fixture ROS 2 graph
- core/: libmiti, the C++ core
- ros/miti_bridge/: the ROS 2 node, its parameters and how it works
- docs/releases.md: how releases and the apt repository are made
- prototypes/generic_service_client/: calling a service of any type on Humble, which miti_bridge needs
-
bench/link/: how late TF and a camera arrive over a slow link (
tc netem)
| Part | What it is |
|---|---|
libmiti |
The C++ core, without ROS: WebSocket server, priority scheduling, JPEG and point cloud reduction |
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Description | |
| Checkout URI | https://github.com/hiran-t/MITI-sdk.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-11-05 |
| Dev Status | DEVELOPED |
| Released | UNRELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| libmiti | 0.1.2 |
| miti_bridge | 0.1.2 |
README
MITI SDK
The robot side of MITI. miti_bridge connects a ROS 2 robot to MITI. It is built on libmiti, a C++ library that any program can use to stream to MITI, with or without ROS.
Install miti_bridge
On the robot: Ubuntu 22.04 (Humble) or 24.04 (Jazzy), amd64 or arm64, with ROS 2 installed. miti_bridge is not in ROS’s apt repository yet, so add this repository’s own apt repository once, then install the package:
curl -fsSL https://hiran-t.github.io/MITI-sdk/key.gpg | sudo gpg --dearmor -o /usr/share/keyrings/miti-sdk.gpg
echo "deb [signed-by=/usr/share/keyrings/miti-sdk.gpg] https://hiran-t.github.io/MITI-sdk $(. /etc/os-release && echo $UBUNTU_CODENAME) main" | sudo tee /etc/apt/sources.list.d/miti-sdk.list
sudo apt update && sudo apt install ros-$ROS_DISTRO-miti-bridge
To run it as a service with Docker, on the robot or on a computer on its network, use the image ghcr.io/hiran-t/miti-bridge (Humble or Jazzy, amd64 or arm64); docs/docker.md has the steps:
docker run -d --name miti-bridge --restart unless-stopped --network host --ipc host \
-e ROS_DOMAIN_ID=0 ghcr.io/hiran-t/miti-bridge:jazzy
On Windows, build it with pixi. On another setup, build it from source. The packages are also on their way into ROS’s own repositories (docs/releases.md), which will need no repository to add.
Run
ros2 launch miti_bridge miti_start
It serves MITI on port 8765. In MITI, click the gear in the status bar and enter ws://<robot-ip>:8765 as the Bridge URL. Every parameter is also a launch argument, for example:
ros2 launch miti_bridge miti_start port:=8765 "topic_whitelist:=['/tf.*', '/camera/.*']"
To keep the bridge’s work off the robot, it can also run on the MITI machine and join the robot’s ROS 2 network over DDS: see Run miti_bridge beside MITI in MITI’s manual.
Build from source
On Ubuntu with ROS 2 installed, in a folder of your choice:
sudo apt install python3-rosdep python3-colcon-common-extensions git
git clone https://github.com/hiran-t/MITI-sdk.git && cd MITI-sdk
source /opt/ros/$ROS_DISTRO/setup.bash
sudo rosdep init # once per machine, if rosdep was never set up
rosdep update && rosdep install --from-paths core ros --ignore-src -y
colcon build --base-paths core ros --cmake-args -DCMAKE_BUILD_TYPE=Release -DMITI_BUILD_TESTS=OFF -DMITI_BUILD_EXAMPLES=OFF -DBUILD_TESTING=OFF
Then run it from that folder:
source install/setup.bash
ros2 launch miti_bridge miti_start
Windows
There is no package for Windows: miti_bridge is built from source with pixi, which brings ROS 2 Humble or Jazzy from RoboStack and the libraries libmiti needs. It needs Visual Studio 2022 or its Build Tools, with the Desktop development with C++ workload, and Git. In PowerShell:
git clone https://github.com/hiran-t/MITI-sdk.git; cd MITI-sdk
pixi run -e humble build-bridge # into install\humble; -e jazzy for Jazzy
Then run it from that folder:
pixi shell -e humble
.\install\humble\local_setup.ps1
ros2 launch miti_bridge miti_start
If PowerShell refuses to run local_setup.ps1, allow your own scripts once with Set-ExecutionPolicy -Scope CurrentUser RemoteSigned. When Windows asks whether miti_bridge may use the network, allow it on private networks for MITI on another machine to connect.
Status
libmiti, and miti_bridge on Humble and Jazzy, pass the conformance suite. MITI connects to miti_bridge from 3.4.3, and has it send cameras as JPEG and reduce point clouds on the robot. Typed messages are planned.
Where to read more:
- docs/design.md: goals, architecture, measurements and decisions
-
docs/protocol.md: the MITI protocol, version 1 (
miti.bridge.v1) - conformance/: checks a server against the protocol, on a fixture ROS 2 graph
- core/: libmiti, the C++ core
- ros/miti_bridge/: the ROS 2 node, its parameters and how it works
- docs/releases.md: how releases and the apt repository are made
- prototypes/generic_service_client/: calling a service of any type on Humble, which miti_bridge needs
-
bench/link/: how late TF and a camera arrive over a slow link (
tc netem)
| Part | What it is |
|---|---|
libmiti |
The C++ core, without ROS: WebSocket server, priority scheduling, JPEG and point cloud reduction |
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Description | |
| Checkout URI | https://github.com/hiran-t/MITI-sdk.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-11-05 |
| Dev Status | DEVELOPED |
| Released | UNRELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| libmiti | 0.1.2 |
| miti_bridge | 0.1.2 |
README
MITI SDK
The robot side of MITI. miti_bridge connects a ROS 2 robot to MITI. It is built on libmiti, a C++ library that any program can use to stream to MITI, with or without ROS.
Install miti_bridge
On the robot: Ubuntu 22.04 (Humble) or 24.04 (Jazzy), amd64 or arm64, with ROS 2 installed. miti_bridge is not in ROS’s apt repository yet, so add this repository’s own apt repository once, then install the package:
curl -fsSL https://hiran-t.github.io/MITI-sdk/key.gpg | sudo gpg --dearmor -o /usr/share/keyrings/miti-sdk.gpg
echo "deb [signed-by=/usr/share/keyrings/miti-sdk.gpg] https://hiran-t.github.io/MITI-sdk $(. /etc/os-release && echo $UBUNTU_CODENAME) main" | sudo tee /etc/apt/sources.list.d/miti-sdk.list
sudo apt update && sudo apt install ros-$ROS_DISTRO-miti-bridge
To run it as a service with Docker, on the robot or on a computer on its network, use the image ghcr.io/hiran-t/miti-bridge (Humble or Jazzy, amd64 or arm64); docs/docker.md has the steps:
docker run -d --name miti-bridge --restart unless-stopped --network host --ipc host \
-e ROS_DOMAIN_ID=0 ghcr.io/hiran-t/miti-bridge:jazzy
On Windows, build it with pixi. On another setup, build it from source. The packages are also on their way into ROS’s own repositories (docs/releases.md), which will need no repository to add.
Run
ros2 launch miti_bridge miti_start
It serves MITI on port 8765. In MITI, click the gear in the status bar and enter ws://<robot-ip>:8765 as the Bridge URL. Every parameter is also a launch argument, for example:
ros2 launch miti_bridge miti_start port:=8765 "topic_whitelist:=['/tf.*', '/camera/.*']"
To keep the bridge’s work off the robot, it can also run on the MITI machine and join the robot’s ROS 2 network over DDS: see Run miti_bridge beside MITI in MITI’s manual.
Build from source
On Ubuntu with ROS 2 installed, in a folder of your choice:
sudo apt install python3-rosdep python3-colcon-common-extensions git
git clone https://github.com/hiran-t/MITI-sdk.git && cd MITI-sdk
source /opt/ros/$ROS_DISTRO/setup.bash
sudo rosdep init # once per machine, if rosdep was never set up
rosdep update && rosdep install --from-paths core ros --ignore-src -y
colcon build --base-paths core ros --cmake-args -DCMAKE_BUILD_TYPE=Release -DMITI_BUILD_TESTS=OFF -DMITI_BUILD_EXAMPLES=OFF -DBUILD_TESTING=OFF
Then run it from that folder:
source install/setup.bash
ros2 launch miti_bridge miti_start
Windows
There is no package for Windows: miti_bridge is built from source with pixi, which brings ROS 2 Humble or Jazzy from RoboStack and the libraries libmiti needs. It needs Visual Studio 2022 or its Build Tools, with the Desktop development with C++ workload, and Git. In PowerShell:
git clone https://github.com/hiran-t/MITI-sdk.git; cd MITI-sdk
pixi run -e humble build-bridge # into install\humble; -e jazzy for Jazzy
Then run it from that folder:
pixi shell -e humble
.\install\humble\local_setup.ps1
ros2 launch miti_bridge miti_start
If PowerShell refuses to run local_setup.ps1, allow your own scripts once with Set-ExecutionPolicy -Scope CurrentUser RemoteSigned. When Windows asks whether miti_bridge may use the network, allow it on private networks for MITI on another machine to connect.
Status
libmiti, and miti_bridge on Humble and Jazzy, pass the conformance suite. MITI connects to miti_bridge from 3.4.3, and has it send cameras as JPEG and reduce point clouds on the robot. Typed messages are planned.
Where to read more:
- docs/design.md: goals, architecture, measurements and decisions
-
docs/protocol.md: the MITI protocol, version 1 (
miti.bridge.v1) - conformance/: checks a server against the protocol, on a fixture ROS 2 graph
- core/: libmiti, the C++ core
- ros/miti_bridge/: the ROS 2 node, its parameters and how it works
- docs/releases.md: how releases and the apt repository are made
- prototypes/generic_service_client/: calling a service of any type on Humble, which miti_bridge needs
-
bench/link/: how late TF and a camera arrive over a slow link (
tc netem)
| Part | What it is |
|---|---|
libmiti |
The C++ core, without ROS: WebSocket server, priority scheduling, JPEG and point cloud reduction |
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Description | |
| Checkout URI | https://github.com/hiran-t/MITI-sdk.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-11-05 |
| Dev Status | DEVELOPED |
| Released | UNRELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| libmiti | 0.1.2 |
| miti_bridge | 0.1.2 |
README
MITI SDK
The robot side of MITI. miti_bridge connects a ROS 2 robot to MITI. It is built on libmiti, a C++ library that any program can use to stream to MITI, with or without ROS.
Install miti_bridge
On the robot: Ubuntu 22.04 (Humble) or 24.04 (Jazzy), amd64 or arm64, with ROS 2 installed. miti_bridge is not in ROS’s apt repository yet, so add this repository’s own apt repository once, then install the package:
curl -fsSL https://hiran-t.github.io/MITI-sdk/key.gpg | sudo gpg --dearmor -o /usr/share/keyrings/miti-sdk.gpg
echo "deb [signed-by=/usr/share/keyrings/miti-sdk.gpg] https://hiran-t.github.io/MITI-sdk $(. /etc/os-release && echo $UBUNTU_CODENAME) main" | sudo tee /etc/apt/sources.list.d/miti-sdk.list
sudo apt update && sudo apt install ros-$ROS_DISTRO-miti-bridge
To run it as a service with Docker, on the robot or on a computer on its network, use the image ghcr.io/hiran-t/miti-bridge (Humble or Jazzy, amd64 or arm64); docs/docker.md has the steps:
docker run -d --name miti-bridge --restart unless-stopped --network host --ipc host \
-e ROS_DOMAIN_ID=0 ghcr.io/hiran-t/miti-bridge:jazzy
On Windows, build it with pixi. On another setup, build it from source. The packages are also on their way into ROS’s own repositories (docs/releases.md), which will need no repository to add.
Run
ros2 launch miti_bridge miti_start
It serves MITI on port 8765. In MITI, click the gear in the status bar and enter ws://<robot-ip>:8765 as the Bridge URL. Every parameter is also a launch argument, for example:
ros2 launch miti_bridge miti_start port:=8765 "topic_whitelist:=['/tf.*', '/camera/.*']"
To keep the bridge’s work off the robot, it can also run on the MITI machine and join the robot’s ROS 2 network over DDS: see Run miti_bridge beside MITI in MITI’s manual.
Build from source
On Ubuntu with ROS 2 installed, in a folder of your choice:
sudo apt install python3-rosdep python3-colcon-common-extensions git
git clone https://github.com/hiran-t/MITI-sdk.git && cd MITI-sdk
source /opt/ros/$ROS_DISTRO/setup.bash
sudo rosdep init # once per machine, if rosdep was never set up
rosdep update && rosdep install --from-paths core ros --ignore-src -y
colcon build --base-paths core ros --cmake-args -DCMAKE_BUILD_TYPE=Release -DMITI_BUILD_TESTS=OFF -DMITI_BUILD_EXAMPLES=OFF -DBUILD_TESTING=OFF
Then run it from that folder:
source install/setup.bash
ros2 launch miti_bridge miti_start
Windows
There is no package for Windows: miti_bridge is built from source with pixi, which brings ROS 2 Humble or Jazzy from RoboStack and the libraries libmiti needs. It needs Visual Studio 2022 or its Build Tools, with the Desktop development with C++ workload, and Git. In PowerShell:
git clone https://github.com/hiran-t/MITI-sdk.git; cd MITI-sdk
pixi run -e humble build-bridge # into install\humble; -e jazzy for Jazzy
Then run it from that folder:
pixi shell -e humble
.\install\humble\local_setup.ps1
ros2 launch miti_bridge miti_start
If PowerShell refuses to run local_setup.ps1, allow your own scripts once with Set-ExecutionPolicy -Scope CurrentUser RemoteSigned. When Windows asks whether miti_bridge may use the network, allow it on private networks for MITI on another machine to connect.
Status
libmiti, and miti_bridge on Humble and Jazzy, pass the conformance suite. MITI connects to miti_bridge from 3.4.3, and has it send cameras as JPEG and reduce point clouds on the robot. Typed messages are planned.
Where to read more:
- docs/design.md: goals, architecture, measurements and decisions
-
docs/protocol.md: the MITI protocol, version 1 (
miti.bridge.v1) - conformance/: checks a server against the protocol, on a fixture ROS 2 graph
- core/: libmiti, the C++ core
- ros/miti_bridge/: the ROS 2 node, its parameters and how it works
- docs/releases.md: how releases and the apt repository are made
- prototypes/generic_service_client/: calling a service of any type on Humble, which miti_bridge needs
-
bench/link/: how late TF and a camera arrive over a slow link (
tc netem)
| Part | What it is |
|---|---|
libmiti |
The C++ core, without ROS: WebSocket server, priority scheduling, JPEG and point cloud reduction |
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Description | |
| Checkout URI | https://github.com/hiran-t/MITI-sdk.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-11-05 |
| Dev Status | DEVELOPED |
| Released | UNRELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| libmiti | 0.1.2 |
| miti_bridge | 0.1.2 |
README
MITI SDK
The robot side of MITI. miti_bridge connects a ROS 2 robot to MITI. It is built on libmiti, a C++ library that any program can use to stream to MITI, with or without ROS.
Install miti_bridge
On the robot: Ubuntu 22.04 (Humble) or 24.04 (Jazzy), amd64 or arm64, with ROS 2 installed. miti_bridge is not in ROS’s apt repository yet, so add this repository’s own apt repository once, then install the package:
curl -fsSL https://hiran-t.github.io/MITI-sdk/key.gpg | sudo gpg --dearmor -o /usr/share/keyrings/miti-sdk.gpg
echo "deb [signed-by=/usr/share/keyrings/miti-sdk.gpg] https://hiran-t.github.io/MITI-sdk $(. /etc/os-release && echo $UBUNTU_CODENAME) main" | sudo tee /etc/apt/sources.list.d/miti-sdk.list
sudo apt update && sudo apt install ros-$ROS_DISTRO-miti-bridge
To run it as a service with Docker, on the robot or on a computer on its network, use the image ghcr.io/hiran-t/miti-bridge (Humble or Jazzy, amd64 or arm64); docs/docker.md has the steps:
docker run -d --name miti-bridge --restart unless-stopped --network host --ipc host \
-e ROS_DOMAIN_ID=0 ghcr.io/hiran-t/miti-bridge:jazzy
On Windows, build it with pixi. On another setup, build it from source. The packages are also on their way into ROS’s own repositories (docs/releases.md), which will need no repository to add.
Run
ros2 launch miti_bridge miti_start
It serves MITI on port 8765. In MITI, click the gear in the status bar and enter ws://<robot-ip>:8765 as the Bridge URL. Every parameter is also a launch argument, for example:
ros2 launch miti_bridge miti_start port:=8765 "topic_whitelist:=['/tf.*', '/camera/.*']"
To keep the bridge’s work off the robot, it can also run on the MITI machine and join the robot’s ROS 2 network over DDS: see Run miti_bridge beside MITI in MITI’s manual.
Build from source
On Ubuntu with ROS 2 installed, in a folder of your choice:
sudo apt install python3-rosdep python3-colcon-common-extensions git
git clone https://github.com/hiran-t/MITI-sdk.git && cd MITI-sdk
source /opt/ros/$ROS_DISTRO/setup.bash
sudo rosdep init # once per machine, if rosdep was never set up
rosdep update && rosdep install --from-paths core ros --ignore-src -y
colcon build --base-paths core ros --cmake-args -DCMAKE_BUILD_TYPE=Release -DMITI_BUILD_TESTS=OFF -DMITI_BUILD_EXAMPLES=OFF -DBUILD_TESTING=OFF
Then run it from that folder:
source install/setup.bash
ros2 launch miti_bridge miti_start
Windows
There is no package for Windows: miti_bridge is built from source with pixi, which brings ROS 2 Humble or Jazzy from RoboStack and the libraries libmiti needs. It needs Visual Studio 2022 or its Build Tools, with the Desktop development with C++ workload, and Git. In PowerShell:
git clone https://github.com/hiran-t/MITI-sdk.git; cd MITI-sdk
pixi run -e humble build-bridge # into install\humble; -e jazzy for Jazzy
Then run it from that folder:
pixi shell -e humble
.\install\humble\local_setup.ps1
ros2 launch miti_bridge miti_start
If PowerShell refuses to run local_setup.ps1, allow your own scripts once with Set-ExecutionPolicy -Scope CurrentUser RemoteSigned. When Windows asks whether miti_bridge may use the network, allow it on private networks for MITI on another machine to connect.
Status
libmiti, and miti_bridge on Humble and Jazzy, pass the conformance suite. MITI connects to miti_bridge from 3.4.3, and has it send cameras as JPEG and reduce point clouds on the robot. Typed messages are planned.
Where to read more:
- docs/design.md: goals, architecture, measurements and decisions
-
docs/protocol.md: the MITI protocol, version 1 (
miti.bridge.v1) - conformance/: checks a server against the protocol, on a fixture ROS 2 graph
- core/: libmiti, the C++ core
- ros/miti_bridge/: the ROS 2 node, its parameters and how it works
- docs/releases.md: how releases and the apt repository are made
- prototypes/generic_service_client/: calling a service of any type on Humble, which miti_bridge needs
-
bench/link/: how late TF and a camera arrive over a slow link (
tc netem)
| Part | What it is |
|---|---|
libmiti |
The C++ core, without ROS: WebSocket server, priority scheduling, JPEG and point cloud reduction |
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Description | |
| Checkout URI | https://github.com/hiran-t/MITI-sdk.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-11-05 |
| Dev Status | DEVELOPED |
| Released | UNRELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| libmiti | 0.1.2 |
| miti_bridge | 0.1.2 |
README
MITI SDK
The robot side of MITI. miti_bridge connects a ROS 2 robot to MITI. It is built on libmiti, a C++ library that any program can use to stream to MITI, with or without ROS.
Install miti_bridge
On the robot: Ubuntu 22.04 (Humble) or 24.04 (Jazzy), amd64 or arm64, with ROS 2 installed. miti_bridge is not in ROS’s apt repository yet, so add this repository’s own apt repository once, then install the package:
curl -fsSL https://hiran-t.github.io/MITI-sdk/key.gpg | sudo gpg --dearmor -o /usr/share/keyrings/miti-sdk.gpg
echo "deb [signed-by=/usr/share/keyrings/miti-sdk.gpg] https://hiran-t.github.io/MITI-sdk $(. /etc/os-release && echo $UBUNTU_CODENAME) main" | sudo tee /etc/apt/sources.list.d/miti-sdk.list
sudo apt update && sudo apt install ros-$ROS_DISTRO-miti-bridge
To run it as a service with Docker, on the robot or on a computer on its network, use the image ghcr.io/hiran-t/miti-bridge (Humble or Jazzy, amd64 or arm64); docs/docker.md has the steps:
docker run -d --name miti-bridge --restart unless-stopped --network host --ipc host \
-e ROS_DOMAIN_ID=0 ghcr.io/hiran-t/miti-bridge:jazzy
On Windows, build it with pixi. On another setup, build it from source. The packages are also on their way into ROS’s own repositories (docs/releases.md), which will need no repository to add.
Run
ros2 launch miti_bridge miti_start
It serves MITI on port 8765. In MITI, click the gear in the status bar and enter ws://<robot-ip>:8765 as the Bridge URL. Every parameter is also a launch argument, for example:
ros2 launch miti_bridge miti_start port:=8765 "topic_whitelist:=['/tf.*', '/camera/.*']"
To keep the bridge’s work off the robot, it can also run on the MITI machine and join the robot’s ROS 2 network over DDS: see Run miti_bridge beside MITI in MITI’s manual.
Build from source
On Ubuntu with ROS 2 installed, in a folder of your choice:
sudo apt install python3-rosdep python3-colcon-common-extensions git
git clone https://github.com/hiran-t/MITI-sdk.git && cd MITI-sdk
source /opt/ros/$ROS_DISTRO/setup.bash
sudo rosdep init # once per machine, if rosdep was never set up
rosdep update && rosdep install --from-paths core ros --ignore-src -y
colcon build --base-paths core ros --cmake-args -DCMAKE_BUILD_TYPE=Release -DMITI_BUILD_TESTS=OFF -DMITI_BUILD_EXAMPLES=OFF -DBUILD_TESTING=OFF
Then run it from that folder:
source install/setup.bash
ros2 launch miti_bridge miti_start
Windows
There is no package for Windows: miti_bridge is built from source with pixi, which brings ROS 2 Humble or Jazzy from RoboStack and the libraries libmiti needs. It needs Visual Studio 2022 or its Build Tools, with the Desktop development with C++ workload, and Git. In PowerShell:
git clone https://github.com/hiran-t/MITI-sdk.git; cd MITI-sdk
pixi run -e humble build-bridge # into install\humble; -e jazzy for Jazzy
Then run it from that folder:
pixi shell -e humble
.\install\humble\local_setup.ps1
ros2 launch miti_bridge miti_start
If PowerShell refuses to run local_setup.ps1, allow your own scripts once with Set-ExecutionPolicy -Scope CurrentUser RemoteSigned. When Windows asks whether miti_bridge may use the network, allow it on private networks for MITI on another machine to connect.
Status
libmiti, and miti_bridge on Humble and Jazzy, pass the conformance suite. MITI connects to miti_bridge from 3.4.3, and has it send cameras as JPEG and reduce point clouds on the robot. Typed messages are planned.
Where to read more:
- docs/design.md: goals, architecture, measurements and decisions
-
docs/protocol.md: the MITI protocol, version 1 (
miti.bridge.v1) - conformance/: checks a server against the protocol, on a fixture ROS 2 graph
- core/: libmiti, the C++ core
- ros/miti_bridge/: the ROS 2 node, its parameters and how it works
- docs/releases.md: how releases and the apt repository are made
- prototypes/generic_service_client/: calling a service of any type on Humble, which miti_bridge needs
-
bench/link/: how late TF and a camera arrive over a slow link (
tc netem)
| Part | What it is |
|---|---|
libmiti |
The C++ core, without ROS: WebSocket server, priority scheduling, JPEG and point cloud reduction |
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Description | |
| Checkout URI | https://github.com/hiran-t/MITI-sdk.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-11-05 |
| Dev Status | DEVELOPED |
| Released | UNRELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| libmiti | 0.1.2 |
| miti_bridge | 0.1.2 |
README
MITI SDK
The robot side of MITI. miti_bridge connects a ROS 2 robot to MITI. It is built on libmiti, a C++ library that any program can use to stream to MITI, with or without ROS.
Install miti_bridge
On the robot: Ubuntu 22.04 (Humble) or 24.04 (Jazzy), amd64 or arm64, with ROS 2 installed. miti_bridge is not in ROS’s apt repository yet, so add this repository’s own apt repository once, then install the package:
curl -fsSL https://hiran-t.github.io/MITI-sdk/key.gpg | sudo gpg --dearmor -o /usr/share/keyrings/miti-sdk.gpg
echo "deb [signed-by=/usr/share/keyrings/miti-sdk.gpg] https://hiran-t.github.io/MITI-sdk $(. /etc/os-release && echo $UBUNTU_CODENAME) main" | sudo tee /etc/apt/sources.list.d/miti-sdk.list
sudo apt update && sudo apt install ros-$ROS_DISTRO-miti-bridge
To run it as a service with Docker, on the robot or on a computer on its network, use the image ghcr.io/hiran-t/miti-bridge (Humble or Jazzy, amd64 or arm64); docs/docker.md has the steps:
docker run -d --name miti-bridge --restart unless-stopped --network host --ipc host \
-e ROS_DOMAIN_ID=0 ghcr.io/hiran-t/miti-bridge:jazzy
On Windows, build it with pixi. On another setup, build it from source. The packages are also on their way into ROS’s own repositories (docs/releases.md), which will need no repository to add.
Run
ros2 launch miti_bridge miti_start
It serves MITI on port 8765. In MITI, click the gear in the status bar and enter ws://<robot-ip>:8765 as the Bridge URL. Every parameter is also a launch argument, for example:
ros2 launch miti_bridge miti_start port:=8765 "topic_whitelist:=['/tf.*', '/camera/.*']"
To keep the bridge’s work off the robot, it can also run on the MITI machine and join the robot’s ROS 2 network over DDS: see Run miti_bridge beside MITI in MITI’s manual.
Build from source
On Ubuntu with ROS 2 installed, in a folder of your choice:
sudo apt install python3-rosdep python3-colcon-common-extensions git
git clone https://github.com/hiran-t/MITI-sdk.git && cd MITI-sdk
source /opt/ros/$ROS_DISTRO/setup.bash
sudo rosdep init # once per machine, if rosdep was never set up
rosdep update && rosdep install --from-paths core ros --ignore-src -y
colcon build --base-paths core ros --cmake-args -DCMAKE_BUILD_TYPE=Release -DMITI_BUILD_TESTS=OFF -DMITI_BUILD_EXAMPLES=OFF -DBUILD_TESTING=OFF
Then run it from that folder:
source install/setup.bash
ros2 launch miti_bridge miti_start
Windows
There is no package for Windows: miti_bridge is built from source with pixi, which brings ROS 2 Humble or Jazzy from RoboStack and the libraries libmiti needs. It needs Visual Studio 2022 or its Build Tools, with the Desktop development with C++ workload, and Git. In PowerShell:
git clone https://github.com/hiran-t/MITI-sdk.git; cd MITI-sdk
pixi run -e humble build-bridge # into install\humble; -e jazzy for Jazzy
Then run it from that folder:
pixi shell -e humble
.\install\humble\local_setup.ps1
ros2 launch miti_bridge miti_start
If PowerShell refuses to run local_setup.ps1, allow your own scripts once with Set-ExecutionPolicy -Scope CurrentUser RemoteSigned. When Windows asks whether miti_bridge may use the network, allow it on private networks for MITI on another machine to connect.
Status
libmiti, and miti_bridge on Humble and Jazzy, pass the conformance suite. MITI connects to miti_bridge from 3.4.3, and has it send cameras as JPEG and reduce point clouds on the robot. Typed messages are planned.
Where to read more:
- docs/design.md: goals, architecture, measurements and decisions
-
docs/protocol.md: the MITI protocol, version 1 (
miti.bridge.v1) - conformance/: checks a server against the protocol, on a fixture ROS 2 graph
- core/: libmiti, the C++ core
- ros/miti_bridge/: the ROS 2 node, its parameters and how it works
- docs/releases.md: how releases and the apt repository are made
- prototypes/generic_service_client/: calling a service of any type on Humble, which miti_bridge needs
-
bench/link/: how late TF and a camera arrive over a slow link (
tc netem)
| Part | What it is |
|---|---|
libmiti |
The C++ core, without ROS: WebSocket server, priority scheduling, JPEG and point cloud reduction |
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Description | |
| Checkout URI | https://github.com/hiran-t/MITI-sdk.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-11-05 |
| Dev Status | DEVELOPED |
| Released | UNRELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| libmiti | 0.1.2 |
| miti_bridge | 0.1.2 |
README
MITI SDK
The robot side of MITI. miti_bridge connects a ROS 2 robot to MITI. It is built on libmiti, a C++ library that any program can use to stream to MITI, with or without ROS.
Install miti_bridge
On the robot: Ubuntu 22.04 (Humble) or 24.04 (Jazzy), amd64 or arm64, with ROS 2 installed. miti_bridge is not in ROS’s apt repository yet, so add this repository’s own apt repository once, then install the package:
curl -fsSL https://hiran-t.github.io/MITI-sdk/key.gpg | sudo gpg --dearmor -o /usr/share/keyrings/miti-sdk.gpg
echo "deb [signed-by=/usr/share/keyrings/miti-sdk.gpg] https://hiran-t.github.io/MITI-sdk $(. /etc/os-release && echo $UBUNTU_CODENAME) main" | sudo tee /etc/apt/sources.list.d/miti-sdk.list
sudo apt update && sudo apt install ros-$ROS_DISTRO-miti-bridge
To run it as a service with Docker, on the robot or on a computer on its network, use the image ghcr.io/hiran-t/miti-bridge (Humble or Jazzy, amd64 or arm64); docs/docker.md has the steps:
docker run -d --name miti-bridge --restart unless-stopped --network host --ipc host \
-e ROS_DOMAIN_ID=0 ghcr.io/hiran-t/miti-bridge:jazzy
On Windows, build it with pixi. On another setup, build it from source. The packages are also on their way into ROS’s own repositories (docs/releases.md), which will need no repository to add.
Run
ros2 launch miti_bridge miti_start
It serves MITI on port 8765. In MITI, click the gear in the status bar and enter ws://<robot-ip>:8765 as the Bridge URL. Every parameter is also a launch argument, for example:
ros2 launch miti_bridge miti_start port:=8765 "topic_whitelist:=['/tf.*', '/camera/.*']"
To keep the bridge’s work off the robot, it can also run on the MITI machine and join the robot’s ROS 2 network over DDS: see Run miti_bridge beside MITI in MITI’s manual.
Build from source
On Ubuntu with ROS 2 installed, in a folder of your choice:
sudo apt install python3-rosdep python3-colcon-common-extensions git
git clone https://github.com/hiran-t/MITI-sdk.git && cd MITI-sdk
source /opt/ros/$ROS_DISTRO/setup.bash
sudo rosdep init # once per machine, if rosdep was never set up
rosdep update && rosdep install --from-paths core ros --ignore-src -y
colcon build --base-paths core ros --cmake-args -DCMAKE_BUILD_TYPE=Release -DMITI_BUILD_TESTS=OFF -DMITI_BUILD_EXAMPLES=OFF -DBUILD_TESTING=OFF
Then run it from that folder:
source install/setup.bash
ros2 launch miti_bridge miti_start
Windows
There is no package for Windows: miti_bridge is built from source with pixi, which brings ROS 2 Humble or Jazzy from RoboStack and the libraries libmiti needs. It needs Visual Studio 2022 or its Build Tools, with the Desktop development with C++ workload, and Git. In PowerShell:
git clone https://github.com/hiran-t/MITI-sdk.git; cd MITI-sdk
pixi run -e humble build-bridge # into install\humble; -e jazzy for Jazzy
Then run it from that folder:
pixi shell -e humble
.\install\humble\local_setup.ps1
ros2 launch miti_bridge miti_start
If PowerShell refuses to run local_setup.ps1, allow your own scripts once with Set-ExecutionPolicy -Scope CurrentUser RemoteSigned. When Windows asks whether miti_bridge may use the network, allow it on private networks for MITI on another machine to connect.
Status
libmiti, and miti_bridge on Humble and Jazzy, pass the conformance suite. MITI connects to miti_bridge from 3.4.3, and has it send cameras as JPEG and reduce point clouds on the robot. Typed messages are planned.
Where to read more:
- docs/design.md: goals, architecture, measurements and decisions
-
docs/protocol.md: the MITI protocol, version 1 (
miti.bridge.v1) - conformance/: checks a server against the protocol, on a fixture ROS 2 graph
- core/: libmiti, the C++ core
- ros/miti_bridge/: the ROS 2 node, its parameters and how it works
- docs/releases.md: how releases and the apt repository are made
- prototypes/generic_service_client/: calling a service of any type on Humble, which miti_bridge needs
-
bench/link/: how late TF and a camera arrive over a slow link (
tc netem)
| Part | What it is |
|---|---|
libmiti |
The C++ core, without ROS: WebSocket server, priority scheduling, JPEG and point cloud reduction |
File truncated at 100 lines see the full file