OpenCR Setup - UMD-AIMAR/documentation GitHub Wiki

OpenCR setup

https://github.com/ROBOTIS-GIT/turtlebot3 https://github.com/ROBOTIS-GIT/OpenCR

Follow this guide to set up the arduino IDE with http://emanual.robotis.com/docs/en/parts/controller/opencr10/

Download the Arduino IDE directly from the Arduino website: https://www.arduino.cc/en/Main/Software

Extract it to the home folder sudo arduino-1.8.9/arduino

Update the bootloader: http://emanual.robotis.com/docs/en/parts/controller/opencr10/#update-bootloader

File → Examples → Turtlebot → turtlebot3_burger → turtlebot3_core Upload the sketch.

It fails...

Sketch uses 181896 bytes (23%) of program storage space. Maximum is 786432 bytes.
Global variables use 46372 bytes of dynamic memory.
An error occurred while uploading the sketch
opencr_ld ver 1.0.2
opencr_ld_main
>>
file name : /tmp/arduino_build_242176/turtlebot3_core.ino.bin
file size : 179 KB
Open port OK
Clear Buffer Start
Clear Buffer End
>>
cmd_read_board_name fail : 0xF020

Old Error (without sudo):

ERROR: ld.so: object '/snap/arduino-mhall119/5/lib/bindtextdomain.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS64): ignored.
ERROR: ld.so: object '/snap/arduino-mhall119/5/lib/bindtextdomain.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS64): ignored.
Archiving built core (caching) in: /tmp/arduino_cache_326105/core/core_OpenCR_OpenCR_OpenCR_upload_method_UploadMethod_2466d6b3ffd297cb463014dafc90ce3d.a
ERROR: ld.so: object '/snap/arduino-mhall119/5/lib/bindtextdomain.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS64): ignored.
ERROR: ld.so: object '/snap/arduino-mhall119/5/lib/bindtextdomain.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS64): ignored.
ERROR: ld.so: object '/snap/arduino-mhall119/5/lib/bindtextdomain.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS64): ignored.
ERROR: ld.so: object '/snap/arduino-mhall119/5/lib/bindtextdomain.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS64): ignored.
ERROR: ld.so: object '/snap/arduino-mhall119/5/lib/bindtextdomain.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS64): ignored.
Sketch uses 181904 bytes (23%) of program storage space. Maximum is 786432 bytes.
Global variables use 46380 bytes of dynamic memory.
opencr_ld ver 1.0.2
ser_open: unable to open port: Permission denied
opencr_ld_main
>>
file name : /tmp/arduino_build_435264/turtlebot3_core.ino.bin
file size : 179 KB
Fail to open port 1 : /dev/ttyACM0
Fail to jump to boot

Success!

wget https://raw.githubusercontent.com/ROBOTIS-GIT/OpenCR/master/99-opencr-cdc.rules
sudo cp ./99-opencr-cdc.rules /etc/udev/rules.d/
sudo udevadm control --reload-rules
sudo udevadm trigger

for permissions, then use the right port (not S0? idk bro deal with it)

9/25/19 Moved to official arduino 1.8.9 instead of bootleg snap version arduino_mhall119 that was causing weird problems Changed “programmer” in tools to DFU_Util instead of something else Changed port from S0 to ACM0 Successfully uploaded firmware (turtlebot3_core) to board Teleop still does nothing, though it does show up as controlling cmd_vel (which feeds into core which feeds into cmd_vel_rc100) it doesn’t do anything

Currently looking at Dynamixel setup http://emanual.robotis.com/docs/en/software/dynamixel/dynamixel_workbench/#opencr-and-opencm-tutorials But since the opencr buttons move the robot correctly it seems to be a communication problem somewhere.