This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

AM3359: AM335X

Part Number: AM3359


Tool/software:

Hello support, I have some questions about PRUSS-ICSSS and EtherCAT.

An issue riced up reading ESC Register 0x111 from TwinCAT and SOEM (etherlab) Masters.

First of all the working counter does not increment.

Further the value of the 0x111 Register states “Port A: Loop open, no link”, although there is link on Port A (ESC Register 0x110, Bit 4 is set: Physical Lin Port A = TRUE), and the masters are able to read and write EEPROM content.

  1. Why does only this register do the trouble?
  2. Where does the PRU firmware read the loop state from (INTC, IEP, PHYs interrupts etc.)?

 

Below is the cut of the wireshark capture and screenshots from the TwenCAT, showing the reading result of the registers 0x110 and 0x111.

Thanks in advance.

 

 

No.     Time           Source                Destination           Protocol Length Info

   6774 5.353183       Beckhoff_01:00:00     4a:0f:cf:6b:94:51     ECAT     64     3 Cmds, 'APRD': len 10, 'APRD': len 1, 'APRD': len 1

 

Frame 6774: 64 bytes on wire (512 bits), 64 bytes captured (512 bits) on interface \Device\NPF_{46EE3852-6093-4537-B28A-DFC9177281AF}, id 0

Ethernet II, Src: Beckhoff_01:00:00 (01:01:05:01:00:00), Dst: 4a:0f:cf:6b:94:51 (4a:0f:cf:6b:94:51)

EtherCAT frame header

EtherCAT datagram(s): 3 Cmds, 'APRD': len 10, 'APRD': len 1, 'APRD': len 1

    EtherCAT datagram: Cmd: 'APRD' (1), Len: 10, Adp 0x1, Ado 0x0, Cnt 1

        Header

            Cmd        : 1 (Auto Increment Physical Read)

            Index: 0xcb

            Slave Addr: 0x0001

            Offset Addr: 0x0000

            Length     : 10 (0xa) - No Roundtrip - More Follows...

                .... .000 0000 1010 = Length: 10

                ..00 0... .... .... = Reserved: Valid (0)

                .0.. .... .... .... = Round trip: Frame is not circulating

                1... .... .... .... = Last indicator: More EtherCAT datagrams will follow

            Interrupt: 0x0000

        ESC Revision (0x0): 0x90

        ESC Type (0x1): 0x01

        ESC Build (0x2): 0x04f3

        ESC FMMU Cnt (0x4): 0x08

        ESC SM Cnt (0x5): 0x08

        ESC Ports (0x6): 0x08

        ESC DPRAM (0x7): 0x0f

        ESC Features (0x8): 0x008c, DC support, DC 64 bit support, CRC ext. detection

        Working Cnt: 1

    EtherCAT datagram: Cmd: 'APRD' (1), Len: 1, Adp 0x1, Ado 0x102, Cnt 1

        Header

            Cmd        : 1 (Auto Increment Physical Read)

            Index: 0x00

            Slave Addr: 0x0001

            Offset Addr: 0x0102

            Length     : 1 (0x1) - No Roundtrip - More Follows...

                .... .000 0000 0001 = Length: 1

                ..00 0... .... .... = Reserved: Valid (0)

                .0.. .... .... .... = Round trip: Frame is not circulating

                1... .... .... .... = Last indicator: More EtherCAT datagrams will follow

            Interrupt: 0x0000

        ESC Ctrl (0x102): 0x00

            .... .000 = Fifo size: 0x0

            .... 0... = Low E-Bus jitter: Disabled

        Working Cnt: 1

    EtherCAT datagram: Cmd: 'APRD' (1), Len: 1, Adp 0x1, Ado 0x111, Cnt 0

        Header

            Cmd        : 1 (Auto Increment Physical Read)

            Index: 0x00

            Slave Addr: 0x0001

            Offset Addr: 0x0111

            Length     : 1 (0x1) - No Roundtrip - Last Sub Command

                .... .000 0000 0001 = Length: 1

                ..00 0... .... .... = Reserved: Valid (0)

                .0.. .... .... .... = Round trip: Frame is not circulating

                0... .... .... .... = Last indicator: Last EtherCAT datagram

            Interrupt: 0x0000

        Working Cnt: 0