chrisl8 / arlobot Goto Github PK
View Code? Open in Web Editor NEWROS Package for a Parallax ArloBot Robot
Home Page: https://log.voidshipephemeral.space/Arlobot/ArloBot+Build+Index
License: MIT License
ROS Package for a Parallax ArloBot Robot
Home Page: https://log.voidshipephemeral.space/Arlobot/ArloBot+Build+Index
License: MIT License
Create a Wiki page that covers how to test every aspect of this codebase
Hi Chris,
I just followed all your directions to install everything. When I'm trying to get it to start, I'm running into errors. First, when I try the direct2PropSerialTest.sh, it won't send me a stream of i 0; (however it does when I earlier loaded the Simple IDE code into EEPROM).
I get the return as
Activity Board should be sending a stead stream of:
i 0
i 0
etc.
Paste this line into the terminal to get it to start sending sensor data:
For HB-25:
d,0.403000,0.006760,0,0,0,0,0,0.0,0.0,0.0
For DHB-10:
d,0.403000,0.00338,0,0,0,0,0,0.0,0.0,0.0
usage: miniterm.py [-h] [--parity {N,E,O,S,M}] [--rtscts] [--xonxoff]
[--rts RTS] [--dtr DTR] [--ask] [-e] [--encoding CODEC]
[-f NAME] [--eol {CR,LF,CRLF}] [--raw] [--exit-char NUM]
[--menu-char NUM] [-q] [--develop]
[port] [baudrate]
miniterm.py: error: argument baudrate: invalid int value: 'Not'
Later, when I try to run roslaunch arlobot_bringup minimal.launch --screen to begin teleop, I get an this continuous stream of restart errors until I terminate control C.
ROS_MASTER_URI=http://localhost:11311
process[robot_state_publisher-1]: started with pid [7759]
process[arlobot-2]: started with pid [7760]
process[mobile_base_nodelet_manager-3]: started with pid [7761]
process[cmd_vel_mux-4]: started with pid [7769]
process[arlobot_safety-5]: started with pid [7776]
process[arlobot_usbrelay-6]: started with pid [7789]
[ INFO] [1529273155.805748677]: Loading nodelet /cmd_vel_mux of type yocs_cmd_vel_mux/CmdVelMuxNodelet to manager mobile_base_nodelet_manager with the following remappings:
[ INFO] [1529273155.805819798]: /cmd_vel_mux/output -> /mobile_base/commands/velocity
[ INFO] [1529273155.807548546]: waitForService: Service [/mobile_base_nodelet_manager/load_nodelet] has not been advertised, waiting...
Traceback (most recent call last):
File "/home/geist/catkin_ws/src/ArloBot/src/arlobot/arlobot_safety/scripts/arlobot_safety.py", line 7, in <module>
from arlobot_msgs.msg import arloSafety
ImportError: No module named msg
[ INFO] [1529273156.049969370]: Initializing nodelet with 8 worker threads.
[ INFO] [1529273156.057883337]: waitForService: Service [/mobile_base_nodelet_manager/load_nodelet] is now available.
[ INFO] [1529273156.076984243]: CmdVelMux : (re)configured
[arlobot_safety-5] process has died [pid 7776, exit code 1, cmd /home/geist/catkin_ws/src/ArloBot/src/arlobot/arlobot_safety/scripts/arlobot_safety.py __name:=arlobot_safety __log:=/home/geist/.ros/log/938ced34-727a-11e8-9920-4851b7a28da2/arlobot_safety-5.log].
log file: /home/geist/.ros/log/938ced34-727a-11e8-9920-4851b7a28da2/arlobot_safety-5*.log
[arlobot_safety-5] restarting process
process[arlobot_safety-5]: started with pid [7890]
Traceback (most recent call last):
File "/home/geist/catkin_ws/src/ArloBot/src/arlobot/arlobot_safety/scripts/arlobot_safety.py", line 7, in <module>
from arlobot_msgs.msg import arloSafety
ImportError: No module named msg
[arlobot_safety-5] process has died [pid 7890, exit code 1, cmd /home/geist/catkin_ws/src/ArloBot/src/arlobot/arlobot_safety/scripts/arlobot_safety.py __name:=arlobot_safety __log:=/home/geist/.ros/log/938ced34-727a-11e8-9920-4851b7a28da2/arlobot_safety-5.log].
log file: /home/geist/.ros/log/938ced34-727a-11e8-9920-4851b7a28da2/arlobot_safety-5*.log
[arlobot_safety-5] restarting process
process[arlobot_safety-5]: started with pid [7910]
Traceback (most recent call last):
File "/home/geist/catkin_ws/src/ArloBot/src/arlobot/arlobot_safety/scripts/arlobot_safety.py", line 7, in <module>
from arlobot_msgs.msg import arloSafety
ImportError: No module named msg
Traceback (most recent call last):
File "/home/geist/catkin_ws/src/ArloBot/src/arlobot/arlobot_bringup/scripts/propellerbot_node.py", line 38, in <module>
from arlobot_msgs.msg import usbRelayStatus, arloStatus, arloSafety, arloButtons
ImportError: No module named msg
Traceback (most recent call last):
File "/home/geist/catkin_ws/src/ArloBot/src/arlobot/arlobot_usbrelay/scripts/arlobot_usbrelay.py", line 14, in <module>
from arlobot_msgs.msg import usbRelayStatus
ImportError: No module named msg
[arlobot_safety-5] process has died [pid 7910, exit code 1, cmd /home/geist/catkin_ws/src/ArloBot/src/arlobot/arlobot_safety/scripts/arlobot_safety.py __name:=arlobot_safety __log:=/home/geist/.ros/log/938ced34-727a-11e8-9920-4851b7a28da2/arlobot_safety-5.log].
log file: /home/geist/.ros/log/938ced34-727a-11e8-9920-4851b7a28da2/arlobot_safety-5*.log
[arlobot_safety-5] restarting process
process[arlobot_safety-5]: started with pid [7913]
[arlobot-2] process has died [pid 7760, exit code 1, cmd /home/geist/catkin_ws/src/ArloBot/src/arlobot/arlobot_bringup/scripts/propellerbot_node.py --respawnable arlobot/sensor_state:=mobile_base/sensors/core imu/data:=mobile_base/sensors/imu_data imu/raw:=mobile_base/sensors/imu_data_raw __name:=arlobot __log:=/home/geist/.ros/log/938ced34-727a-11e8-9920-4851b7a28da2/arlobot-2.log].
log file: /home/geist/.ros/log/938ced34-727a-11e8-9920-4851b7a28da2/arlobot-2*.log
[arlobot_usbrelay-6] process has died [pid 7789, exit code 1, cmd /home/geist/catkin_ws/src/ArloBot/src/arlobot/arlobot_usbrelay/scripts/arlobot_usbrelay.py __name:=arlobot_usbrelay __log:=/home/geist/.ros/log/938ced34-727a-11e8-9920-4851b7a28da2/arlobot_usbrelay-6.log].
log file: /home/geist/.ros/log/938ced34-727a-11e8-9920-4851b7a28da2/arlobot_usbrelay-6*.log
[arlobot-2] restarting process
process[arlobot-2]: started with pid [7916]
[arlobot_usbrelay-6] restarting process
process[arlobot_usbrelay-6]: started with pid [7917]
Traceback (most recent call last):
File "/home/geist/catkin_ws/src/ArloBot/src/arlobot/arlobot_safety/scripts/arlobot_safety.py", line 7, in <module>
from arlobot_msgs.msg import arloSafety
ImportError: No module named msg
[arlobot_safety-5] process has died [pid 7913, exit code 1, cmd /home/geist/catkin_ws/src/ArloBot/src/arlobot/arlobot_safety/scripts/arlobot_safety.py __name:=arlobot_safety __log:=/home/geist/.ros/log/938ced34-727a-11e8-9920-4851b7a28da2/arlobot_safety-5.log].
log file: /home/geist/.ros/log/938ced34-727a-11e8-9920-4851b7a28da2/arlobot_safety-5*.log
[arlobot_safety-5] restarting process
... and so forth.
I'm really appreciate your time and your work that you have put into this. I'm using a Parallax ArloBot as well and if I could just get the serial communication to work between the bot and my ROS computer, I would be able to continue with my research.
Thanks so much,
Dat
The ROS documentation is so lacking and I'm trying to get up to speed as quickly as possible. Are you willing to tutor me in getting started? I would be thrilled to be able to accomplish what you demonstrated in your arlobot video. I would be happy to compensate you for your time.
You can reach me at dan electricmovement.com
Hi!
First, thank you for your work in this ROS library for the Arlo. It certainly catalysed our purchase. :)
However, I'm having an issue at the moment. I was able to install the packages just fine and when I use the following bash script I successfully get messages about the robot state:
cd ~/catkin_ws/src/ArloBot/scripts/
./direct2PropSerialTest.sh
However, upon running ./startRobot.sh I get the following error:
(node:17931) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): Not found.
UsbRelay State collection failed with code: 1
UsbRelay State collection failed with code: 1
UsbRelay State collection failed with code: 1
Do you have any suggestions for this? Really hope I can get this package up and working, it would help my research a lot !
Happy Holidays,
Henry C.
Hi Chris
Nice to see your work, I have checked your embedded interfacing code to ROS. In that code i have a doubt regarding speedRight and speedLeft used in the odometry calculation. What is the value and where is it changing? i have seen its value always zero
Thanks
Lentin
SBC: Rpi 4B/4GB
OS: Ubuntu focal server/gnome desktop
ROS: Noetic
Steps to Reproduce Issue:
Bootup SBC Rpi 4B to run the Arlobot Web Controller.
Expected Behavior:
The Arlobot Web Controller to appear on Ubuntu gnome desktop.
Observed Behavior:
The Arlobot Web Controller does not appear on Ubuntu gnome desktop.
Additional Information:
In "personalDataForBehavior.json"
"launchBrowser": true,
I can manually launch the Mozilla Firefox browser and navigate to the SBC ip:8080 and display the Arlobt Web Controller on the desktop.
Tom C
found this
https://github.com/richardeoin/ftx-prog
with the below command you can stop the powering via pc
sudo ./ftx_prog --cbus 1 Tristate
SBC: Rpi 4B/4G
OS: Ubuntu MATE (focal 20.04)
ROS: Noetic
I presently have my Xbox One paired and connected with the Ubuntu MATE OS.
I had to change "Xbox 360 Wireless Receiver" to "Xbox Wireless Controller" in 'find_xbox_controller.sh' otherwise my Xbox One is not detected.
Running the following results in:
thomas@thomas-desktop:~$ find_xbox_controller.sh
/dev/input/js0
thomas@thomas-desktop:~$ ls -l /dev/input/js*
crw-rw-r--+ 1 root input 13, 0 Jan 17 16:11 /dev/input/js0
Obviously the Xbox One is not using a USB wireless receiver which might cause an issue with the present software?
I used jstest to verify the gamepad hex keycodes and found the following:
Xbox One:
Left joystick vertical axis: 1
Left joystick horizontal axis: 0
Left button: 6
Right trigger; 4
Xbox 360 Wireless Game Controller:
From the opt/ros/noetic/share/teleop_twist_joy/config/xbox.config.yaml file:
Left thumbstick vertical: 1
Left thumbstick horizontal; 0
So both the Xbox One and Xbox 360 joystick (thumbstick) hex keycodes are in agreement.
Left trigger button: 2
Right trigger button: 5
So the Xbox One and Xbox 360 trigger button hex keycodes are not in agreement.
Steps to Duplicate Issue:
Expected Behavior;
According to the Arlobot writeup remote control with the Xbox 360 (Xbox One) gamepad should work as soon as you Start ROS, either with 'start-robot.sh' or with the Web Interface.
Actual Behavior:
No directional or speed control of the Arlobot wheels with the Xbox One left joystick.
Additional Information:
I observe the same behavior when using the Web Interface with ROS running.
There is no wheel response when using the Xbox One gamepad left joystick.
However I can control Arlobot with the Remote Control Panel using the Mouse Cursor so Motor Control is functional.
Suggestions to troubleshoot this issue.
Tom C
I am using a Slamtech A1M8 with my Arlorobot and not the more expensive A3.
Because I am running the A1M8 in place of the A3, I encountered a number of errors, that were easy to correct, when I ran "roslaunch arlobot_ros rplidar.launch". So I compared the rplidar.launch in arlobot_ros with the rplidar.launch in rplidar_ros and made the necessary corrections to the arlobot_ros rplidar.launch:
Once these corrections are incorporated into arlobot_ros rplidar.launch, the A1M8 will function correctly without throwing any pesky errors.
Regards,
TCIII
Required Info:
SBC: Rpi 4B/4GB
OS: Ubuntu 20.04.1
ROS: Noetic
Sensors: Four PING sensors: three forward, one back
RPLidar: Slamtech A1M8
Steps to reproduce issue:
If I attempt to use the "Remote Control" dropdown panel in the Arlobot web controller to move Arlobot forward, with the mouse pointer, the following occurs:
Expected Response:
When controlled from the "Remote Control" dropdown panel in the Arlobot web controller the robot should continually move forward as long as the mouse cursor is in the center of the white circle inside the light gray circle and has been pushed upwards towards the edge of the light gray circle.
Actual behavior:
Moving the small circle to the top of the large circle using the mouse cursor causes the robot wheels to turn forward for about 5 seconds and then stop.
I have to repeatedly keep moving the small circle to the top edge of the large circle to get the robot wheels moving again every time the wheels stop after about 5 seconds.
Issue:
The Arlobot software presently only supports the MS Xbox 360 gamepad which requires a proprietary USB wireless receiver (WiFi) and is no longer in production.
Solution:
The Xbox One and One/S and the PS4/5 gamepads all use Bluetooth and are compatible with all Laptops and SBCs like the Rpi and Nano.
Provide an alternate Arlobot Bluetooth interface for newer Xbox and PS gamepads.
TCIII
Create a new Wiki covering:
SBC: Rpi 4B/4G
OS: Ubuntu MATE (focal 20.04)
ROS: Noetic
Steps to Duplicate Issue:
Expected Behavior;
A light display on the Flora NeoPixel Ring
Actual Behavior:
No display visible on the Flora NeoPixel Ring and ROS stopped and went back to Start ROS
Additional Observations:
Suggestions on how to troubleshoot this issue?
Regards,
Tom C
Hello,
I am trying to follow your ArloBot projecte,because few months ago I bought it. I'll try to manage it with ROS but with Arduino board. And it was successfull but I was stuck on the odometry.
Now, I am trying to undertsand a little bit your project to execut this with propeller board to after try to execute the same with Arduino.
I follow all your README.md
At this point I can not continue because it apperas the following error: (I have the computer connected to the propeller board and the main and motor interruptors ON and propeller switch at position 2)
pau@pau-Lenovo-Legion-Y730-15ICH:~/catkin_ws/src/ArloBot/scripts$ ./PropellerSerialTest.sh
Checking all configured devices to make sure they are available, attempt 1
Checking Activity Board . . .
/home/pau/catkin_ws/src/ArloBot/scripts/find_ActivityBoard.sh: línea 20: node: orden no encontrada
/home/pau/catkin_ws/src/ArloBot/scripts/find_ActivityBoard.sh: línea 26: node: orden no encontrada
Activity Board missing! If this is a test install with no Activity Board, edit /home/pau/.arlobot/personalDataForBehavior.json and set 'hasActivityBoard' to false
ERROR: Hardware failed to come on line:
I hope somebody could help me with this error.
I amb very interested on understand this project.
Best Regards,
Pau
a number of the nodejs packages seem to have gotten themselves broken and require the latest NaN.js.. fixed by going into the node folder ~/catkin_ws/src/Metatron/node/
nvm stable
npm install nan
then npm install
Also found I had to find every instance of contextify mentioned (even in the node modules folders of the node modules installed) and change to the latest version (for log.io I had to actually install contextify globally)
ngrok needed to be updated to 0.2.2 to allow it to build as well as to get log.io working (i think.. it was really late, and my notes got a bit.. er, scrawley there at the end)
figured I'd share where I am so far in case anyone else runs into it. Knowing how nodejs packages work.. they probably will.
current issue seems to be after I get the startRobot.sh to go, I start ros (the running log states ROS successfully started, but the upper left indicator sticks at "startROS starting up . . .") remote control screen states it's not connected, and the log streamer keeps cycling that it is resetting a relay and waiting for the PAB to "settle down" though I has no relay. heh, will post another issue if/when I track that one down.
thanks by the way, for sharing all of your work on this so far, I'd still be muddling around the ROS tutorials deciding if I wanted to start getting a bot together if I hadn't ran across this.
SBC: Rpi 4B/$GB
OS: Ubuntu focal server/gnome desktop
ROS: Noetic
Steps to Reproduce Issue:
I just successfully installing the Arlobot/ROS Noetic software on my Rpi 4B/4GB and tried to execute 'pm2 save' to synchronize the current process with the saved list and received the following message:
ubuntu@ubuntu:~$ pm2 save
Command 'pm2' not found, did you mean:
command 'pmc' from deb linuxptp (1.9.2-1)
command 'pmi' from deb powermanagement-interface (0.3.21)
command 'pms' from deb pms (0.42-1build4)
command 'pmw' from deb pmw (1:4.30-1)
command 'gm2' from deb gm2 (4:10.0-1ubuntu2)
command 'pm' from deb powerman (2.3.5-1build2)
command 'wm2' from deb wm2 (4+svn20090216-4build1)
command 'pom2' from deb libpod-pom-perl (2.01-3)
Try: sudo apt install
Tom C
When I run the following on the Rpi Ubuntu desktop terminals I am not getting Lidar scan data in the rviz display window even after changing "map" to "odom":
roslaunch arlobot_ros minimal.launch
roslaunch arlobot_ros rplidar.launch
roslaunch arlobot_ros view_navigation.launch
I do get the red/green axes displayed in the center of the grid, but no Laser scan data is displayed.
Fixed Frame odom
Scan
Status: Error
Topics
Points
Transform [sender=unknown_publisher] For frame [rplidar] : Frame[rplidar] does not exist/scan
When I run the following on the Rpi Ubuntu desktop terminals I am getting Lidar scan data in the rviz display window when I change "map" to "rplidar":
roslaunch arlobot_ros minimal.launch
roslaunch arlobot_ros rplidar.launch
roslaunch arlobot_ros view_navigation.launch
I get a white dot displayed in the center of the grid along with the laser data displayed around it.
Fixed Frame rplidar
Scan
Status: Ok
Points
Transform [sender=unknown_publisher]
Transform Ok
Topic xxxx messages received (xxxx =increasing messages received)
I have verified that the following lines in my ~/.arlobot/personalDataForBehavior.json look like this:
"hasASUSXtion": false,
"hasKinect": false,
"active3dCamera": "None",
"hasXV11": false,
"hasScanseSweep": false,
"hasRPLIDAR": true,
"rplidarBaudrate": 115200,
"scanTopicSource": "rplidar",
"hasBeenEdited": true
Comments?
SBC: Rpi 4B/4GB
OS: Ubuntu 20.04.3
ROS: Noetic
Slam Toolbox version: (1.5.6-1focal.20210922.203113) which is the latest
rviz version: 1.14.10
When running the roslaunch commands in "Basic TeleOp with 3D sensor use" I received this error when running "roslaunch arlobot_ros view_navigation.launch" from the Ubuntu Desktop:
rviz (rviz/rviz)
ROS_MASTER_URI=http://localhost:11311
process[rviz-1]: started with pid [5102]
[ERROR] [1640451452.432491635]: PluginlibFactory: The plugin for class 'slam_toolbox::SlamToolboxPlugin' failed to load. Error: According to the loaded plugin descriptions the class slam_toolbox::SlamToolboxPlugin with base class type rviz::Panel does not exist. Declared types are rviz_plugin_tutorials/Teleop
[rospack] Error: no package given
[librospack]: error while executing command
[rospack] Error: no package given
[librospack]: error while executing command
QXcbClipboard: Unable to receive an event from the clipboard manager in a reasonable time
[rviz-1] process has finished cleanly
log file: /home/thomas/.ros/log/0dcde9bc-65a3-11ec-bd19-0b651bddef40/rviz-1*.log
all processes on machine have died, roslaunch will exit
Rviz did open, but there was no RPLidar scan displayed on the grid.
Suggestions on how to troubleshoot this issue with the Slam Toolbox?
Hi Chis,
First, I can't thank you enough for putting all of this together! You've given all of us a huge jumpstart on creating our own arlobots.
I'm getting an error "Error: Cannot find module 'roslib'" when I try to run the StartRobot.sh script.
I am running Ubuntu 14.04 and I just did a fresh install a couple of days ago. I used your install script to install ROS and your packages.
Any idea what I'm doing wrong?
Hi,
i am interested in exploring your project. But the install script doesn't seem to work.
Of course there is the option to just manually clone, but i wanted to let you know about this.
I am running Ubuntu Mate 20.04 and am using ROS noetic on my machine allready
Let me know if you need further informations. The following is the Terminal output of your script:
You will be asked for your password for running commands as root!
[Checking the Ubuntu version]
Ubuntu focal found
[Updating Root CA Certificates from Ubuntu]
[sudo] password for tristan:
Updating certificates in /etc/ssl/certs...
0 added, 0 removed; done.
Running hooks in /etc/ca-certificates/update.d...
done.
done.
[Updating & upgrading all existing Ubuntu packages]
Hit:1 http://de.archive.ubuntu.com/ubuntu focal InRelease
Hit:2 http://de.archive.ubuntu.com/ubuntu focal-updates InRelease
Hit:3 http://de.archive.ubuntu.com/ubuntu focal-backports InRelease
Get:4 https://deb.opera.com/opera-stable stable InRelease [2.591 B]
Get:5 http://security.ubuntu.com/ubuntu focal-security InRelease [107 kB]
Get:6 https://deb.opera.com/opera-stable stable/non-free amd64 Packages [1.876 B]
Get:7 http://security.ubuntu.com/ubuntu focal-security/multiverse amd64 Packages [1.256 B]
Hit:8 http://packages.ros.org/ros/ubuntu focal InRelease
Fetched 113 kB in 1s (81,4 kB/s)
Reading package lists... Done
Building dependency tree
Reading state information... Done
3 packages can be upgraded. Run 'apt list --upgradable' to see them.
W: Target Packages (non-free/binary-amd64/Packages) is configured multiple times in /etc/apt/sources.list:58 and /etc/apt/sources.list.d/opera-stable.list:4
W: Target Packages (non-free/binary-i386/Packages) is configured multiple times in /etc/apt/sources.list:58 and /etc/apt/sources.list.d/opera-stable.list:4
W: Target Packages (non-free/binary-all/Packages) is configured multiple times in /etc/apt/sources.list:58 and /etc/apt/sources.list.d/opera-stable.list:4
W: Target Translations (non-free/i18n/Translation-en_US) is configured multiple times in /etc/apt/sources.list:58 and /etc/apt/sources.list.d/opera-stable.list:4
W: Target Translations (non-free/i18n/Translation-en) is configured multiple times in /etc/apt/sources.list:58 and /etc/apt/sources.list.d/opera-stable.list:4
W: Target CNF (non-free/cnf/Commands-amd64) is configured multiple times in /etc/apt/sources.list:58 and /etc/apt/sources.list.d/opera-stable.list:4
W: Target CNF (non-free/cnf/Commands-all) is configured multiple times in /etc/apt/sources.list:58 and /etc/apt/sources.list.d/opera-stable.list:4
W: Target Packages (non-free/binary-amd64/Packages) is configured multiple times in /etc/apt/sources.list:58 and /etc/apt/sources.list.d/opera-stable.list:4
W: Target Packages (non-free/binary-i386/Packages) is configured multiple times in /etc/apt/sources.list:58 and /etc/apt/sources.list.d/opera-stable.list:4
W: Target Packages (non-free/binary-all/Packages) is configured multiple times in /etc/apt/sources.list:58 and /etc/apt/sources.list.d/opera-stable.list:4
W: Target Translations (non-free/i18n/Translation-en_US) is configured multiple times in /etc/apt/sources.list:58 and /etc/apt/sources.list.d/opera-stable.list:4
W: Target Translations (non-free/i18n/Translation-en) is configured multiple times in /etc/apt/sources.list:58 and /etc/apt/sources.list.d/opera-stable.list:4
W: Target CNF (non-free/cnf/Commands-amd64) is configured multiple times in /etc/apt/sources.list:58 and /etc/apt/sources.list.d/opera-stable.list:4
W: Target CNF (non-free/cnf/Commands-all) is configured multiple times in /etc/apt/sources.list:58 and /etc/apt/sources.list.d/opera-stable.list:4
Reading package lists... Done
Building dependency tree
Reading state information... Done
Calculating upgrade... Done
The following packages will be upgraded:
python3-distupgrade ubuntu-release-upgrader-core ubuntu-release-upgrader-gtk
3 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Need to get 137 kB of archives.
After this operation, 0 B of additional disk space will be used.
Get:1 http://de.archive.ubuntu.com/ubuntu focal-updates/main amd64 ubuntu-release-upgrader-gtk all 1:20.04.28 [9.364 B]
Get:2 http://de.archive.ubuntu.com/ubuntu focal-updates/main amd64 ubuntu-release-upgrader-core all 1:20.04.28 [23,7 kB]
Get:3 http://de.archive.ubuntu.com/ubuntu focal-updates/main amd64 python3-distupgrade all 1:20.04.28 [104 kB]
Fetched 137 kB in 0s (746 kB/s)
(Reading database ... 340452 files and directories currently installed.)
Preparing to unpack .../ubuntu-release-upgrader-gtk_1%3a20.04.28_all.deb ...
Unpacking ubuntu-release-upgrader-gtk (1:20.04.28) over (1:20.04.25) ...
Preparing to unpack .../ubuntu-release-upgrader-core_1%3a20.04.28_all.deb ...
Unpacking ubuntu-release-upgrader-core (1:20.04.28) over (1:20.04.25) ...
Preparing to unpack .../python3-distupgrade_1%3a20.04.28_all.deb ...
Unpacking python3-distupgrade (1:20.04.28) over (1:20.04.25) ...
Setting up python3-distupgrade (1:20.04.28) ...
Setting up ubuntu-release-upgrader-core (1:20.04.28) ...
Setting up ubuntu-release-upgrader-gtk (1:20.04.28) ...
Processing triggers for man-db (2.9.1-1) ...
[Installing additional Ubuntu and ROS Packages for Arlo]
This runs every time, in case new packages were added.
Reading package lists... Done
Building dependency tree
Reading state information... Done
git is already the newest version (1:2.25.1-1ubuntu3).
ros-noetic-joy is already the newest version (1.14.0-1focal.20200929.230623).
ros-noetic-move-base is already the newest version (1.17.1-1focal.20200930.014742).
ros-noetic-navigation is already the newest version (1.17.1-1focal.20200930.015946).
ros-noetic-rosbridge-server is already the newest version (0.11.10-1focal.20200930.001520).
ros-noetic-tf2-tools is already the newest version (0.7.5-1focal.20200930.011506).
ros-noetic-twist-mux is already the newest version (3.1.1-1focal.20200930.012057).
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
[Cloning or Updating git repositories]
ArloBot repository
Already on 'noetic'
Your branch is up to date with 'origin/noetic'.
remote: Enumerating objects: 5, done.
remote: Counting objects: 100% (5/5), done.
remote: Total 5 (delta 4), reused 5 (delta 4), pack-reused 0
Unpacking objects: 100% (5/5), 1.09 KiB | 33.00 KiB/s, done.
From https://github.com/chrisl8/ArloBot
Slam Toolbox
There is a package for this, but the Github Repo is usually much more up to date.
Already on 'noetic-devel'
Your branch is up to date with 'origin/noetic-devel'.
Already up to date.
TEB Local Planner Tutorials
The TEB Local Planner is installed via apt, but there is no noetic package for the tutorials.
The tutorials are not required, but handy for reference.
Already on 'noetic-devel'
Your branch is up to date with 'origin/noetic-devel'.
Already up to date.
[Installing dependencies for ROS build-from-source packages.]
/dev/fd/63: line 601: rosdep: command not found
INSTALL FAILURE!!!
The Install Script has failed. Please investigate the cause, correct, and run again before proceeding.
If this was a transient error, such as a network failure connecting to something, you may just need to run it again.
If this persists, please file an issue against the repository at https://github.com/chrisl8/ArloBot/issues
Robot would start moving in circles, all by itself, with no command being sent.
The readings from the PING)) sensors are not updating.
The haltdistance and slowing down distance I have set both to {10,10,10,10}
Is this the right way to fill the array, even though my ping)) are connected to pins 8-11, or would I need to fill it:
{0,0,0,0,0,0,0,0,10,10,10,10}
??
Any help would be welcomed
I am trying to flash new Arlobot code that is provided by chrisl8 from melodic branch.
When I build ROSinterfaceForArloBot.C by SimpleIDE I got the build Failed and get this message : Check source for bad function call or global variable name '_fdserial_rxCount'
It seems like I need more library file tha arlodrive or related dhb_10 library.
This is the whole message from Simple IDE
Project Directory: /home/sk/catkin_ws/src/ArloBot/PropellerCodeForArloBot/
SimpleIDE Version 1.0.1
/home/sk/Documents/SimpleIDE/Learn/Simple Libraries/
/home/sk/Documents/SimpleIDE/ Updated on: 2021-09-07
propeller-elf-gcc -v GCC 4.6.1 (propellergcc_v1_0_0_2411)
propeller-elf-gcc -I . -L . -I../../../../.arlobot/ -I /home/sk/Documents/SimpleIDE/Learn/Simple Libraries/Text Devices/libfdserial -L /home/sk/Documents/SimpleIDE/Learn/Simple Libraries/Text Devices/libfdserial/cmm/ -I /home/sk/Documents/SimpleIDE/Learn/Simple Libraries/Text Devices/libsimpletext -L /home/sk/Documents/SimpleIDE/Learn/Simple Libraries/Text Devices/libsimpletext/cmm/ -I /home/sk/Documents/SimpleIDE/Learn/Simple Libraries/Utility/libsimpletools -L /home/sk/Documents/SimpleIDE/Learn/Simple Libraries/Utility/libsimpletools/cmm/ -I /home/sk/Documents/SimpleIDE/Learn/Simple Libraries/Protocol/libsimplei2c -L /home/sk/Documents/SimpleIDE/Learn/Simple Libraries/Protocol/libsimplei2c/cmm/ -I /home/sk/Documents/SimpleIDE/Learn/Simple Libraries/Sensor/libping -L /home/sk/Documents/SimpleIDE/Learn/Simple Libraries/Sensor/libping/cmm/ -I /home/sk/Documents/SimpleIDE/Learn/Simple Libraries/Convert/libadcDCpropab -L /home/sk/Documents/SimpleIDE/Learn/Simple Libraries/Convert/libadcDCpropab/cmm/ -I /home/sk/Documents/SimpleIDE/Learn/Simple Libraries/Robotics/Arlo/libarlodrive -L /home/sk/Documents/SimpleIDE/Learn/Simple Libraries/Robotics/Arlo/libarlodrive/cmm/ -o cmm/ROSInterfaceForArloBot.elf -Os -mcmm -m32bit-doubles -fno-exceptions -std=c99 -ffunction-sections -fdata-sections -Wl,--gc-sections ROSInterfaceForArloBot.c -lm -lfdserial -lsimpletext -lsimpletools -lsimplei2c -lping -ladcDCpropab -larlodrive -lm -lfdserial -lsimpletext -lsimpletools -lsimplei2c -lping -ladcDCpropab -lm -lfdserial -lsimpletext -lsimpletools -lsimplei2c -lping -lm -lfdserial -lsimpletext -lsimpletools -lsimplei2c -lm -lfdserial -lsimpletext -lsimpletools -lm -lfdserial -lsimpletext -lm -lfdserial -lm
In file included from ROSInterfaceForArloBot.c:35:0:
../../../../.arlobot/per_robot_settings_for_propeller_c_code.h:131:5: warning: excess elements in array initializer [enabled by default]
../../../../.arlobot/per_robot_settings_for_propeller_c_code.h:131:5: warning: (near initialization for 'IRstartSlowDownDistance') [enabled by default]
../../../../.arlobot/per_robot_settings_for_propeller_c_code.h:131:5: warning: excess elements in array initializer [enabled by default]
../../../../.arlobot/per_robot_settings_for_propeller_c_code.h:131:5: warning: (near initialization for 'IRstartSlowDownDistance') [enabled by default]
../../../../.arlobot/per_robot_settings_for_propeller_c_code.h:131:5: warning: excess elements in array initializer [enabled by default]
../../../../.arlobot/per_robot_settings_for_propeller_c_code.h:131:5: warning: (near initialization for 'IRstartSlowDownDistance') [enabled by default]
../../../../.arlobot/per_robot_settings_for_propeller_c_code.h:131:5: warning: excess elements in array initializer [enabled by default]
../../../../.arlobot/per_robot_settings_for_propeller_c_code.h:131:5: warning: (near initialization for 'IRstartSlowDownDistance') [enabled by default]
../../../../.arlobot/per_robot_settings_for_propeller_c_code.h:131:5: warning: excess elements in array initializer [enabled by default]
../../../../.arlobot/per_robot_settings_for_propeller_c_code.h:131:5: warning: (near initialization for 'IRstartSlowDownDistance') [enabled by default]
../../../../.arlobot/per_robot_settings_for_propeller_c_code.h:131:5: warning: excess elements in array initializer [enabled by default]
../../../../.arlobot/per_robot_settings_for_propeller_c_code.h:131:5: warning: (near initialization for 'IRstartSlowDownDistance') [enabled by default]
../../../../.arlobot/per_robot_settings_for_propeller_c_code.h:131:5: warning: excess elements in array initializer [enabled by default]
../../../../.arlobot/per_robot_settings_for_propeller_c_code.h:131:5: warning: (near initialization for 'IRstartSlowDownDistance') [enabled by default]
../../../../.arlobot/per_robot_settings_for_propeller_c_code.h:131:5: warning: excess elements in array initializer [enabled by default]
../../../../.arlobot/per_robot_settings_for_propeller_c_code.h:131:5: warning: (near initialization for 'IRstartSlowDownDistance') [enabled by default]
ROSInterfaceForArloBot.c:153:1: warning: excess elements in array initializer [enabled by default]
ROSInterfaceForArloBot.c:153:1: warning: (near initialization for 'irArray') [enabled by default]
/home/sk/Documents/SimpleIDE/Learn/Simple Libraries/Robotics/Arlo/libarlodrive/cmm//libarlodrive.a(drive_config.o): In function _dhb10_com': (.text+0x58): undefined reference to
_fdserial_rxCount'
collect2: ld returned 1 exit status
Done. Build Failed!
Check source for bad function call or global variable name `_fdserial_rxCount'
Please let me know how I can solve this problem
Thank you
Currently even if you fork the repo, if you run the install script it will clone from this repository.
People could more easily fork, update and test their own versions if the install script could pull from forked repositories.
I have used both the Ubuntu MATE (focal 20.04) desktop and the Ubuntu focal server/gnome desktop and have found that the combination of the Ubuntu focal server/gnome desktop is a clunky compromise compared to the Ubuntu MATE desktop.
The Ubuntu server/gnome desktop startup is long compared to the Ubuntu MATE desktop startup and there is no logon requirement with the Ubuntu MATE desktop like there is with the Ubuntu server/gnome desktop.
For some reason the Ubuntu server/gnome desktop will hiccup and display graphic artifacts until I move the mouse pointer around and then the display recovers. In contrast the Ubuntu MATE desktop is stable and artifact free.
The only drawback with using the Ubuntu MATE desktop OS with the Rpi SBCs is the lack of a built-in VNC app like vino in the gnome desktop. There are guides to install a VNC like TigerVNC on the MATE desktop, but the process involves a lot of flag waving and can be tricky for even intermediate programmers/users.
Comments?
Even if the user has disabled monitoring plugged in status or Mycroft, or the "Master relay", they still show up on the web interface.
These bits should be hidden if disabled, as it is likely that I am the only person on the planet who ever uses them, and now even I am not using some of them anymore.
Hi, I have a working environment on HB25. then, when I change to DHB-10 board my current indigo ROS failed to move my robot.
At the end of the install process it ask me to log into github, I log in and it say's "Repository not found" and then "INSTALL FAILURE".
I get this error when reaching [Grabbing dependencies for node packages] I tested that on 2 laptops with the same error while using quick install method
bash <(wget -qO- --no-cache https://raw.githubusercontent.com/chrisl8/ArloBot/kinetic/setup-kinetic.sh)
[Initializing the required Node version]
This is the version I'm developing with now, so stick with it.
v8.4.0 is already installed.
Now using node v8.4.0 (npm v5.3.0)
stable -> 8.4.0 (-> v8.4.0)
default -> 8.4.0 (-> v8.4.0)
[Grabbing dependencies for node packages]
npm WARN deprecated [email protected]: Versions of the jquery npm package older than 1.9.0 are patched versions that don't work in web browsers. Please upgrade to >=1.11.0.
npm WARN deprecated [email protected]: connect 2.x series is deprecated
/home/ros/.nvm/versions/node/v8.4.0/bin/log.io-server -> /home/ros/.nvm/versions/node/v8.4.0/lib/node_modules/log.io/bin/log.io-server
/home/ros/.nvm/versions/node/v8.4.0/bin/log.io-harvester -> /home/ros/.nvm/versions/node/v8.4.0/lib/node_modules/log.io/bin/log.io-harvester
> [email protected] install /home/ros/.nvm/versions/node/v8.4.0/lib/node_modules/log.io/node_modules/contextify
> node-gyp rebuild
make: Entering directory '/home/ros/.nvm/versions/node/v8.4.0/lib/node_modules/log.io/node_modules/contextify/build'
CXX(target) Release/obj.target/contextify/src/contextify.o
../src/contextify.cc: In static member function ‘static v8::Local<v8::Context> ContextWrap::createV8Context(v8::Local<v8::Object>)’:
../src/contextify.cc:131:68: warning: ‘v8::Local<v8::Object> v8::Function::NewInstance() const’ is deprecated: Use maybe version [-Wdeprecated-declarations]
Local<Object> wrapper = Nan::New(constructor)->NewInstance();
^
In file included from /home/ros/.node-gyp/8.4.0/include/node/v8.h:26:0,
from /home/ros/.node-gyp/8.4.0/include/node/node.h:63,
from ../src/contextify.cc:1:
/home/ros/.node-gyp/8.4.0/include/node/v8.h:3792:52: note: declared here
V8_DEPRECATED("Use maybe version", Local<Object> NewInstance() const);
^
/home/ros/.node-gyp/8.4.0/include/node/v8config.h:329:3: note: in definition of macro ‘V8_DEPRECATED’
declarator __attribute__((deprecated(message)))
^
../src/contextify.cc:150:16: error: ‘class v8::ObjectTemplate’ has no member named ‘SetAccessCheckCallbacks’
otmpl->SetAccessCheckCallbacks(GlobalPropertyNamedAccessCheck,
^
../src/contextify.cc: In static member function ‘static void ContextWrap::GlobalPropertyGetter(v8::Local<v8::String>, const Nan::PropertyCallbackInfo<v8::Value>&)’:
../src/contextify.cc:182:80: warning: ‘v8::Local<v8::Value> v8::Object::GetRealNamedProperty(v8::Local<v8::String>)’ is deprecated: Use maybe version [-Wdeprecated-declarations]
Local<Value> rv = Nan::New(ctx->sandbox)->GetRealNamedProperty(property);
^
In file included from /home/ros/.node-gyp/8.4.0/include/node/v8.h:26:0,
from /home/ros/.node-gyp/8.4.0/include/node/node.h:63,
from ../src/contextify.cc:1:
/home/ros/.node-gyp/8.4.0/include/node/v8.h:3345:30: note: declared here
Local<Value> GetRealNamedProperty(Local<String> key));
^
/home/ros/.node-gyp/8.4.0/include/node/v8config.h:329:3: note: in definition of macro ‘V8_DEPRECATED’
declarator __attribute__((deprecated(message)))
^
../src/contextify.cc: In static member function ‘static void ContextWrap::GlobalPropertyQuery(v8::Local<v8::String>, const Nan::PropertyCallbackInfo<v8::Integer>&)’:
../src/contextify.cc:209:67: warning: ‘v8::Local<v8::Value> v8::Object::GetRealNamedProperty(v8::Local<v8::String>)’ is deprecated: Use maybe version [-Wdeprecated-declarations]
if (!Nan::New(ctx->sandbox)->GetRealNamedProperty(property).IsEmpty() ||
^
In file included from /home/ros/.node-gyp/8.4.0/include/node/v8.h:26:0,
from /home/ros/.node-gyp/8.4.0/include/node/node.h:63,
from ../src/contextify.cc:1:
/home/ros/.node-gyp/8.4.0/include/node/v8.h:3345:30: note: declared here
Local<Value> GetRealNamedProperty(Local<String> key));
^
/home/ros/.node-gyp/8.4.0/include/node/v8config.h:329:3: note: in definition of macro ‘V8_DEPRECATED’
declarator __attribute__((deprecated(message)))
^
../src/contextify.cc:210:71: warning: ‘v8::Local<v8::Value> v8::Object::GetRealNamedProperty(v8::Local<v8::String>)’ is deprecated: Use maybe version [-Wdeprecated-declarations]
!Nan::New(ctx->proxyGlobal)->GetRealNamedProperty(property).IsEmpty()) {
^
In file included from /home/ros/.node-gyp/8.4.0/include/node/v8.h:26:0,
from /home/ros/.node-gyp/8.4.0/include/node/node.h:63,
from ../src/contextify.cc:1:
/home/ros/.node-gyp/8.4.0/include/node/v8.h:3345:30: note: declared here
Local<Value> GetRealNamedProperty(Local<String> key));
^
/home/ros/.node-gyp/8.4.0/include/node/v8config.h:329:3: note: in definition of macro ‘V8_DEPRECATED’
declarator __attribute__((deprecated(message)))
^
contextify.target.mk:95: recipe for target 'Release/obj.target/contextify/src/contextify.o' failed
make: *** [Release/obj.target/contextify/src/contextify.o] Error 1
make: Leaving directory '/home/ros/.nvm/versions/node/v8.4.0/lib/node_modules/log.io/node_modules/contextify/build'
gyp ERR! build error
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack at ChildProcess.onExit (/home/ros/.nvm/versions/node/v8.4.0/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:258:23)
gyp ERR! stack at emitTwo (events.js:125:13)
gyp ERR! stack at ChildProcess.emit (events.js:213:7)
gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:200:12)
gyp ERR! System Linux 4.10.0-37-generic
gyp ERR! command "/home/ros/.nvm/versions/node/v8.4.0/bin/node" "/home/ros/.nvm/versions/node/v8.4.0/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /home/ros/.nvm/versions/node/v8.4.0/lib/node_modules/log.io/node_modules/contextify
gyp ERR! node -v v8.4.0
gyp ERR! node-gyp -v v3.6.2
gyp ERR! not ok
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! [email protected] install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the [email protected] install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /home/ros/.npm/_logs/2017-10-28T20_18_15_919Z-debug.log
You will get some errors here. Some are important, some are not.
So far I know the following errors are UNimportant:
'fatal error: libudev.h: No such file or directory'
'Skipping failed optional dependency /chokidar/fsevents'
yarn install v1.2.1
[1/4] Resolving packages...
success Already up-to-date.
Done in 0.36s.
npm WARN [email protected] requires a peer of rxjs@^5.0.1 but none was installed.
npm ERR! Cannot read property '0' of undefined
npm ERR! A complete log of this run can be found in:
npm ERR! /home/ros/.npm/_logs/2017-10-28T20_18_22_021Z-debug.log
> [email protected] tsc /home/ros/catkin_ws/src/ArloBot/website
> tsc
[Enable non-root use of Bluetooth 4.0.]
[Updating lcars CSS Framework repo]
Already up-to-date.
[Setting up Parallax SimpleIDE for putting code on Activity Board.]
--2017-10-28 22:18:30-- https://web.archive.org/web/20161005174013/http://downloads.parallax.com/plx/software/side/101rc1/simple-ide_1-0-1-rc1_amd64.deb
Resolving web.archive.org (web.archive.org)... 207.241.225.186
Connecting to web.archive.org (web.archive.org)|207.241.225.186|:443... connected.
Unable to establish SSL connection.
dpkg: error processing archive /tmp/simple-ide_1-0-1-rc1_amd64.deb (--install):
cannot access archive: No such file or directory
Errors were encountered while processing:
/tmp/simple-ide_1-0-1-rc1_amd64.deb
rm: cannot remove '/tmp/simple-ide_1-0-1-rc1_amd64.deb': No such file or directory
[You must Update your SimpleIDE Learn Folder using the instructions here!]
Unescaped left brace in regex is deprecated, passed through in regex; marked by <-- HERE in m/%{ <-- HERE (.*?)}/ at /usr/bin/print line 528.
Error: no such file ":\n\033[0;32mhttp://learn.parallax.com/tutorials/language/propeller-c/propeller-c-set-simpleide/update-your-learn-folder\033[0m\n"
Anytime you want to update ArloBot code from the web you can run this same script again. It will pull down and compile new code without wiping out custom configs in ~/.arlarbot. I run this script myself almost every day.
-----------------------------------
ALL DONE! REBOOT AND START TESTING!
I have a list of tests here: cat /home/ros/catkin_ws/src/ArloBot/manualTests.txt
Look at README.md for testing ideas.
See here for your next step: http://ekpyroticfrood.net/?p=165
Greetings,
I was wondering if the quickstart board mentioned in the installation guide is necessary? When I try to run the ./start-arlobot-only.sh or ./start-robot.sh script I get an error saying there is no quickstart board connected.
Is there a way for me to make the script ignore this, since I don't have a quickstart board?
Kind regards.
Hi,
I was testing with ~/catkin_ws/src/ArloBot/scripts/PropellerSerialTest.sh, and I noticed that when I moved the robot forward with keyboard, the heading number increased from 0 to 2.0 very quickly, then it overflew and jumped back to 0. I would expect the heading to maintain around 0, since the robot moved forward, without any turning. Also, is the unit here in radians? if so, shouldn't it overflow when it reaches pi*2? I also saw "Received ERROR: GOSPD: previous ... new ..." every time when I pressed the keyboard, is that normal?
In Rviz, when I drove the robot forward, the robot actually turned, and suddenly jumped to a new location when overflow happened.
I confirmed that my encoders were working properly with: https://learn.parallax.com/tutorials/robot/arlo/arlo-activity-board-brain/control-arlo-simpleide-terminal. Any ideas?
Thanks!
Playwright works much better with this model.
It would also be good to include some level of automation to allow tests to work on everything from a base install with no robot to a robot with all features enabled easily without a lot of fuss from the operator.
Required Info:
SBC: Rpi 4B/4GB
OS: Ubuntu 20.04.1
ROS: Noetic
Sensors: Four PING sensors: three forward, one back
RPLidar: Slamtech A1M8
Steps to reproduce issue:
After successfully starting ROS using the Arlobot web interface the following occurs when the "Unplug" is moved from No to Yes:
Expected behavior:
"Plugged In" changing from Yes to No
Actual behavior:
"Plugged In" never changes from Yes to No
Additional information:
The Arlobot PAB to HDB-10 interface was validated using the Parallax SimpleIDE and Arlo C library.
The Rpi to PAB interface was validated using "PropellerSerialTest.sh" at which time using "Settings" I was able to toggle Settings: "plugged In: from "No" to "Yes" and back to "No" using "p - toggle Plugged In".
Telemetry output when ROS has finished starting and Unplug No:
Cliff Detected false Floor Obstacle false Safe to Recede true Safe to Proceed true Escaping false
Left Motor Power true Right Motor Power true Laptop Battery 100% Robot Battery Volts 12.0 Robot Battery Low false
Doors Open false
Both the "arlobot_safety.log" and the "ros_out.log" show that a "Unplug requested" was sent.
How should I go about troubleshooting the Arlobot web interface "Unplug" issue?
Is there something I have overlooked?
There is an error with this repository's Renovate configuration that needs to be fixed. As a precaution, Renovate will stop PRs until it is resolved.
Error type: undefined. Note: this is a nested preset so please contact the preset author if you are unable to fix it yourself.
hi,
Env:
kinect (done &worked)
saved map
My issue:
After saving a map, I used this script one by one
on ssh:
./start-robot.sh
./load-map.sh map
workstation:
roslaunch arlobot_rviz_launchers view_navigation.launch --screen
The map loads but the position is not accurate, and when I do a 2D Nav Goal well It moves slow and spins until it gets to his placed goal on rviz window.
looking forward for a response
Hi Chris,
Hope you are doing well. I have a couple questions about the Propeller code.
First, there is a delay of about 0.5 - 1.0 seconds when I use the joystick to drive the base. To see where this may be cropping up, I edited the following line which is around 590 in the ROSInterfaceForArlobotWithDHB-10.c:
//dprint(term, "o\t%.3f\t%.3f\t%.3f\t%.3f\t%.3f\t%.3f\t", X, Y, Heading, gyroHeading, V, Omega);
dprint(term, "o\t%.3f\t%.3f\t%.3f\t%.3f\t%.3f\t%.3f\t", X, Y, Heading, CommandedVelocity, V, Omega);
Thus, the velocity from the DHB-10 feedback, V, is compared to the CommandedVelocity at each time step on the ROS interface by adding a rospylog line to one of the scripts. There is definitely a lag going on there--and I'd like to see what I do to fix it.
The next issue is that when I am driving forward on my joystick, the timeoutCounter frequently becomes higher than the ROStimeout timer and it throws a clearTwistRequest(), resulting in an inconsistent halting of the wheels for 2-10 seconds. This does not happen when I am driving backwards, but it does happen when I send rotate commands, where one wheel or the other is driving forward. I tried commenting out the clearTwistRequest(), but instead of halting the robot becomes uncontrollable for that time period. I think the problem is occurring in the serial buffer, and perhaps some characters throw more errors than others. Do you have suggestions on this before I dig really deep on my own?
Thank you !
Henry C.
Tried to run scripts from manualTests.txt but got an ImportError: No module named msg. Lubuntu 16.04, installed everything by using quick install script.
I am receiving 'could not find a package configuration file provided by "PACKAGE_NAME" with any of the the following names' errors.
I am using Ubuntu 14.04 LTS on VMWare Workstation 12 Pro and ROS Indigo.
I have tried manually installing the packages but eventually i get to a package called "ceres" and can't progress any further.
I have also tried removing and reinstalling ROS Indigo and have not seen any results.
Hello,
I have a problem bringing up arlobot. When I use the command: "roslaunch arlobot_bringup minimal.launch --screen", I get an error saying there is no module named "msg" : "File "/home/pixy/catkin_ws/src/ArloBot/src/arlobot/arlobot_safety/scripts/arlobot_safety.py", line 7, in
from arlobot_msgs.msg import arloSafety
ImportError: No module named msg".
I am using ubuntu 16.04 and have installed everything using your quick install script. My python version is 2.7.12. Arlo was bought as a complete package and was assembled using Parallax guide.
To help prevent the Arlobot robot chassis from collecting dust in some corner of an experimenter's workshop, how about replacing the DHB-10 with a RoboClaw Motor Controller?
There are a number of ROS Nodes written for the RoboClaw Motor Controller and the Basic Micro website has Python control programs available for the Raspberry Pi SBC as well as C++ programs too.
I have the time and resources available to help support such an effort.
Regards,
TCIII
SBC: LattePanda 4GB/64GB
OS: Ubuntu 20.04.3
ROS: Noetic
Motor Controller: DHB-10
Sensors: 4 PING sensors (3 Front/1 Rear)
Wheel encoders: Connected to DHB-10 Motor Controller
Prior to installing the Propeller code to the PAB I used my laptop and SimpleIDE to test the PING and DHB-10 Motor Controller per the Parallax "Arlo with an Activity Board Brain" tutorial. The PBA/DHB-10 configuration passed all of the tutorial tests so I am confident that there are no hardware issues.
I then configured both "per_robot_settings_for_propeller_c_code.h" and "personalDataForBehavior.json" to reflect my Arlobot configuration and successfully downloaded the hardware configuration to the PAB using "install_Propeller_code.sh".
Here is my Sensor Configuration in "per_robot_settings_for_propeller_c_code.h":
// PROXIMITY SENSORS:
// IMPORTANT! This section is very important!
// SETTINGS: Proximity (PING & IR) Sensor count and location:
#define NUMBER_OF_PING_SENSORS 4
#define NUMBER_OF_IR_SENSORS 0
// QUESTION: Do you have PING sensors on the front of your robot?
#define hasFrontPingSensors
#define FIRST_FRONT_PING_SENSOR_NUMBER 0 // Count from 0
// Your sensors need to poll consecutively for each section!
#define HOW_MANY_FRONT_PING_SENSORS 3
// QUESTION: Do you have PING sensors on the back of your robot?
#define hasRearPingSensors
#define FIRST_REAR_PING_SENSOR_NUMBER 3 // Count from 0
#define HOW_MANY_REAR_PING_SENSORS 1
// QUESTION: Sensor Identities:
// Put the sensor number by each label
// Comment out any sensor you do not have
#define FRONT_CENTER_SENSOR 1
// NOTE: IF you comment out the FRONT_CENTER_SENSOR, then ALL Front sensors are
// ignored for escaping! "Left" refers to the ROBOT's left, assuming he faces
// the way he drives "forward"
//#define FRONT_NEAR_LEFT_SENSOR 1
#define FRONT_FAR_LEFT_SENSOR 0
//#define FRONT_NEAR_RIGHT_SENSOR 3
#define FRONT_FAR_RIGHT_SENSOR 2
//#define REAR_FAR_RIGHT_SENSOR 5
//#define REAR_NEAR_RIGHT_SENSOR 6
#define REAR_CENTER_SENSOR 3
Here is the output of "PropellerSerialTest.sh":
thomas@thomas-Default-string:~$ ~/catkin_ws/src/ArloBot/scripts/PropellerSerialTest.sh
Checking all configured devices to make sure they are available, attempt 1
Checking Activity Board . . .
Hardware Check SUCCESS! All devices found.
ArloBot Propeller Serial Interface Test Program
Errors: 0 | Write Delay: ? | Update Delay: ? | Test Sent:?/Rcvd: ?
Main Menu:
t - send Test data | r - Run speed test | i - Interrupt speed test | m - send Move commands | s - Settings | a - mAneuvers | p - Position override | l - Led | q/Esc - Quit
lqUp/Down PgUp/PgDn Home/End(follow)qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqk
xo: (0.40299999713897705, 0.003379999892786145, 1.0, 0, 0, 0, 0, 1) x
xUpdating settings. x
xo: (0.40299999713897705, 0.003379999892786145, 1.0, 0, 0, 0, 0, 1) x
xUpdating settings.
I receive the above display whether I use the CLI or run from the terminal in the Ubuntu Desktop Display.
As can be seen there is no Telemetry/Hardware Status/Settings Header between the Main Menu and the "Updating settings" Window.
Any suggestions as to how to correct this issue will be greatly appreciated.
Regards,
TCIII
per_robot_settings_for_propeller_c_code_TC.zip
personalDataForBehavior_TC.zip
So i've tracked down three things thus far that need to happen in the setup script to allow kinect functionality to work.
im looking at making an add to the setup script to do an lsusb and grep out the entries for the sensors to decide how to proceed, i've got a kinect4w and a regular kinect so i can find those, but no primesense. I can send the entries to you, or you wanna send me what lsusb looks like on your end?
k4win (which near as I can tell won't work) looks like:
Bus 002 Device 005: ID 045e:02bf Microsoft Corp.
Bus 002 Device 004: ID 045e:02be Microsoft Corp.
Bus 002 Device 003: ID 045e:02c2 Microsoft Corp.
(have to put my 360 one back together, then i'll get you what that one looks like, dropped it and broke the support neck.. woops)
Hi,
i wanted to play around with a simulated bot before running my "real" one. It's awesome that you have xacro descriptions for your robot, thanks for that!
I have launched your bot in a gazebo world and the front and rear caster wheels clip through the Groundplane, my guess is that here is no collision defined for the link.
The definition for these wheels in arlo_2stack.urdf.xacro is the same and as expected this clips the ground plane aswell.
Hi,
When i try to launch: nic@ubuntu:~/catkin_ws$ roslaunch arlobot_bringup minimal.launch --screen
This error occurs:
error loading <rosparam> tag: file does not exist [/home/nic/.arlobot/arlobot.yaml] XML is <rosparam command="load" file="$(env HOME)/.arlobot/arlobot.yaml"/> The traceback for the exception was written to the log file
Ive checked the hidden files and .arlobot does not exist. All other folders are created.
When I run start-robot.sh, I get several errors printed to the screen. First the arlobot_goto.py script gets the error 'ImportError: No module named hector_nav_msgs.srv'. Then after initializing the nodelets, I get messages saying that 'No matching device found.... waiting for devices' and 'Invalid device number 1, there are 0 devices connected.' In addition to this the script causes the wheels on the arlobot to rotate, and they don't stop rotating upon killing the script, I have to manually restart the power to the motors.
When starting the web interface with the desktop shortcut, the webpage appears with the repository url as well as stating that no robot is found. When running the start-robot.sh, this screen changes to the actual GUI but after several seconds reverts back to the no robot is found message.
I have already compiled the firmware with SimpleIDE, and have performed the direct2PropSerial.sh script, with both being successful. I'm using the ArloBot kit, and all of the basic ArloBot-provided tests have worked successfully as well. I'm running all of this on the UbiquityRobotics image whch is Ubuntu 16.04 with ROS Kinetic on Rasberri Pi. This is my first time working with the ArloBot, and I'm relatively new with ROS, so I'm not sure if there is something obvious I'm doing wrong. I've attached the messages printing while running robot-startup.sh if that helps at all.
robot-startup.log
SBC: Rpi 4B/4GB
OS: Ubuntu focal server/gnome desktop
ROS: Noetic
Steps to Reproduce Issue:
My present Arlobot configuration is a two stack so I changed "arlobotModel": "default" to "arlo_2stack" and received a 'start-robot.sh' message that "common_arlo_2stack.urdf.xacro" does not exist.
Apparently ROS is looking for a "common_default.urdf.xacro" file that obviously does not exist since it is presently "arlo_2stack.urdf.xacro". Obviously I cannot change "default" to "arlo_2stack.urdf.xarco" and I suspect I need to create a new 'common_thomas.urdf.xacro with:
<!-- ArloBot -->
<xacro:include filename="$(find arlobot_ros)/urdf/arlo_2stack.urdf.xacro"/>?
Workaround:
Change xacro:include filename="$(find arlobot_ros)/urdf/arlo.urdf.xacro"/> to xacro:include filename="$(find arlobot_ros)/urdf/arlo_2stack.urdf.xacro"/>
Tom C
See below.
Currently the strings used for Talk are often silly, which isn't clear to new users.
Replace "fun" speech strings with meaningful phrases.
SBC: Rpi 4B/4GB
OS: Ubuntu 20.04
ROS: Noetic
Steps to Duplicate Issue:
When I attempted to use the SBC's Arlobot Web Controller Navigation Panel or the Arlobot Web Controller Navigation Panel on my PC, after shutting down the SBC's Arlobot Web Controller, to make a map it hung on the statement "Please wait, Loading Slam Toolbox...".
I ran "bash <(wget -qO- --no-cache -o /dev/null https://raw.githubusercontent.com/chrisl8/ArloBot/noetic/setup-noetic.sh)" to make sure that I had the latest updates.
I then tried to launch the Slam Toolbox manually by doing the following:
start-robot.sh
In a new Terminal:
roslaunch arlobot_ros slam_toolbox.launch
Expected Behavior:
The Slam Toolbox to launch without error.
Observed Behavior:
NODES
/
move_base (move_base/move_base)
slam_toolbox (slam_toolbox/async_slam_toolbox_node)
ROS_MASTER_URI=http://localhost:11311
ERROR: cannot launch node of type [slam_toolbox/async_slam_toolbox_node]: Cannot locate node of type [async_slam_toolbox_node] in package [slam_toolbox]. Make sure file exists in package path and permission is set to executable (chmod +x)
process[move_base-2]: started with pid [33833]
[ WARN] [1641936916.995136487]: Timed out waiting for transform from base_footprint to map to become available before running costmap, tf error: canTransform: target_frame map does not exist.. canTransform returned after 0.100661 timeout was 0.1.
[ WARN] [1641936922.030140981]: Timed out waiting for transform from base_footprint to map to become available before running costmap, tf error: canTransform: target_frame map does not exist.. canTransform returned after 0.100514 timeout was 0.1.
How should I troubleshoot this issue?
Both the "slam_toolbox" and the "slam_toobox-msgs" packages are installed in ROS Noetic.
There appears to be a "async_slam_toolbox_node" in "/opt/ros/noetic/lib/slam_toolbox"
Could it be a problem with my urdf file?
I am using the "arlo_2stack.urdf.xacro" in place of the "arlo.urdf.xacro" in the "common_default.urdf.xacro" file.
Running the following sequence of commands on my SBC desktop terminals opens rviz and displays the Lidar scan:
start-robot.sh
roslaunch arlobot_ros view_navigation.launch
Regards,
TCIII
seems that the config files I can see that are asking about it all say false, but the code is still trying to fire the thing up and hanging.
I've commented out the references to the device in
node/public/remote-control.js
lines 1162 -1166
lines 1205 - 1209
that seems to make the web server side at least happy enough to claim it has a connection to ROS (it's still arguing with me about actually sending any commands or the like, baby steps!)
EDIT: link to parallax post
http://forums.parallax.com/discussion/162351/arlo-hardware-activity-bot-software-drive-speed-0-0-ubuntu-and-no-happy-sunset#latest
I am having an issue getting my arlobot to start-up. I previously had my teleop half working (only angular rotation, no vertical movement), but after loading in a code where I changed my sensor configurations to try to fix the issue I started to get this error and teleop will no longer work. Loading in the previous code that half-worked, I still get this issue now when I run roslaunch arlobot_bringup minimal.launch --screen and run the teleop command in another terminal. My new error starts at the Watchdog Timeout Reset line.
NODES
/
arlobot (arlobot_bringup/propellerbot_node.py)
arlobot_safety (arlobot_safety/arlobot_safety.py)
arlobot_usbrelay (arlobot_usbrelay/arlobot_usbrelay.py)
cmd_vel_mux (nodelet/nodelet)
mobile_base_nodelet_manager (nodelet/nodelet)
robot_state_publisher (robot_state_publisher/robot_state_publisher)
auto-starting new master
process[master]: started with pid [17805]
ROS_MASTER_URI=http://localhost:11311
setting /run_id to 97f45e30-7445-11e8-b4d5-4851b7a28da2
process[rosout-1]: started with pid [17828]
started core service [/rosout]
process[robot_state_publisher-2]: started with pid [17846]
process[arlobot-3]: started with pid [17847]
process[mobile_base_nodelet_manager-4]: started with pid [17848]
process[cmd_vel_mux-5]: started with pid [17852]
process[arlobot_safety-6]: started with pid [17866]
process[arlobot_usbrelay-7]: started with pid [17873]
[ INFO] [1529470291.174246437]: Loading nodelet /cmd_vel_mux of type yocs_cmd_vel_mux/CmdVelMuxNodelet to manager mobile_base_nodelet_manager with the following remappings:
[ INFO] [1529470291.174334919]: /cmd_vel_mux/output -> /mobile_base/commands/velocity
[ INFO] [1529470291.181687790]: waitForService: Service [/mobile_base_nodelet_manager/load_nodelet] has not been advertised, waiting...
[ INFO] [1529470291.596911012]: Initializing nodelet with 8 worker threads.
[ INFO] [1529470291.605935223]: waitForService: Service [/mobile_base_nodelet_manager/load_nodelet] is now available.
[ INFO] [1529470291.636239200]: CmdVelMux : (re)configured
[INFO] [1529470292.581021]: Starting with serial port: /dev/ttyUSB0, baud rate: 115200
[INFO] [1529470292.581247]: Starting OdomStationaryBroadcaster
[INFO] [1529470292.581683]: Serial Data Gateway starting . . .
[INFO] [1529470292.582722]: Serial Data Gateway started.
[INFO] [1529470292.582893]: Propellerbot_node has started.
[INFO] [1529470292.611700]: No USB Relay board installed.
[INFO] [1529470314.560246]: Watchdog Timeout Reset initiated
[INFO] [1529470314.560624]: Serial Data Gateway stopping . . .
[INFO] [1529470314.560901]: Stopping serial gateway
[INFO] [1529470314.661388]: Serial Data Gateway stopped.
[INFO] [1529470314.661767]: 5 second pause to let Activity Board settle after serial port reset . . .
Exception in thread Thread-5:
Traceback (most recent call last):
File "/usr/lib/python2.7/threading.py", line 801, in __bootstrap_inner
self.run()
File "/usr/lib/python2.7/threading.py", line 754, in run
self.__target(*self.__args, **self.__kwargs)
File "/home/dat/catkin_ws/src/ArloBot/src/arlobot/arlobot_bringup/scripts/SerialDataGateway.py", line 60, in _Listen
self.ReceivedLineHandler(data)
File "/home/dat/catkin_ws/src/ArloBot/src/arlobot/arlobot_bringup/scripts/propellerbot_node.py", line 159, in _handle_received_line
self._initialize_drive_geometry(line_parts)
File "/home/dat/catkin_ws/src/ArloBot/src/arlobot/arlobot_bringup/scripts/propellerbot_node.py", line 847, in _initialize_drive_geometry
self._write_serial(message)
File "/home/dat/catkin_ws/src/ArloBot/src/arlobot/arlobot_bringup/scripts/propellerbot_node.py", line 738, in _write_serial
self._SerialDataGateway.Write(message)
File "/home/dat/catkin_ws/src/ArloBot/src/arlobot/arlobot_bringup/scripts/SerialDataGateway.py", line 65, in Write
self._Serial.write(data)
File "/usr/lib/python2.7/dist-packages/serial/serialposix.py", line 517, in write
raise portNotOpenError
SerialException: Attempting to use a port that is not open
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.