Turtlebot3 - Impressions so far

It’s taken longer than expected, but our Turtlebot3 is running. Here are some brief impressions and lessons learned - contrasting thoughts and experiences are welcome!

  • The build instructions are good, but not great. Adding some emphasis to the orientation of components would be helpful. I had the motors swapped initially, and it was maddening to get no response from the board, particularly when there is no real display of an error anywhere. Is there a legend somewhere on the Internet stating what the OpenCR user LEDs mean with the base software? Maybe it was signaling the problem, but I couldn’t tell. Also, the build instructions could use a plan view of the OpenCR board showing where things are plugged in. I know, some of that stuff is available on line, but hunting for it is more difficult than it should be.

  • The Intel Joule board is a significant weakness, for several reasons. First, having the new user flash the board is understandable, but should be highlighted in the instructions well before the board is mounted in the bot. The requirement to reflash the BIOS is also understandable, but maddening - I run Linux, not Windows 10, so finding a machine to flash the BIOS is a pain. It also seems that more than one person has had to flash the board multiple times before it boots. Installing Ubuntu - that was worse than it should have been. How many of us have micro HDMI adapters handy, so we can actually do the install? Also, how about pointing out in the instructions that charger power supply will also serve as a Joule power supply for the flashing and install?

  • More Joule issues - the BIOS checks cause an amazingly slow boot up, particularly for an embedded board. It also runs pretty darn hot for an embedded board. Worst of all, it seems quite unstable. I don’t know if it’s the fault of the Ubuntu distribution or the hardware, but it crashes far too often.

  • The OpenCR board seems quite nice, and I like having all of the sensors integrated. I have had one lock up where communication between the Joule and the OpenCR ceased - no idea where the fault lies. In that particular case, the bot just kept chugging along until it ran into something. It would be beneficial to add a power or reset button on the top platform.

  • The overall kit quality and part quality are outstanding. The Dynamixels are quite nice drive units, all of the cabling is well thought out, and the possibilities for expansion are great.

  • The Turtlebot wiki page (turtlebot3.robotis.com) is very well done. It lays out the required steps to get the machine running in a clear and logical manner (minus things like provisioning the Joule before build). I do think it would benefit from a troubleshooting section, including screenshots of what the various steps should look like.

So, summing up the lessons learned:

  1. Flash the Joule BIOS before anything else. You will need a Windows 10 computer, the downloaded BIOS file, and the USB-C to A cable that comes with the Joule. Be prepared to do this more than once, and to try different BIOS files - the first one didn’t work for me.

  2. Install Ubuntu on the Joule next. You will need the power supply, a micro-HDMI cable or adapter, a powered USB hub, a USB memory stick with a bootable Ubuntu image loaded, and a keyboard, display, and mouse.

  3. Pay obsessive attention to the build instructions, making sure that every part is oriented correctly. When in doubt, check several pictures in the manual to be sure.

  4. The ROS learning curve is steep, and a lot of things are taken for granted. Rviz looks friendly, but it’s definitely not simple. Reviewing tutorials on the ROS web site is very helpful, but plan to spend a significant amount of time figuring things out.

Thank you so much for the detailed feedback :smiley:
I agree with you for several points in sequence of assembly and software installation.
I hope your feedback can help a lot of users for joining ROS community with TurtleBot3.
We’ll see what we can improve on our manual.
Thanks a lot!