Skip to content
L42iPublic

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

SuperMesh

SuperMesh - formally SüperMësh - is a distributed camera system for object and motion tracking.

Setup

Preparations

When starting from scratch: The camera cluster computers need to get a fresh install of the latest Ubuntu Studio, with SSH enabled. Each computer needs to get the proper IP address assigned through DHCP. The addresses can be found in the bee.ini file.

Control Machine Setup

The control machine is the user's own laptop. These setup steps enable the user to setup the complete cluster of Linux computers using mainly Ansible.

  1. Create A Python Virtual Environment and activate it.
  • This step is individual for all operating systems.
  1. Install Ansible

    python3 -m pip install ansible

  2. Test Ansible

To verify Ansible is working and if all machines are connected to the right network properly, run the builtin ping module:

ansible all -i config/bees.ini -m ping --ask-pass

There will be a lot of output in the terminal - if things are OK, it will contain:

"ping": "pong"

Now run the playbook:

ansible-playbook -i config/bees.ini setup/ping.yml --ask-pass    

If everything is OK, it gives:

PLAY RECAP ************************************************************************************************************************************************************************************************************
10.10.10.19                : ok=2    changed=0    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0   
10.10.10.20                : ok=2    changed=0    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0   
10.10.10.21                : ok=2    changed=0    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0   
10.10.10.22                : ok=2    changed=0    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0  
  1. Install Cluster Software

This step needs further documentation.


Project Structure

SuperMesh/
├── config/
│   ├── ansible.cfg              # Ansible settings 
│   ├── bees.ini                 # Put the  Beelinks and the IPs
│   ├── cameras.yaml             # Where each camera is physically mounted (corner, height, room size)
│
├── setup/
│   ├── ping.yml                 # test to make sure we talking with all the BeeLinks
│
├── node/                        # Code that runs on each Beelink
│   └── depth_capture.py         # Blob detection + sends data to central over OSC
│
├── central/                     # Code that runs on the central computer
│   └── receiver.py              # Listens for blob data from all nodes over OSC, builds object map
│
├── concepts/                    # Proof of concept stuff / things we tested, stuff that worked,
│   │                            #   stuff that didn't
│   ├── depth_motion_detection.py  # motion detection + optical flow PoC (this one works)
│   ├── install_depth_camera.yml   # Tried to install RealSense SDK via Ansible (didn't work)
│
├── run_depth_cameras.yml        # Playbook to launch depth_capture.py on all nodes

Contributors

Launched in Spring 2026 by:

Georgia Institute of Technology Atlanta, Georgia, USA

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages