Currently in Beta - Submission environment
Created by: Matthew Romero Moore, Jakob Daugherty, and Kevin Free
- Raspberry Pi
- Pi SD Card with Debian installed
- Instructions to install Debian from an image can be found here
- iRobot Roomba and connecting cables
- Make sure that your pi is working and connected to the internet.
- More detailed instructions on configuring your pi can be found here
- Install the ROS working environment for robot integration
- Follow the instructions provided here to install ROS on your pi
- Make sure you install the Desktop version to enable robot integration.
- Configure AWSIoT services for new thing (your pi)
- For this you must have an AWS account. You can sign up for one here
- You must also have a Cognito Pool ID. Instructions on setting up AWS Cognito and creating a pool ID can be found here
- Follow the instructions provided by Amazon here to get started with AWSIoT.
- Additionally, you must obtain the generic AWS rootCA certificate when downloading your Thing's individual certificate.
- Make sure to save the following items when configuring AWSIoT
- Thing Endpoint
- Thing Certificate and Public/Private key pair
- Thing Policy name
- Your AWS Region (e.g., us-west-2)
- Your AWS Cognito Pool ID
- Install and Configure Mosquitto
- Instructions for installing Mosquitto on your pi can be found here
- Note: In these instructions, references to an AWS EC-2 instance should be replaced with your pi. Also mostly focus on the bridge.conf section, and how to configure MQTT client for connection to AWSIot
- After this step, I would suggest using mosquitto_sub to test your MQTT connection. More detailed information on mosquitto_sub can be found here
- Import and setup catkin_ws
- Copy and paste the catkin_ws folder of this repo, into the home folder for your pi.
- invoke catkin_make and source the setup.bash file.
- You may need to provide your own copies of the create autonomy driver. Source code can be found here
- You may need to provide you own copies of the mqtt_bridge libraries and rosbridge_suite. Source code can be found here
- Install and configure motion
- Instructions for doing so can be found here
To run the standard driver use the following code.
$ cd ~/catkin_ws
$ source devel/setup.bash
$ roslaunch alfred alfred.launch
To run the experimental driver use the following code.
$ cd ~/catkin_ws
$ source devel/setup.bash
$ roslaunch alfred dev-alfred.launch
Note: if the above returns an error, your camera module may need to be enabled using sudo raspi-config
or motion may be running in the background and can be stopped using sudo service motion stop
Open the .xcworkspace file in XCode, and follow the instructions located here