Communication error with 7i92+7i77

More
15 Oct 2017 14:28 - 15 Oct 2017 14:33 #100389 by Machinen
Hi,
I just bought new 7i92H+7i77 combo. Unfortunately I am having problems with setting it up (so far just on my table).
I flashed the 7i92 with 7i92_7i77x2D.bit using 2m CAT6E patch cable. I am powering both board with ATX power supply 5V by separate lines to both connectors, the field power is 12V from my lab power supply without earth reference. Cable between 7i92H and 7i77 is about 20cm long ribbon cable with idc26->db25 which I did perform continuity test on and also short circuit test. The installation I am using is from linuxcnc.org/docs/html/getting-started/g...th_preempt_rt_kernel , the kernel #1 SMP PREEMPT RT Debian 3.2.93-1, linuxcnc is LINUXCNC - 2.7.11.

When I try the
mesaflash --device 7i92 --sserial --verbose
I get the
SSLBP port 0:
  SSLBP Version: 1.43
  SSLBP Channels: 6
  SSLBP Baud Rate: 2500000
  interface type: 12
  interface width: 8
  SSLBP Channel Start: 112
  SSLBP Channel Stride: 50
  SSLBP Processor Type: d8
  SSLBP Clock: 100 MHz
  sserial device at channel 3: 7I77 GPIO
    SwRevision = 14
    NVBaudRate = 2.5Mb
    NVUnitNumber = 0x12000xxx
    NVWatchDogTimeout = 50ms
    EncMode0 = ffff [16 bits UNSIGNED IN | UNIT: None | RANGE: 0.00 - 0.00 | ADDR: 0998]
    EncMode1 = ffff [16 bits UNSIGNED IN | UNIT: None | RANGE: 0.00 - 0.00 | ADDR: 099A]
    NVEncMode0 = 0 [16 bits NV UNSIGNED IN | UNIT: None | RANGE: 0.00 - 0.00 | ADDR: 003A]
    NVEncMode1 = 0 [16 bits NV UNSIGNED IN | UNIT: None | RANGE: 0.00 - 0.00 | ADDR: 003C]
    SOFTWARE MODE Input_Output [index 00]
    SOFTWARE MODE IO_Analog [index 01]
    SOFTWARE MODE IO_Analog_FieldVoltage [index 02]
    SOFTWARE MODE IO_Encoder_Analog_Fieldvoltage [index 03]
  sserial device at channel 4: 7I77 ANALOG
    SwRevision = 14
    HwRevision = 1
    NVBaudRate = 2.5Mb
    NVUnitNumber = 0x11000xxx
    NVWatchDogTimeout = 50ms
    SOFTWARE MODE AnalogOut_Enables [index 00]
So it is communicating. However when I try
halrun
halcmd: loadrt hostmot2
Note: Using POSIX realtime
hm2: loading Mesa HostMot2 driver version 0.15
halcmd: loadrt hm2_eth board_ip="192.168.1.121"
I do get the following error:
hm2_eth: loading Mesa AnyIO HostMot2 ethernet driver version 0.2
hm2_eth: 192.168.1.121: Hardware address: MAC
hm2_eth: discovered 7I92
hm2/hm2_7i92.0: Smart Serial Firmware Version 43
hm2/hm2_7i92.0: hm2_sserial_waitfor: Timeout (51mS) waiting for addr 5b00 &mask ffffffff val 800
hm2/hm2_7i92.0: DATA addr 5c00 after timeout: 800
hm2/hm2_7i92.0: failed to parse Module Descriptor 5
board fails HM2 registration
hm2_eth: rtapi_app_main: Invalid argument (-22)
<stdin>:2: waitpid failed /usr/bin/rtapi_app hm2_eth
<stdin>:2: /usr/bin/rtapi_app exited without becoming ready
<stdin>:2: insmod for hm2_eth failed, returned -1
Sometimes:
hm2_eth: loading Mesa AnyIO HostMot2 ethernet driver version 0.2
hm2_eth: 192.168.1.121: Hardware address: MAC
hm2_eth: discovered 7I92
hm2/hm2_7i92.0: Smart Serial Firmware Version 43
Board hm2_7i92.0.7i77.0.3 Hardware Mode 0 = standard
Board hm2_7i92.0.7i77.0.3 Software Mode 0 = input_output
hm2/hm2_7i92.0: hm2_sserial_waitfor: Timeout (24mS) waiting for addr 5d0c &mask ff00 val 0
hm2/hm2_7i92.0: DATA addr 5e0c after timeout: 400000
hm2/hm2_7i92.0: Timeout trying to read config data in sserial_get_bytes
hm2/hm2_7i92.0: hm2_sserial_waitfor: Timeout (51mS) waiting for addr 5b00 &mask ffffffff val 800
hm2/hm2_7i92.0: DATA addr 5c00 after timeout: 800
hm2/hm2_7i92.0: failed to parse Module Descriptor 5
board fails HM2 registration
hm2_eth: rtapi_app_main: Invalid argument (-22)
<stdin>:4: waitpid failed /usr/bin/rtapi_app hm2_eth
<stdin>:4: /usr/bin/rtapi_app exited without becoming ready
<stdin>:4: insmod for hm2_eth failed, returned -1
Or:
hm2_eth: loading Mesa AnyIO HostMot2 ethernet driver version 0.2
hm2_eth: 192.168.1.121: Hardware address: MAC
hm2_eth: discovered 7I92
hm2/hm2_7i92.0: Smart Serial Firmware Version 43
Board hm2_7i92.0.7i77.0.3 Hardware Mode 0 = standard
Board hm2_7i92.0.7i77.0.3 Software Mode 0 = input_output
Board hm2_7i92.0.7i77.0.3 Software Mode 1 = io_analog
hm2/hm2_7i92.0: hm2_sserial_waitfor: Timeout (25mS) waiting for addr 5b00 &mask ffffffff val 0
hm2/hm2_7i92.0: DATA addr 5c00 after timeout: 0
hm2/hm2_7i92.0: Timeout during do-it in sserial_get_bytes
hm2/hm2_7i92.0: hm2_sserial_waitfor: Timeout (25mS) waiting for addr 5b00 &mask ffffffff val 1008
hm2/hm2_7i92.0: DATA addr 5c00 after timeout: 1008
hm2/hm2_7i92.0: Timeout during do-it in sserial_get_bytes
Board hm2_7i92.0.7i77.0.3 Software Mode 2 = io_analog
hm2/hm2_7i92.0: hm2_sserial_waitfor: Timeout (51mS) waiting for addr 5b00 &mask ffffffff val 800
hm2/hm2_7i92.0: DATA addr 5c00 after timeout: 800
hm2/hm2_7i92.0: failed to parse Module Descriptor 5
board fails HM2 registration
hm2_eth: rtapi_app_main: Invalid argument (-22)
<stdin>:9: waitpid failed /usr/bin/rtapi_app hm2_eth
<stdin>:9: /usr/bin/rtapi_app exited without becoming ready
<stdin>:9: insmod for hm2_eth failed, returned -1
Or something like it. IE sometimes the 7i92 communicates with 7i77 more, sometimes less.

I tried both idc26 connectors on the 7i92H.

Any help would be appreciated.

Thanks.

Edit: I forgot to mention that after this the 7i77 usually has the green led rapidly blinking and the red led shut off. To turn it back to no green light and constant red light I have to communicate to it by mesaflash or power cycle the 12V part.
Last edit: 15 Oct 2017 14:33 by Machinen.

Please Log in or Create an account to join the conversation.

More
15 Oct 2017 14:35 - 15 Oct 2017 15:19 #100390 by PCW
Did you run a latency test on the host PC?

What is you host hardware?

The rapid green LED blinking likely means that the host has lost all communication with the 7I92 some time
during the sserial setup phase and its been left in the channel started phase but no commands have been issued
Last edit: 15 Oct 2017 15:19 by PCW.

Please Log in or Create an account to join the conversation.

More
15 Oct 2017 15:27 #100393 by Machinen
I actually did, the max jitter was on base thread under 50000ns and about half on servo thread.

The hardware is
sudo lshw -short
H/W path               Device     Class       Description
=========================================================
                                  system      To Be Filled By O.E.M.
/0                                bus         P4P800
/0/0                              memory      64KiB BIOS
/0/4                              processor   Intel(R) Pentium(R) 4 CPU 2.40GHz
/0/4/5                            memory      8KiB L1 cache
/0/4/6                            memory      512KiB L2 cache
/0/4/0.1                          processor   Logical CPU
/0/4/0.2                          processor   Logical CPU
/0/38                             memory      2GiB System Memory
/0/38/0                           memory      512MiB DIMM SDRAM Synchronous
/0/38/1                           memory      512MiB DIMM SDRAM Synchronous
/0/38/2                           memory      512MiB DIMM SDRAM Synchronous
/0/38/3                           memory      512MiB DIMM SDRAM Synchronous
/0/100                            bridge      82865G/PE/P DRAM Controller/Host-H
/0/100/1                          bridge      82865G/PE/P AGP Bridge
/0/100/1/0                        display     Radeon R200 QM [Radeon 9100]
/0/100/6                          generic     82865G/PE/P Processor to I/O Memor
/0/100/1d                         bus         82801EB/ER (ICH5/ICH5R) USB UHCI C
/0/100/1d.1                       bus         82801EB/ER (ICH5/ICH5R) USB UHCI C
/0/100/1d.2                       bus         82801EB/ER (ICH5/ICH5R) USB UHCI C
/0/100/1d.3                       bus         82801EB/ER (ICH5/ICH5R) USB UHCI C
/0/100/1d.7                       bus         82801EB/ER (ICH5/ICH5R) USB2 EHCI 
/0/100/1e                         bridge      82801 PCI Bridge
/0/100/1e/b            eth0       network     RTL-8139/8139C/8139C+
/0/100/1e/5            eth1       network     3c940 10/100/1000Base-T [Marvell]
/0/100/1f                         bridge      82801EB/ER (ICH5/ICH5R) LPC Interf
/0/100/1f.1            scsi0      storage     82801EB/ER (ICH5/ICH5R) IDE Contro
/0/100/1f.1/0.0.0      /dev/sda   disk        40GB ST340014A
/0/100/1f.1/0.0.0/1    /dev/sda1  volume      35GiB EXT4 volume
/0/100/1f.1/0.0.0/2    /dev/sda2  volume      1594MiB Extended partition
/0/100/1f.1/0.0.0/2/5  /dev/sda5  volume      1594MiB Linux swap / Solaris parti
/0/100/1f.1/0.1.0      /dev/sdb   disk        40GB ST340016A
/0/100/1f.1/0.1.0/1    /dev/sdb1  volume      35GiB EXT4 volume
/0/100/1f.1/0.1.0/2    /dev/sdb2  volume      1594MiB Extended partition
/0/100/1f.1/0.1.0/2/5  /dev/sdb5  volume      1594MiB Linux swap / Solaris parti
/0/100/1f.3                       bus         82801EB/ER (ICH5/ICH5R) SMBus Cont
/0/100/1f.5                       multimedia  82801EB/ER (ICH5/ICH5R) AC'97 Audi

I assumed something like it with the blinking green led.

Please Log in or Create an account to join the conversation.

More
15 Oct 2017 16:18 - 15 Oct 2017 16:18 #100395 by PCW
Which Ethernet is the 7I92 connected to?

Do you have the 192.168.1.121 range overlapping with the other Ethernet?

Normally its suggested to use 10.10.10.10 for the 7I92 and 10.10.10.1 for the host
because this does not overlap common NAT ranges
Last edit: 15 Oct 2017 16:18 by PCW.

