Skip to content

unhuman-io/obot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

OBOT

The open source robot project. See the wiki for a project description: https://github.com/unhuman-io/obot/wiki

Host PC software

Obot is designed to run on linux both on small computers like the Nvidia Jetson Nano and the Raspberry pi, or larger computers like laptops. A debian based linux distrubution is assumed, but Obot can be run on other linux distributions as well. Some subcomponents are necessary in order to run hardware. They can be built from source or installed from binaries using the method described below.

Install linux kernel headers appropriate for your installation. For example:

sudo apt install -y linux-headers-$(uname -r)

or:

sudo apt install -y raspberrypi-kernel-headers

then:

sudo apt install -y curl
curl https://raw.githubusercontent.com/unhuman-io/obot/main/install-obot.sh > install-obot.sh
chmod +x install-obot.sh
./install-obot.sh

then to later update

update-obot

optional:Creating Python stubgen for motor-realtime:

PYSTUBGEN=1 update-obot

Source

Software requirements include installing ros.

curl https://storage.googleapis.com/git-repo-downloads/repo > repo
chmod +x repo
./repo init -b main -u git@github.com:unhuman-io/obot-manifest  # or https://github.com/unhuman-io/obot-manifest
./repo sync

A build script builds the project

./obot/install_obot_build_deps.sh
./obot/build_obot.sh

Jetson Nano image

This is a prebuilt image with the preempt rt patch enabled. You can generate an image with the make_jetson_nano.sh script. And copy it to an SD card with balena etcher. Some additional notes after startup of the jetson nano are:

  • I've used the usb serial interface to connect with the device rather than graphical, but either works
    • sudo screen /dev/ttyACM0
  • During the setup I configured with dummy network since the wifi doesn't seem to work at first both for the intel ac8265 and the usb wifi included with the 2gb version. It fails configuration then select do not configure at this time. Then after reboot I do sudo nmtui to configure a wifi connection.
  • I switch to text only with sudo systemctl set-default multi-user.target
  • For the ac8265 I found that sudo iwconfig wlan0 power off is useful.

The image also includes obot software. Obot source is installed in /usr/local/src. You can change permissions with sudo chown -R $USER:$USER /usr/local/src.

Run

The first demo uses a Host PC with monitor and joystick to remote control move the robot base. Video is transferred from the obot to the Host PC and data is transferred via wifi. To run the demo, on the host PC:

./obot/jetbot_camera_display.sh
source catkin-ws/devel/setup.bash
roslaunch obot-ros obot_base.launch

on the Obot:

./obot/jetbot_camera_run.sh
source catkin-ws/devel/setup.bash
roslaunch obot-ros obot_hardware.launch

About

An open source robot project

Resources

License

Unlicense, Unknown licenses found

Licenses found

Unlicense
UNLICENSE.txt
Unknown
LICENSE-subcomponents.txt

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published