## page was renamed from pr2 etherCAT/FAQ ## page was renamed from pr2 etherCATFAQ <<TableOfContents(3)>> == Errors when roslaunching pr2_etherCAT == === Error: Can't Communicate [exit code -5] === . {{{ [prdemo1-0]: [pr2_etherCAT-1] process has died [exit code -5] }}} '''Solution: '''Check the following things: * Is the power board on? . {{{ roscd pr2_power_board roslaunch gui_power2.launch }}} * [[pr2_power_board/Troubleshooting |pr2_power_board problems?]] * Still not working? This may be a deeper hardware issue, try running these on the realtime machine (the machine that the launch file launches pr2-ethercat on): {{{ $ roscd ethercat_hardware $ sudo bash $ ./motorconf -i eth0 }}} If this does not show a list of all the MCBs then you have [[ethercat_hardware/Troubleshooting |ethercat_hardware problems]]. * Still not working? Contact Rob W. === Error: Assert Failing [exit code -6] === . This indicates that an assertion in your code has probably failed. Check the std_err log for pr2_etherCAT. {{{ roscd log less pr2_etherCAT-1-stderr.log }}} === Error: Seg Fault [exit code -11] === . {{{ [prdemo1-0]: [pr2_etherCAT-1] process has died [exit code -11] }}} '''Solution: ''' . Look for a core file in $ROS_ROOT on the realtime machine === Error: Duplicate pr2_etherCAT Process [exit code 255] === . {{{ [localhost-0]: [pr2_etherCAT-1] process has died [exit code 255] prdemo1:~/ros/ros/log$ cat pr2_etherCAT-1-stdout.log rv = -1 prdemo1:~/ros/ros/log$ cat pr2_etherCAT-1-stderr.log [FATAL] Another instance of pr2_etherCAT is already running with pid: 10963 }}} '''Solution: ''' . If you have a defunct process... {{{ sudo rm /var/run/pr2_etherCAT.pid }}} == Errors when running the pr2_etherCAT binary == === Cannot allocate memory === . {{{ mlockall: Cannot allocate memory }}} '''Problem:''' The {{{mlockall}}} system call needs special privileges. '''Solution:''' * Run pr2_etherCAT as root. * There is some fancy way of launching PR2 without root privleges. Talk to Rob W. === Interface ethX is not RUNNING. === . {{{ [FATAL] [1272004437.882394471]: Interface eth0 is not RUNNING. Is cable plugged in and device powered? [FATAL] [1272004438.882895063]: BREAKPOINT HIT file = /u/dking/wg_latest/stacks/pr2_ethercat_drivers/ethercat_hardware/src/ethercat_hardware.cpp line=111 }}} '''Problem:''' The Ethernet interface does not have a "link" to any other device. '''Solution:''' * Make sure the Ethernet cable fully plugged into the computer and the first EtherCAT device. Sometimes the cable looks connected but did not fully engage. Try unplugging and replugging cables to make sure. * Make sure the EtherCAT device is powered. Most devices have a couple LEDs, if none of them are ON, there may be no power. * Sometimes network drivers lock up, or cable go bad. Try plugging you computer jack into a network switch. Most switches and network card have a "link" LED that will should light up when there is a connection. === Interface ethX is not up === . {{{ [FATAL] [1272004896.222845830]: Interface eth0 is not UP. Try : ifup eth0 [FATAL] [1272004897.223210529]: BREAKPOINT HIT file = /u/dking/wg_latest/stacks/pr2_ethercat_drivers/ethercat_hardware/src/ethercat_hardware.cpp line=106 }}} '''Problem''' The Ethernet interface is not enabled. '''Solution:''' . {{{ ifconfig ethX up }}} Or: . {{{ ifup ethX }}} === Error: Unable to locate slaves === . {{{ low_level_txandrx: failed 10 times: Giving up Error sending counter frame Something went wrong while scanning network EtherCAT_AL:: Can't init network [FATAL] 1235360244.238315000: Unable to locate any slaves [FATAL] 1235360244.279594000: BREAKPOINT HIT file = /u/gerkey/code/nrt/ethercat_hardware/src/ethercat_hardware.cpp line=104 }}} The pr2_etherCAT program cannot locate any devices. Make sure you are using the correct Ethernet port. === Error: Unsupported Firmware === . {{{ root@tc1:/ros/ros-pkg/drivers/motor/ethercat_hardware# ./motorconf -i rteth0 Socket created: socket id: 896 Got interface: index: 0 [ INFO] Device #00: WG05 (0x67d60d) Firmware Revision 1.02, PCB Revision B.02 [FATAL] Unsupported firmware revision 1.02 [FATAL] BREAKPOINT HIT file = /ros/ros-pkg/drivers/motor/ethercat_hardware/src/wg0x.cpp line=205 Trace/breakpoint trap }}} '''Solution: ''' * [[MCBFirmware|Update the MCB Firmware]] * Power cycle system after MCB Firmware Update === Error: Unable to initialize interface === . {{{ Cannot get interface index: No such device [FATAL] Unable to initialize interface: eth0 [FATAL] BREAKPOINT HIT file = /u/wgdemo/ros/ros-realtime/drivers/motor/ethercat_hardware/src/ethercat_hardware.cpp line=78 }}} '''Solution: ''' . {{{ sudo ifconfig eth0 up }}} === Error: Invalid actuator info === . {{{ [FATAL] Device #00: Invalid CRC32 in actuator_info_ [FATAL] BREAKPOINT HIT file = /u/wgdemo/ros/ros-realtime/drivers/motor/ethercat_hardware/src/wg0x.cpp line=276 }}} '''Solution: ''' * Check your xml for errors or * [[ProgrammingMCBs |Program the motor controller boards]] === Error: Unable to configure slave === . {{{ Socket created: socket id: 12 Got interface: index: 0 Packet round-trip timeout has been set to 20000 usecs. [FATAL] 1235356450.031254000: Unable to configure slave #23, product code: 0, revision: 0 [FATAL] 1235356450.031389000: BREAKPOINT HIT file = /u/gerkey/code/nrt/ethercat_hardware/src/ethercat_hardware.cpp line=149}}} One of the motor boards didn't boot properly. You need to reset them. '''Solution:''' From a desktop / laptop, use the power board GUI: {{{ roscd pr2_power_board roslaunch gui_power.launch}}} For each of the three circuit breakers: * click disable * click reset disable * click run === Error: exit code 01 === * Make sure you are running it on the real-time machine