Skip to content

PDO tutorial doesn't work #3

@MatejBartosovic

Description

@MatejBartosovic

Hello.
I am following the PDO configuration tutorial however PDO's are not produced by the demo device.

What I have done so far:

  • start candump can0
  • run demo device ./demoLinuxDevice can0
  • start canopend with stdin interface ./canopend can0 -i 1 -c stdio and send commands based on tutorial

Outputs:

  • demo device
./demoLinuxDevice can0
./demoLinuxDevice[30528]: CANopen device, Node ID = 0x00, starting
./demoLinuxDevice[30528]: CAN Interface "can0" RX buffer set to 477 messages (212992 Bytes)
./demoLinuxDevice[30528]: CANopen NMT state changed to: "initializing" (0)
./demoLinuxDevice[30528]: CANopen device, Node ID = 0x04, communication reset
./demoLinuxDevice[30528]: CANopen device, Node ID = 0x04, running ...
./demoLinuxDevice[30528]: CANopen NMT state changed to: "pre-operational" (127)
  • canopend
./canopend can0 -i 1 -c stdio
./canopend[30531]: CANopen device, Node ID = 0x00, starting
./canopend[30531]: CANopen command interface on "standard IO" started
./canopend[30531]: CAN Interface "can0" RX buffer set to 477 messages (212992 Bytes)
./canopend[30531]: CANopen NMT state changed to: "initializing" (0)
./canopend[30531]: CANopen device, Node ID = 0x01, communication reset
./canopend[30531]: CANopen device, Node ID = 0x01, running ...
./canopend[30531]: CANopen NMT state changed to: "pre-operational" (127)
./canopend[30531]: CANopen Emergency message from node 0x01: errorCode=0x5000, errorRegister=0x01, errorBit=0x2F, infoCode=0x00000004
set node 4
[0] OK
preop                                          #preoperational mode
[0] OK
w 0x1802 1 u32 0x80000000
[0] OK
w 0x1A02 0 u8 0
[0] OK
w 0x1A02 1 u32 0x21100120
[0] OK
w 0x1A02 0 u8 1
[0] OK
w 0x1802 1 u32 0x00000384
[0] OK
w 0x1802 5 u16 500                   #start imer every 500ms
[0] OK
start                                            #transition to operational mode
[0] OK
  • candump
candump can0
  can0  704   [1]  00
  can0  084   [8]  00 50 01 2F 24 00 00 00
  can0  701   [1]  00
  can0  081   [8]  00 50 01 2F 04 00 00 00
  can0  000   [2]  80 04
  can0  604   [8]  23 02 18 01 00 00 00 80
  can0  584   [8]  60 02 18 01 00 00 00 00
  can0  604   [8]  2F 02 1A 00 00 00 00 00
  can0  584   [8]  60 02 1A 00 00 00 00 00
  can0  604   [8]  23 02 1A 01 20 01 10 21
  can0  584   [8]  60 02 1A 01 00 00 00 00
  can0  604   [8]  2F 02 1A 00 01 00 00 00
  can0  584   [8]  60 02 1A 00 00 00 00 00
  can0  604   [8]  23 02 18 01 84 03 00 00
  can0  584   [8]  60 02 18 01 00 00 00 00
  can0  604   [8]  2B 02 18 05 F4 01 00 00
  can0  584   [8]  60 02 18 05 00 00 00 00
  can0  000   [2]  01 04

Please note that there are no PDOs captured by candump. There should be 384 PDOs.

Is there any missing step to start the production of PDOs? Am I doing something incorrectly?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions