I announce that TurtleBot3 is huge updated!!!
This update considered many issues and requests from users. We are sincerely thankful to them.
More interest makes more progress. If you have any issues or suggestions, please feel free to get issue ticket
Hi @routiful thanks alot for the update.
i have a question… Do we need to update the OpenCr board? and How? i get “Checksum does not match” error . thanks alot…
I am interested in using the new software update on my TB3 and thank you for these instructions. Are there also updates planned or available to the documentation to describe the ROS commands necessary to show the new Publisher /diagnostic, /battery_state information and to connect a speaker to the RasPi3 or OpenCR to hear the generated sounds? Ross
We have a plan to be compatible with ROS2 though we don’t have any details.
We provide a TurtleBot3 Wiki and it will be added more information soon for these software updates.
Additionally, you don’t need to connect separate speaker due to OpenCR already has it
Darby, Following your good instructions and compiling the revised catkin_ws/src, I easily updated the ROS SBC TB3 and OpenCR software and very pleased that it all works well, including “rostopic echo /diagnostics” node that is very informative. I look forward to the new wiki to learn how to connect the new /sound Subscription that roswtf reports as unconnected. I note there is a reference to a Adafruit display driver in the TB3 github-Is that a future additional feature? A small request is make available the pdf version of the previous wiki.Thank you and your colleagues for their hard work and producing an excellent, fun and educational robot :).
I’m still getting a checksum mismatch. I upgraded to OpenCR 1.0.15 and also tried 1.0.16. I upgraded with turtlebot3.git and on turtlebot3_msg.git on both my RemotePC and TurtleBot.
I did a roscore on my RemotePC
a ssh into the TurtleBot
did a “roslaunch turtlebot3_bringup turtlebot3_core.launch” on the TurtleBot
This is the execution
<
$ roslaunch turtlebot3_bringup turtlebot3_core.launch
… logging to /home/eepp/.ros/log/5a7d18a4-0545-11e8-9b6b-080027c0cb1e/roslaun
ch-orras-3438.log
Checking log directory for disk usage. This may take awhile.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.
process[turtlebot3_core-1]: started with pid [3447]
[INFO] [1517266129.977476]: ROS Serial Python Node
[INFO] [1517266130.051262]: Connecting to /dev/ttyACM0 at 115200 baud
[ERROR] [1517266132.304481]: Creation of publisher failed: Checksum does not ma
tch: 427f77f85da38bc1aa3f65ffb673c94c,d537ed7b8d95065b6c83830430b93911
[INFO] [1517266132.362502]: Note: publish buffer size is 1024 bytes
…
/>
I followed the instructions in 7.1.5 for Porting OpenCR1.0 to Arduino IDE. I want to reason through my issue. I’m not familiar with Arduino checksum generation. I connected my OpenCR to my Remote PC. I ran the Arduino IDE from there and loaded the bootloader. So I assume I can load the OpenCR from any machine as long as I have the right bootloader version. Where and how are the checksums being generated and compared? Will I have the same bootloader checksum as everyone else in the world? If that is correct, someone should be able to tell me if I have the correct one and tell me which side is incorrect. If not correct, does the checksum depend on my hardware and/or software.
Thanks Darby for the reply,
I updated the Board Manager on Arduino IDE to 1.0.15 (also tried 1.0.16) → the tried updating the Bootloader using Arduino IDE (but failed) with the following error message:
Arduino: 1.8.5 (Linux), Board: "OpenCR Board, OpenCR Bootloader"
java.lang.NullPointerException
at cc.arduino.packages.uploaders.SerialUploader.burnBootloader(SerialUploader.java:362)
at processing.app.Editor.lambda$handleBurnBootloader$14(Editor.java:2519)
at java.lang.Thread.run(Thread.java:748)
Error while burning bootloader.
This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences.
I made sure the
lsusb
is showing the STMicroelectronics (NOTE: There is no DFU mode written as you mention in the emanual - but this entry in lsusb starts showing up only after DFU mode triggered on using Boot + Reset button)
Bus 002 Device 002: ID 8087:8000 Intel Corp.
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID 8087:8008 Intel Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 002: ID 138a:0017 Validity Sensors, Inc. Fingerprint Reader
Bus 003 Device 006: ID 0483:5740 STMicroelectronics STM32F407
Bus 003 Device 004: ID 0765:5010 X-Rite, Inc.
Bus 003 Device 003: ID 8087:07dc Intel Corp.
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Can you let me know some tips to go ahead with debugging?