From Wiki for RobotCub and Friends
Can Networks
The iCub 1.0 four can bus network are used (ids range from 0 to 3)
- 0 head network, device pcan
- 1 left arm network, device pcan
- 2 right arm network, device pcan
- 3 legs network, device pcan
On iCub 1.1 two ecan devices are added to the existing pcans.
- 0 head network, device pcan
- 1 left arm network, device pcan
- 2 right arm network, device pcan
- 3 legs network, device pcan
- left hand: device ecan, variable id
- right hand: device ecan, variable id
On iCub 1.2 the cfw2 board is used (ids range from 0 to 8).
- 0 head network, device cfw2
- 1 left arm network, device cfw2
- 2 right arm network, device cfw2
- 3 left leg network, device cfw2
- 4 right leg network, device cfw2
- 5 left hand, device cfw2
- 6 right hand, device cfw2
- 7 left hand skin network, device cfw2
- 8 right hand skin network, device cfw2
Boards communicating on CAN and associated firmware
We here describe all the boards communicated on each of the four CAN bus lines (see Quad-CAN bus interface) connected to the PC104
iCub v1.0
We here describe the CAN-bus networks structure of the iCub v1.0. The version 1.0 uses the CFW board which has 4 canbus lines
| V1.0
|
| can-bus network | configuration file | associated robot part
|
| pcan-0 | icub_head_torso.ini | head (entries 0 to 5) and torso (entries 6 to 8)
|
| pcan-1 | icub_left_arm.ini | left_arm
|
| pcan-2 | icub_right_arm.ini | right_arm
|
| pcan-3 | icub_legs_leg.ini | left_leg (entries 0 to 5) and right_leg (entries 6 to 11)
|
Details on the control boards connected to each network are given below.
PCAN0: Head and Torso
Head
| boardLabel
|
| canDeviceNum
| boardId
| firmware
|
|
|
|
|
|
| 0B0
| ->
| 0 (pcan)
| 1
| 4DC.1.11.out.S
|
| 0B1
| ->
| 0 (pcan)
| 3
| 4DC.1.15.out.S
|
Torso
| boardLabel
|
| canDeviceNum
| boardId
| firmware
|
|
|
|
|
|
| 0B3
| ->
| 0 (pcan)
| 5
| 2BLL.1.54.out.S
|
| 0B4
| ->
| 0 (pcan)
| 6
| 2BLL.1.52.out.S
|
PCAN1: Left arm
| boardLabel
|
| canDeviceNum
| boardId
| firmware
|
|
|
|
|
|
| 1B0
| ->
| 1 (pcan)
| 1
| 2BLL.1.50.out.S
|
| 1B1
| ->
| 1 (pcan)
| 2
| 2BLL.1.53.out.S
|
| 1B2
| ->
| 1 (pcan)
| 3
| 4DC.1.19.out.S
|
| 1B3
| ->
| 1 (pcan)
| 5
| 4DC.1.18.out.S
|
| 1B4
| ->
| 1 (pcan)
| 7
| 4DC.1.20.out.S
|
PCAN2: Right arm
| boardLabel
|
| canDeviceNum
| boardId
| firmware
|
|
|
|
|
|
| 1B0
| ->
| 2 (pcan)
| 1
| 2BLL.1.50.out.S
|
| 1B1
| ->
| 2 (pcan)
| 2
| 2BLL.1.53.out.S
|
| 1B2
| ->
| 2 (pcan)
| 3
| 4DC.1.19.out.S
|
| 1B3
| ->
| 2 (pcan)
| 5
| 4DC.1.18.out.S
|
| 1B4
| ->
| 2 (pcan)
| 7
| 4DC.1.20.out.S
|
PCAN3: Legs
| boardLabel
|
| canDeviceNum
| boardId
| firmware
|
|
|
|
|
|
| 3B5
| ->
| 3 (pcan)
| 5
| 2BLL.1.51.out.S
|
| 3B6
| ->
| 3 (pcan)
| 6
| 2BLL.1.51.out.S
|
| 3B7
| ->
| 3 (pcan)
| 7
| 2BLL.1.51.out.S
|
| 3B8
| ->
| 3 (pcan)
| 8
| 2BLL.1.51.out.S
|
| 3B9
| ->
| 3 (pcan)
| 9
| 2BLL.1.51.out.S
|
| 3B10
| ->
| 3 (pcan)
| 10
| 2BLL.1.51.out.S
|
iCub v1.1
We here describe the CAN-bus networks structure of the iCub v1.1. The version 1.1 uses the CFW board which has 4 canbus lines and 2 esd-can device. Overall we have 6 canbus lines: 4 pcan and 2 ecan.
| V1.1
|
| can-bus network | configuration file | associated robot part
|
| pcan-0 | icub_head_torso.ini | head (entries 0 to 5) and torso (entries 6 to 8)
|
| pcan-1 | icub_left_arm.ini | left_arm (joints 0 to 7)
|
| pcan-2 | icub_right_arm.ini | right_arm (joints 0 to 7)
|
| pcan-3 | icub_legs.ini | left_leg (entries 0 to 5) and right_leg (entries 6 to 11)
|
| ecan-0 or ecan-1 | icub_left_hand.ini | left_arm (joints 8 to 15)
|
| ecan-0 or ecan-1 | icub_right_hand.ini | right_arm (joints 8 to 15)
|
Details on the control boards connected to each network are given below.
PCAN0: Head and Torso
Head
| boardLabel
|
| canDeviceNum
| boardId
| firmware
|
|
|
|
|
|
| 0B0
| ->
| 0 (pcan)
| 1
| 4DC.1.11.out.S
|
| 0B1
| ->
| 0 (pcan)
| 3
| 4DC.1.15.out.S
|
Torso
| boardLabel
|
| canDeviceNum
| boardId
| firmware
|
|
|
|
|
|
| 0B3
| ->
| 0 (pcan)
| 5
| 2BLL.1.54.out.S
|
| 0B4
| ->
| 0 (pcan)
| 6
| 2BLL.1.52.out.S
|
PCAN1: Left arm
| boardLabel
|
| canDeviceNum
| boardId
| firmware
|
|
|
|
|
|
| 1B0
| ->
| 1 (pcan)
| 1
| 2BLL.1.50.out.S
|
| 1B1
| ->
| 1 (pcan)
| 2
| 2BLL.1.57.out.S
|
| 1B2
| ->
| 1 (pcan)
| 3
| 4DC.1.19.out.S
|
| virtual FT joint sensor
| ->
| 1 (pcan)
| 12
| - - -
|
| Strain
| ->
| 1 (pcan)
| 13
| strain.hex
|
ECAN1: Left hand
| boardLabel
|
| canDeviceNum
| boardId
| firmware
|
|
|
|
|
|
| 1B3
| ->
| 1 (ecan)
| 5
| 4DC.1.28.out.S
|
| 1B4
| ->
| 1 (ecan)
| 7
| 4DC.1.30.out.S
|
| virtual FT joint sensor
| ->
| 1 (ecan)
| 12
| - - -
|
| MAIS
| ->
| 1 (ecan)
| 14
| mais.hex
|
PCAN2: Right arm
| boardLabel
|
| canDeviceNum
| boardId
| firmware
|
|
|
|
|
|
| 2B0
| ->
| 2 (pcan)
| 1
| 2BLL.1.50.out.S
|
| 2B1
| ->
| 2 (pcan)
| 2
| 2BLL.1.57.out.S
|
| 2B2
| ->
| 2 (pcan)
| 3
| 4DC.1.19.out.S
|
| virtual FT joint sensor
| ->
| 2 (pcan)
| 12
| - - -
|
| Strain
| ->
| 2 (pcan)
| 13
| strain.hex
|
ECAN0: Right hand
| boardLabel
|
| canDeviceNum
| boardId
| firmware
|
|
|
|
|
|
| 2B3
| ->
| 2 (ecan)
| 5
| 4DC.1.28.out.S
|
| 2B4
| ->
| 2 (ecan)
| 7
| 4DC.1.30.out.S
|
| virtual FT joint sensor
| ->
| 2 (ecan)
| 12
| - - -
|
| MAIS
| ->
| 2 (ecan)
| 14
| mais.hex
|
PCAN3: legs
| boardLabel
|
| canDeviceNum
| boardId
| firmware
|
|
|
|
|
|
| 3B5
| ->
| 3 (pcan)
| 5
| 2BLL.1.51.out.S
|
| 3B6
| ->
| 3 (pcan)
| 6
| 2BLL.1.51.out.S
|
| 3B7
| ->
| 3 (pcan)
| 7
| 2BLL.1.51.out.S
|
| 3B8
| ->
| 3 (pcan)
| 8
| 2BLL.1.51.out.S
|
| 3B9
| ->
| 3 (pcan)
| 9
| 2BLL.1.51.out.S
|
| 3B10
| ->
| 3 (pcan)
| 10
| 2BLL.1.51.out.S
|
| virtual FT joint sensor (left_leg)
| ->
| 3 (pcan)
| 12
| - - -
|
| Strain (left_leg)
| ->
| 3 (pcan)
| 13
| strain.hex
|
| virtual FT joint sensor (right_leg)
| ->
| 3 (pcan)
| 11
| - - -
|
| Strain (right_leg)
| ->
| 3 (pcan)
| 14
| strain.hex
|
iCub v1.2
We here describe the CAN-bus networks structure of the iCub v1.2. The version 1.2 uses the CFW2 board which has 10 can-Bus lines available.
| V1.2
|
| can-bus network | configuration file | associated robot part
|
| 0 | icub_head_torso.ini | head and torso
|
| 1 | icub_left_arm.ini | left_arm (joints 0 to 7)
|
| 2 | icub_right_arm.ini | right_arm (joints 0 to 7)
|
| 3 | icub_left_leg.ini | left_leg
|
| 4 | icub_right_leg.ini | right_leg
|
| 5 | icub_left_hand.ini | left_arm (joints 8 to 15)
|
| 6 | icub_right_hand.ini | right_arm (joints 8 to 15)
|
| 7 | skinlefthand.ini | left_hand skin
|
| 8 | skinrighthand.ini | right_hand skin
|
Details on the control boards connected to each network are given in the following.
CFW2CAN0: Head and Torso
Head
| boardLabel
|
| canDeviceNum
| boardId
| firmware
|
|
|
|
|
|
| 0B0
| ->
| 0 (cfw2)
| 1
| 4DC.1.11.out.S
|
| 0B1
| ->
| 0 (cfw2)
| 3
| 4DC.1.15.out.S
|
Torso
| boardLabel
|
| canDeviceNum
| boardId
| firmware
|
|
|
|
|
|
| 0B3
| ->
| 0 (cfw2)
| 5
| 2BLL.1.54.out.S
|
| 0B4
| ->
| 0 (cfw2)
| 6
| 2BLL.1.52.out.S
|
CFW2CAN1: Left arm
| boardLabel
|
| canDeviceNum
| boardId
| firmware
|
|
|
|
|
|
| 1B0
| ->
| 1 (cfw2)
| 1
| 2BLL.1.50.out.S
|
| 1B1
| ->
| 1 (cfw2)
| 2
| 2BLL.1.57.out.S
|
| 1B2
| ->
| 1 (cfw2)
| 3
| 4DC.1.19.out.S
|
| virtual FT joint sensor
| ->
| 1 (cfw2)
| 12
| - - -
|
| Strain
| ->
| 1 (cfw2)
| 13
| strain.hex
|
CFW2CAN5: Left hand
| boardLabel
|
| canDeviceNum
| boardId
| firmware
|
|
|
|
|
|
| 1B3
| ->
| 5 (cfw2)
| 5
| 4DC.1.28.out.S
|
| 1B4
| ->
| 5 (cfw2)
| 7
| 4DC.1.30.out.S
|
| virtual FT joint sensor
| ->
| 5 (cfw2)
| 12
| - - -
|
| MAIS
| ->
| 5 (cfw2)
| 14
| mais.hex
|
CFW2CAN2: Right arm
| boardLabel
|
| canDeviceNum
| boardId
| firmware
|
|
|
|
|
|
| 2B0
| ->
| 2 (cfw2)
| 1
| 2BLL.1.50.out.S
|
| 2B1
| ->
| 2 (cfw2)
| 2
| 2BLL.1.57.out.S
|
| 2B2
| ->
| 2 (cfw2)
| 3
| 4DC.1.19.out.S
|
| virtual FT joint sensor
| ->
| 2 (cfw2)
| 12
| - - -
|
| Strain
| ->
| 2 (cfw2)
| 13
| strain.hex
|
CFW2CAN6: Right hand
| boardLabel
|
| canDeviceNum
| boardId
| firmware
|
|
|
|
|
|
| 2B3
| ->
| 6 (cfw2)
| 5
| 4DC.1.28.out.S
|
| 2B4
| ->
| 6 (cfw2)
| 7
| 4DC.1.30.out.S
|
| virtual FT joint sensor
| ->
| 6 (cfw2)
| 12
| - - -
|
| MAIS
| ->
| 6 (cfw2)
| 14
| mais.hex
|
CFW2CAN3: left leg
| boardLabel
|
| canDeviceNum
| boardId
| firmware
|
|
|
|
|
|
| 3B5
| ->
| 3 (cfw2)
| 5
| 2BLL.1.51.out.S
|
| 3B6
| ->
| 3 (cfw2)
| 6
| 2BLL.1.51.out.S
|
| 3B7
| ->
| 3 (cfw2)
| 7
| 2BLL.1.51.out.S
|
| virtual FT joint sensor
| ->
| 3 (cfw2)
| 12
| - - -
|
| Strain
| ->
| 3 (cfw2)
| 13
| strain.hex
|
CFW2CAN4: right leg
| boardLabel
|
| canDeviceNum
| boardId
| firmware
|
|
|
|
|
|
| 3B8
| ->
| 4 (cfw2)
| 8
| 2BLL.1.51.out.S
|
| 3B9
| ->
| 4 (cfw2)
| 9
| 2BLL.1.51.out.S
|
| 3B10
| ->
| 4 (cfw2)
| 10
| 2BLL.1.51.out.S
|
| virtual FT joint sensor
| ->
| 4 (cfw2)
| 11
| - - -
|
| Strain
| ->
| 4 (cfw2)
| 14
| strain.hex
|