Skip to content

ROSXBee is a ROS2 package to interface and expose XBee Device using ROS2 packaging as a wrapper around the Digi-XBee python API library.

License

Notifications You must be signed in to change notification settings

Sudharsan10/ROSXBee

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 

Repository files navigation

ROSXBee
Explore ROSXBee docs »

Report bug · Request feature

ROSXBee is a ROS2 package to interface and expose XBee Device using ROS2 packaging as a wrapper around the Digi-XBee python API library.


Table of contents

Work in progress

You can find latest work done commits in the development branch and completed features will be pulled into features branch.

  • Create Basic XBee Interface in python
  • Feat: Add transmit func.
  • Use parameters to set ports and Baud rate
  • Feat: Add Receive func.
  • Add Readme.md to main branch
  • Update Readme and Wiki

Status

ROS-version ROS-Distro made-with-python pip-version Digi-Xbee-version Cbor2-version Flow-charts contributors Documentation Status Maintenance

What's included

Within the download you'll find the following directories and files, logically grouping the modules in its own packages.You'll see something like this:

ROSXBee/
├── code/
|   └── src
|       ├── rosxbeecpp/...  # ROS2 c++ package
|       └── rosxbeepy/..    # ROS2 Python package
├── .gitignore
└── setup.py

Pre-requisites

ROSXBee is a ROS2 package hence it requires ROS2 Foxy Fitzroy as main pre-requisite and it also has few python3 dependencies, and you can get them set up by below instructions,

1. ROS2 Foxy Fitzroy Installation

Go to this link ROS Foxy Fitzroy installation and follow the official guide to install ROS in ubuntu or follow the below steps for linux users.

  • Set local

    locale  # check for UTF-8
    
    sudo apt update && sudo apt install locales
    sudo locale-gen en_US en_US.UTF-8
    sudo update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8
    export LANG=en_US.UTF-8
    
    locale  # verify settings
  • Setup your source.list

    You will need to add the ROS 2 apt repositories to your system. To do so, first authorize our GPG key with apt like this:

    sudo apt update && sudo apt install curl gnupg2 lsb-release
    curl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo apt-key add -

    And then add the repository to your sources list:

    sudo sh -c 'echo "deb [arch=$(dpkg --print-architecture)] http://packages.ros.org/ros2/ubuntu $(lsb_release -cs) main" > /etc/apt/sources.list.d/ros2-latest.list'
  • Install ROS 2 Foxy Fitzroy Desktop

    • First, make sure your Debian package index is up-to-date,

      sudo apt update
    • Install Ros2 Desktop full:

      sudo apt install ros-foxy-desktop
  • Environment Setup

    • To use ROS2 in your terminal source the ROS2 installation,

      source /opt/ros/foxy/setup.bash
    • Install Argcomplete: ROS 2 command line tools use argcomplete to autocompletion. So if you want autocompletion, installing argcomplete is necessary.

      sudo apt install -y python3-pip
      pip3 install -U argcomplete
  • Install Colcon

    sudo apt-get install python3-colcon-common-extensions

2. Pip Installation

sudo apt install python3-pip

3. Digi-Xbee library Installation

pip3 install digi-xbee

4. Miscellaneous Py3 dependencies

pip3 install cbor2 pyyaml 

Bugs and feature requests

Have a bug or a feature request? Search for existing and closed issues, if your problem or idea is not addressed yet, please open a new issue.

Creators

@Sudharsan : www.iamsudharsan.com

Thank you for visiting my Repo, have a great day!

About

ROSXBee is a ROS2 package to interface and expose XBee Device using ROS2 packaging as a wrapper around the Digi-XBee python API library.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages