MCPcopy Index your code
hub / github.com/Sollimann/CleanIt

github.com/Sollimann/CleanIt @1.0.0

Chat with this repo
repository ↗ · DeepWiki ↗ · release 1.0.0 ↗ · + Follow
113 symbols 296 edges 27 files 65 documented · 58%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

CleanIt

Build Status codecov version Maintenance GitHub pull-requests GitHub pull-requests closed ViewCount License: MIT

<em>Open-source Autonomy Software in Rust-lang with gRPC for the Roomba series robot vacuum cleaners</em>

Motivation

Motivation is to build a complete DIY autonomy software from scratch (motion planning, guidance and motion control, SLAM, mission control, 2D/3D visualization etc..) with a real-time client-server communication stream using async gRPC for intercommunication and distributed compute.

## Structure

#### Project Layout bash ├── Cargo.toml (workspace) ├── Cargo.lock ├── api (bin) | └── server ├── core (bin) | └── mission | └── motion | └── slam | └── perception | └── risk ├── drivers (lib) | └── roomba | └── realsense | └── rplidar | └── raspberryPi └── proto | └── sensors.proto | └── state.proto | └── map2D.proto └── visualization (bin) | └── urdf | └── map | └── camera

Crate/package Layout

├── Cargo.toml
├── Cargo.lock
├── src
│   ├── main.rs
│   ├── lib.rs
│   └── bin
│       └── another_executable.rs
├── tests
│   └── some_integration_tests.rs
├── benches
│   └── simple_bench.rs
└── examples
    └── simple_example.rs

Pre-requisites

Software

Linux

$ [sudo] apt-get install libudev-dev pkg-config

User serial permission is required to connect to Create over serial. You can add your user to the dialout group to get permission:

$ [sudo] usermod -a -G dialout $USER

Logout and login again for this to take effect.

MacOs
$ brew install *TODO*

Hardware

  • iRobot Create 2 (or iRobot Roomba 6xx series with serial USB cable - https://store.irobot.com/en_US/parts-and-accessories/create-accessories/communication-cable-for-create-2/4466502.html )
  • Raspberry Pi 4 (4GB)
  • Intel RealSense D435 or D435i depth camera

Core symbols most depended-on inside this repo

decode_unsigned_short
called by 18
drivers/src/roomba/decode.rs
decode_short
called by 13
drivers/src/roomba/decode.rs
get_bit_at
called by 8
drivers/src/roomba/decode.rs
decode_unsigned_byte
called by 8
drivers/src/roomba/decode.rs
decode_bool
called by 8
drivers/src/roomba/decode.rs
decode_individual_bits
called by 7
drivers/src/roomba/decode.rs
extract_sublist
called by 4
drivers/src/utils/vector_manipulation.rs
push_slice
called by 4
drivers/src/utils/checksum.rs

Shape

Function 103
Method 7
Class 2
Enum 1

Languages

Rust100%

Modules by API surface

drivers/src/roomba/decode.rs58 symbols
drivers/tests/roomba.rs13 symbols
drivers/src/utils/checksum.rs7 symbols
drivers/tests/utils.rs6 symbols
drivers/src/roomba/serial_stream.rs3 symbols
drivers/src/roomba/drive.rs3 symbols
api/src/server.rs3 symbols
api/src/client.rs3 symbols
drivers/src/utils/enums.rs2 symbols
drivers/src/roomba/startup.rs2 symbols
visualization/src/main.rs1 symbols
drivers/src/utils/vector_manipulation.rs1 symbols

For agents

$ claude mcp add CleanIt \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact