Comments (17)
I have been modifying and uploading the latest propeller code over the past couple of days keeping an eye out for serial data problems. The only time I have seen problems is when I accidentally have a terminal connected to the serial port when I run roslaunch arlobot_bringup minimal.launch --screen.
Have you made any progress with this issue?
from arlobot.
Hi, I took a long break from this project due to being busy with summer classes. I'm returning, but I'm still having no luck with this. What do you mean by having a terminal connected to a serial port? My process is: start a roscore, run arlobot_bringup minimal.launch --screen, and then run arlobot_teleop keyboard_teleop.launch.
from arlobot.
I meant having a program with a terminal like simple IDE or an arduino IDE open on the same computer that is running ROS at the same time you are attempting to run ROS. The only time I have seen serial problems was following direct terminal interaction with the propeller board when I forgot to close the terminal program before launching ROS.
from arlobot.
Oh, I see. Yeah I occasionally had that issue too where I forgot to close SimpleIDE before moving on; however it doesn't seem that to be the case to the error this time. I'm going to be doing various things to try to troubleshoot today so I'll get back here with my efforts soon.
from arlobot.
I've not fixed the problem but I've found something new that might be interesting.
I was running arlobot_bringup minimal.launch --screen and saw I had forgot to turn on the MAIN and the MOTORS rocker switches. I wasn't getting the serial issue and the terminal just stayed static with the regular:
...
[ 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.
The same happens and I don't get the error when I turn on the MAIN rocker switch and keep the MOTORS rocker switch off. As soon as I try running minimal.launch --screen with the MOTORS rocker switch on, I will start to get the continuous errors as seen on the first post. Also, I let it run for a while and I saw I got a line in yellow stating
[WARN] [1533791923.129673]: Short line from Propeller board: 1688.
I'm not sure what this means, if I have some sort of short? This is new. Because of this, I'm thinking it /may/ have something to do with the motors or the motor controller board.
from arlobot.
I ran all of the connection tests provided by Parallax and all of them passed. I don't think there are any errors with the board or the motors.
UPDATE 1: I just re-installed Ubuntu 16.04.4 on a different laptop, ran the quick install script for ROS all over again. Removed Scanse Sweep and ran a clean catkin_make. Error persists before and after updating per_robot_settings_for_propeller_c_code.h.
from arlobot.
Hi,
A couple of ideas, probably long shots.
- Does your user id have dialout group permissions? When you type "groups", does dialout appear? I was searching for instructions that I followed to eliminate serial data/USB problems with a camera that I have been experimenting with that involved making some changes to the linux environment that may have been helpful, but I have been unable to find them. I vaguely remember doing something to uninstall or disable a modem package or driver.
- Did you happen to run the instructions from the link on Chris's blog to prevent the propeller activity board from being powered over USB? I have NOT done this. Are you doing anything with modified cables to accomplish the same thing? In reading about this I got the impression that this could potentially be a source of problems in some situations.
- Do you switch your propeller activity board all the way on, to the "2" position?
Sorry I can not be more help.
from arlobot.
Hi Vatbrain,
Yeah I've added my id to dialout already (it was already added during the quick install too), so I don't think that is the problem too much.
I haven't actually done the disable USB power; I'm just the robot to my computer via the mini-usb. I tried multiple mini-usb to see if that was the issue yet no.
Yeah, the board is set at 2 as well. I tried it at both switch positions.
Looking at a previous opened issue, Chris stated that the Watchdog Timeout Reset initiated signifies that the serial communication doesn't work, and times out and resets while waiting for data from the board and tries again. It seems fine; I can still load in code properly. When it's connected to ros and I have teleop running, hold down some keys, I have both the RX and TX lights flashing, and the serial light is on too; until it times out for a bit.
I was thinking something was on in the per_robot_settings_for_propeller_c_code.h, so that when I turned on the motor switch making the DHB-10 turn on, something became initialized and the propeller board was constantly waiting for information back from it, since the timeout happens only when when I turn on the motor controller; however, I ran all the encoder and motor tests and they seem to all be communicating well. When it's off, the four ping sensor configuration still flashes its green lights signifying its working.
I thought my board might be the problem so I just got a new Activity Board, hooked it up, loaded stuff in, but still no luck. The only thing I need to be changing is the per_robot_settings_for_propeller_c_code.h right?
Thanks for staying in communication and lending me some suggestions I really appreciate it. I just need for ROS to be able to connect with the board so I could move on to use it with my own research at my university. It's becoming extremely frustrating because this is just the only step I need to work before I can move on, yet I've no clue how to fix this issue.
from arlobot.
Hi,
If you post/attach your per_robot_settings_for_propeller_c_code.h, I'd be happy to compare it to mine and see if anything jumps out at me. The other files that might be interesting to compare would be propellerbot_node.py and SerialDataGateway.py just to see if we are using the same versions.
from arlobot.
Great; I will do that first thing tomorrow morning when I get back to my work station. Also, I'm quite new to github. What/where is the best way for me to upload this code for you to view it?
from arlobot.
I'm pretty new to github myself. I see the note at the bottom of the box where I am entering this that says "Attach files by dragging & dropping, selecting them, or pasting from the clipboard". That sounds like the simplest way to me. I just tried to drag and drop my per_robot_settings... .h file and it gave me a message that it does not support that file type. It did list ZIP as a listed type, so you could try zipping the files together and then dragging and dropping. I suspect the correct way would be for you to fork Chris's repository and upload your changes to your own fork. I have done this, but it is more involved.
I can't promise that I will get to comparing the files quickly, as I am going to be quite busy the next couple of days, but I should have more time after that.
from arlobot.
That's completely fine with me; I already appreciate all the effort you're putting in to help me. Thanks very much. I've attached a .zip file with the per robot settings file as well as the propellerbot_node.py and SerialDataGateway.py.
For the robot settings, simply all I did was edit the ping sensor configuration. I am using the Arlo Complete Robot Kit provided by parallax, with the 4 ping sensors connected directly to the P14, P15, P16, and P17 headers. I also changed the ROS timeout and increased it to see if that would have made any difference.
geistmateArloBot_perRobotSettings.zip
from arlobot.
Hi.
-
What strikes me about your configuration is that your front ping sensors are not contiguous.
#define FIRST_FRONT_PING_SENSOR_NUMBER 14
#define HOW_MANY_FRONT_PING_SENSORS 3
#define FIRST_REAR_PING_SENSOR_NUMBER 15
While I don't understand how this could cause serial communication problems, I believe it will cause other problems. I would recommend changing the rear ping to P17.
Also, I assume you have the jumpers next to the servo headers on the center pin and the 5V pin and not on the center pin and the VIN pin? -
#define ROS_TIMEOUT 1000 Probably not an issue, but maybe try setting this to something < 127 in case it is somehow being passed through a byte and being truncated? Don't have time to study the code to see if this could be a problem.
-
One other difference I just noticed. Your file has the following:
// Quickstart Board Settings
// I have a SECOND Propeller chip on a Quickstart board that polls the PING and IR sensors, so this is settings for that.
// Which pin on the QuickStart Board is the RX pin connected out to the Activity board?
#define ACTIVITYBOARD_RX_PIN 5
// Which pin on the QuickStart Board is the TX pin connected in from the Activity board?
#define ACTIVITYBOARD_TX_PIN 6
My file does not have this. This is related to serial communications and merits further investigation but I do not have time right now.
I have to get ready to go to work now, but will look again this evening.
from arlobot.
#3 above should not be an issue.
Forgot to mention that the propellerbot_node.py and SerialDataGateway.py you uploaded are identical to what I am using.
from arlobot.
I'm at a loss. Spent some more time looking at your configuration versus mine and did not find anything other than what I have already noted above.
A few more miscellaneous questions:
- What types/brands of laptops have you tried?
- Does find_ActivityBoard.sh (in the scripts directory) run properly?
- Does check_hardware.sh (in the scripts directory) run properly?
from arlobot.
Hey Vatbrain,
I've tried many different laptops.
I tried running off a Dell XPS 13, Aorus X3, Razer Blade 14, and a few other low-powered laptops. And yes, find_ActivityBoard.sh and check_hardware.sh both run properly.
Sadly, I've given up on this package for it since I cannot afford to waste more time. I've been using an Arduino Mega and the rosserial library in order to publish my data.
I appreciate all the effort you put into trying to help me; hopefully this can get resolved in the future for others that want to use this ArloBot package.
Best regards,
Matthew
from arlobot.
This was a great discussion. I apologize that I was not able to get involved at the time.
I'm going to close this as it is old now. If you feel I can still contribute to a solution for you please reopen this issue or open another one.
Thank you!
from arlobot.
Related Issues (20)
- view_navigation.launch will not display Slamtech A1M8 RPLidar output on rviz HOT 9
- Moving "Unplug" to Yes does not result in "Plugged In" changing from Yes to No HOT 7
- Problem controlling the motors from the Arlobot Web Interace HOT 19
- Remove unused bits from web interface
- Clean up default talk strings
- Hardware Wiki
- Testing Wiki
- Convert Cypress tests to Playwright
- Slam Toolbox fails to launch either manually or when using the Arlobot Web Controller Navigation Panel HOT 38
- The Arlobot software does not presently appear to support Bluetooth Gamepads HOT 8
- 'pm2 save' no longer functional in latest Arlobot/ROS install HOT 2
- Issue setting up "arlobotModel" in "personalDataForBehavior.json" HOT 1
- The desktop Mozilla Firefox browser not launching after SBC bootup HOT 1
- Suggest using Ubuntu MATE with the Raspberry Pi SBCs HOT 18
- The Xbox One gamepad does not control the Arlobot speed or direction HOT 3
- Clicking on BLINKY in the Behavior Panel causes ROS to shutdown HOT 12
- Add Docking ability to charge robot when power is low HOT 168
- ArloBot will not drive in a straight line when using the default driveGeometry values HOT 7
- The number 3 key in the PropellerSerialTest.sh mAneuvers Menu appears to be nonfunctional
- /dev/fd/63: line 693: npm: command not found HOT 6
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from arlobot.