Please Log in or Create an account to join the conversation.

More
15 Oct 2017 16:39 #100399 by Machinen
It's the eth1 3c940 10/100/1000Base-T [Marvell] - the motherboard network card. The extra eth0 is for home network. For local network, I am using 192.168.88.0/24 so there should not be any overlap.

Last evening I even tried the 10.10.10.10 settings but with no effect - or actually there was one effect, for some reason the mesaflash --device 7i92 --sserial took forever on the 7i77 part.

I can try it again.

Please Log in or Create an account to join the conversation.

More
15 Oct 2017 16:46 #100400 by PCW
I would try the RT8139 for the 7I92
Marvel and Broadcom are known not working for real time

On mesaflash you need to supply the address if you use 10.10.10.10
(and the host needs to be configured properly as well)

Please Log in or Create an account to join the conversation.

More
15 Oct 2017 16:51 #100401 by Machinen
OK, did change+restart and tried:
mesaflash --device 7i92 --addr 10.10.10.10 --sserial --verbose
SSLBP port 0:
  SSLBP Version: 1.43
  SSLBP Channels: 6
  SSLBP Baud Rate: 2500000
  interface type: 12
  interface width: 8
  SSLBP Channel Start: 112
  SSLBP Channel Stride: 50
  SSLBP Processor Type: d8
  SSLBP Clock: 100 MHz
And blinking cursor at the end.
Then after minute or so
  sserial device at channel 3: 7I77 GPIO
And blinking cursor again.

Please Log in or Create an account to join the conversation.

More
15 Oct 2017 17:05 #100402 by PCW
Weird, Host network setup error?
what does
/sbin/ifconfig
show?

Please Log in or Create an account to join the conversation.

More
15 Oct 2017 17:43 - 15 Oct 2017 17:47 #100406 by Machinen
Had to change local language

Ok, the output:
/sbin/ifconfig
eth0      Link encap:Ethernet  HWaddr 00:08:54:05:53:76  
          inet addr:192.168.88.86  Bcast:192.168.88.255  Mask:255.255.255.0
          inet6 addr: fe80::208:54ff:fe05:5376/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:316 errors:0 dropped:0 overruns:0 frame:0
          TX packets:199 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:75731 (73.9 KiB)  TX bytes:24839 (24.2 KiB)
          Interrupt:22 Base address:0xe400 

eth1      Link encap:Ethernet  HWaddr 00:0c:6e:41:73:79  
          inet addr:10.10.10.1  Bcast:10.255.255.255  Mask:255.0.0.0
          inet6 addr: fe80::20c:6eff:fe41:7379/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:980 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1551 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:62770 (61.2 KiB)  TX bytes:104674 (102.2 KiB)
          Interrupt:22 

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:12 errors:0 dropped:0 overruns:0 frame:0
          TX packets:12 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:720 (720.0 B)  TX bytes:720 (720.0 B)

EDIT: OK, did quick change of eth interfaces, reloaded networking and I will be damned, it works! Frankly, I probably wouldn't try it for some time, so thanks a lot.
Last edit: 15 Oct 2017 17:47 by Machinen.

Please Log in or Create an account to join the conversation.

More
20 Oct 2017 09:11 #100578 by tommylight
For reliable eth connection when using 2 or more eth interfaces on the same computer, this has to be done for the port that the 7i92 or 7i76E is connected to :
Network manager chose "edit connections", double click on the wired connection , go to "ipv4" tab, change from automatic DHCP to manual, under it add the propper address ( 10.10.10.x or 192.168.1.x depending on the address set on the mesa board ), on that same page there is another button on the bottom right side ( am on the phone so i do not recall the label but most probably Advanced ), click on " use this connection for local....something. ok. Ok. Ok That is it.

Please Log in or Create an account to join the conversation.

Moderators: PCWjmelson
Time to create page: 0.080 seconds
Powered by Kunena Forum