Best/easiest way to hook up a 7i73 to a PC?

More
10 Feb 2022 01:01 #234446 by arvidb
Hi,

Is there some "easy" way to hook up a 7i73 Pendant/Control Panel interface to a PC? I.e. without having to use a parallel cable or any external cabinets.

I have a left over 6i25 card, can that be used, perhaps with a small bidirectional RS-422 converter card as the electrical interface?

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

More
28 Feb 2022 22:49 #236052 by andypugh
The 7i73 needs a smart-serial link. So you would need some sort of Mesa card (like your 6i25) as the smart-serial host.
I think that some people have had luck with a simple converter like you suggest.
The easy way is a 7i74 card on the 6i25. Not the cheap way, though.
The following user(s) said Thank You: arvidb

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

More
19 May 2022 08:40 #243323 by arvidb
So I made this contraption:


Nothing exploded neither when I powered on the computer nor when I hooked up the 7i73 - so that's a big win! :) Unfortunately the 7i73 is also not being detected.

I have flashed the 7i77_7i74 firmware to my 6i25:
$ sudo mesaflash --device 5i25 --readhmid
/.../
Configuration pin-out:

IO Connections for P3
Pin#                  I/O   Pri. func    Sec. func       Chan      Pin func        Pin Dir

 1                      0   IOPort       SSerial          0        TXEn2           (Out)
14                      1   IOPort       SSerial          0        TXData2         (Out)
 2                      2   IOPort       SSerial          0        RXData2         (In)
15                      3   IOPort       SSerial          0        TXData1         (Out)
 3                      4   IOPort       SSerial          0        RXData1         (In)
16                      5   IOPort       SSerial          0        TXData0         (Out)
 4                      6   IOPort       SSerial          0        RXData0         (In)
17                      7   IOPort       MuxedQCountSel   0        MuxSel0         (Out)
 5                      8   IOPort       MuxedQCount      0        MuxQ-A          (In)
 6                      9   IOPort       MuxedQCount      0        MuxQ-B          (In)
 7                     10   IOPort       MuxedQCount      0        MuxQ-IDX        (In)
 8                     11   IOPort       MuxedQCount      1        MuxQ-A          (In)
 9                     12   IOPort       MuxedQCount      1        MuxQ-B          (In)
10                     13   IOPort       MuxedQCount      1        MuxQ-IDX        (In)
11                     14   IOPort       MuxedQCount      2        MuxQ-A          (In)
12                     15   IOPort       MuxedQCount      2        MuxQ-B          (In)
13                     16   IOPort       MuxedQCount      2        MuxQ-IDX        (In)

IO Connections for P2
Pin#                  I/O   Pri. func    Sec. func       Chan      Pin func        Pin Dir

 1                     17   IOPort       SSerial          1        RXData0         (In)
14                     18   IOPort       SSerial          1        RXData1         (In)
 2                     19   IOPort       SSerial          1        RXData2         (In)
15                     20   IOPort       SSerial          1        RXData3         (In)
 3                     21   IOPort       SSerial          1        TXData0         (Out)
16                     22   IOPort       SSerial          1        TXData1         (Out)
 4                     23   IOPort       SSerial          1        TXData2         (Out)
17                     24   IOPort       SSerial          1        TXData3         (Out)
 5                     25   IOPort       SSerial          1        RXData4         (In)
 6                     26   IOPort       SSerial          1        RXData5         (In)
 7                     27   IOPort       SSerial          1        RXData6         (In)
 8                     28   IOPort       SSerial          1        RXData7         (In)
 9                     29   IOPort       SSerial          1        TXData4         (Out)
10                     30   IOPort       SSerial          1        TXData5         (Out)
11                     31   IOPort       SSerial          1        TXData6         (Out)
12                     32   IOPort       SSerial          1        TXData7         (Out)
13                     33   IOPort       SSerial          1        TXEn7           (Out)

On starting linuxcnc (with the 7i73 connected) I get this:
hm2_pci: loading Mesa AnyIO HostMot2 driver version 0.7
hm2_pci: discovered 5i25 at 0000:04:00.0
hm2/hm2_5i25.0: Low Level init 0.15
hm2/hm2_5i25.0: Smart Serial Firmware Version 43
Board hm2_5i25.0.7i77.0.1 Hardware Mode 0 = standard
Board hm2_5i25.0.7i77.0.1 Software Mode 0 = analogout_enables
hm2/hm2_5i25.0: Smart Serial Firmware Version 43
hm2/hm2_5i25.0: 34 I/O Pins used:
hm2/hm2_5i25.0:     IO Pin 000 (P3-01): IOPort
hm2/hm2_5i25.0:     IO Pin 001 (P3-14): IOPort
hm2/hm2_5i25.0:     IO Pin 002 (P3-02): IOPort
hm2/hm2_5i25.0:     IO Pin 003 (P3-15): Smart Serial Interface #0, pin tx1 (Output)
hm2/hm2_5i25.0:     IO Pin 004 (P3-03): Smart Serial Interface #0, pin rx1 (Input)
hm2/hm2_5i25.0:     IO Pin 005 (P3-16): IOPort
hm2/hm2_5i25.0:     IO Pin 006 (P3-04): IOPort
hm2/hm2_5i25.0:     IO Pin 007 (P3-17): Muxed Encoder Select #0, pin Mux Select 0 (Output)
hm2/hm2_5i25.0:     IO Pin 008 (P3-05): Muxed Encoder #0, pin Muxed A (Input)
hm2/hm2_5i25.0:     IO Pin 009 (P3-06): Muxed Encoder #0, pin Muxed B (Input)
hm2/hm2_5i25.0:     IO Pin 010 (P3-07): Muxed Encoder #0, pin Muxed Index (Input)
hm2/hm2_5i25.0:     IO Pin 011 (P3-08): Muxed Encoder #1, pin Muxed A (Input)
hm2/hm2_5i25.0:     IO Pin 012 (P3-09): Muxed Encoder #1, pin Muxed B (Input)
hm2/hm2_5i25.0:     IO Pin 013 (P3-10): Muxed Encoder #1, pin Muxed Index (Input)
hm2/hm2_5i25.0:     IO Pin 014 (P3-11): Muxed Encoder #2, pin Muxed A (Input)
hm2/hm2_5i25.0:     IO Pin 015 (P3-12): Muxed Encoder #2, pin Muxed B (Input)
hm2/hm2_5i25.0:     IO Pin 016 (P3-13): Muxed Encoder #2, pin Muxed Index (Input)
hm2/hm2_5i25.0:     IO Pin 017 (P2-01): IOPort
hm2/hm2_5i25.0:     IO Pin 018 (P2-14): IOPort
hm2/hm2_5i25.0:     IO Pin 019 (P2-02): IOPort
hm2/hm2_5i25.0:     IO Pin 020 (P2-15): IOPort
hm2/hm2_5i25.0:     IO Pin 021 (P2-03): IOPort
hm2/hm2_5i25.0:     IO Pin 022 (P2-16): IOPort
hm2/hm2_5i25.0:     IO Pin 023 (P2-04): IOPort
hm2/hm2_5i25.0:     IO Pin 024 (P2-17): IOPort
hm2/hm2_5i25.0:     IO Pin 025 (P2-05): IOPort
hm2/hm2_5i25.0:     IO Pin 026 (P2-06): IOPort
hm2/hm2_5i25.0:     IO Pin 027 (P2-07): IOPort
hm2/hm2_5i25.0:     IO Pin 028 (P2-08): IOPort
hm2/hm2_5i25.0:     IO Pin 029 (P2-09): IOPort
hm2/hm2_5i25.0:     IO Pin 030 (P2-10): IOPort
hm2/hm2_5i25.0:     IO Pin 031 (P2-11): IOPort
hm2/hm2_5i25.0:     IO Pin 032 (P2-12): IOPort
hm2/hm2_5i25.0:     IO Pin 033 (P2-13): IOPort
hm2/hm2_5i25.0: registered
hm2_5i25.0: initialized AnyIO board at 0000:04:00.0

Obviously I would have liked to see a Smart Serial Interface on P2-05 and P2-09...

The 7i73 CR1/FAULT LED lights up as soon as the 7i73 is connected, and stays lit also when I start linuxcnc.

The only things I do with the 5i25 in my hal is:
loadrt hm2_pci config="sserial_port_1=33333333"

addf hm2_5i25.0.read          servo-thread
addf hm2_5i25.0.write         servo-thread

I'm *guessing* that the P2/7i74 will be sserial port 1 in this config? Anyway it shouldn't affect detection.

Before I dig out the oscilloscope and start to debug this it would be great if someone could confirm (or not) that this should work at least in principle. PCW, if you see this?
Attachments:

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

More
19 May 2022 09:04 #243324 by tommylight
Try setting the port to 00000000, not 33333333.
A bit fuzzy on this as it's been some time since i had time to play with those toys.
If that works, then change the mode to 1 or 2, so 01000200 or similar.
Does 7i73 have "mode 3" ? I forgot. :( I still have one in a suitcase.
The following user(s) said Thank You: arvidb

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

More
19 May 2022 09:12 - 19 May 2022 20:09 #243326 by arvidb
It does have a mode 3 which turns some of the IOs into MPG inputs. I had the same 7i73 plugged in to my 7i77 sserial interface earlier using mode 3 and could get encoder counts. So it's probably not that - but I'll check it out when I'm back at the linuxcnc computer. Thanks for looking!
Last edit: 19 May 2022 20:09 by arvidb. Reason: Strikeout wrong info
The following user(s) said Thank You: tommylight

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

More
19 May 2022 10:25 #243330 by arvidb

Does 7i73 have "mode 3" ? I forgot. :( I still have one in a suitcase.

*doh* I had my 7i77 configured to mode 3 for MPG use and confused it for an 7i73 setting. After removing the config= parameter for sserial_port_1 I now have sserial interfaces on the 6i25 IOs:
hm2: loading Mesa HostMot2 driver version 0.15
hm2_pci: loading Mesa AnyIO HostMot2 driver version 0.7
hm2_pci: discovered 5i25 at 0000:04:00.0
hm2/hm2_5i25.0: Low Level init 0.15
hm2/hm2_5i25.0: Smart Serial Firmware Version 43
Board hm2_5i25.0.7i77.0.1 Hardware Mode 0 = standard
Board hm2_5i25.0.7i77.0.1 Software Mode 0 = analogout_enables
hm2/hm2_5i25.0: 34 I/O Pins used:
hm2/hm2_5i25.0:     IO Pin 000 (P3-01): IOPort
hm2/hm2_5i25.0:     IO Pin 001 (P3-14): IOPort
hm2/hm2_5i25.0:     IO Pin 002 (P3-02): IOPort
hm2/hm2_5i25.0:     IO Pin 003 (P3-15): Smart Serial Interface #0, pin tx1 (Output)
hm2/hm2_5i25.0:     IO Pin 004 (P3-03): Smart Serial Interface #0, pin rx1 (Input)
hm2/hm2_5i25.0:     IO Pin 005 (P3-16): IOPort
hm2/hm2_5i25.0:     IO Pin 006 (P3-04): IOPort
hm2/hm2_5i25.0:     IO Pin 007 (P3-17): Muxed Encoder Select #0, pin Mux Select 0 (Output)
hm2/hm2_5i25.0:     IO Pin 008 (P3-05): Muxed Encoder #0, pin Muxed A (Input)
hm2/hm2_5i25.0:     IO Pin 009 (P3-06): Muxed Encoder #0, pin Muxed B (Input)
hm2/hm2_5i25.0:     IO Pin 010 (P3-07): Muxed Encoder #0, pin Muxed Index (Input)
hm2/hm2_5i25.0:     IO Pin 011 (P3-08): Muxed Encoder #1, pin Muxed A (Input)
hm2/hm2_5i25.0:     IO Pin 012 (P3-09): Muxed Encoder #1, pin Muxed B (Input)
hm2/hm2_5i25.0:     IO Pin 013 (P3-10): Muxed Encoder #1, pin Muxed Index (Input)
hm2/hm2_5i25.0:     IO Pin 014 (P3-11): Muxed Encoder #2, pin Muxed A (Input)
hm2/hm2_5i25.0:     IO Pin 015 (P3-12): Muxed Encoder #2, pin Muxed B (Input)
hm2/hm2_5i25.0:     IO Pin 016 (P3-13): Muxed Encoder #2, pin Muxed Index (Input)
hm2/hm2_5i25.0:     IO Pin 017 (P2-01): Smart Serial Interface #1, pin rx0 (Input)
hm2/hm2_5i25.0:     IO Pin 018 (P2-14): Smart Serial Interface #1, pin rx1 (Input)
hm2/hm2_5i25.0:     IO Pin 019 (P2-02): Smart Serial Interface #1, pin rx2 (Input)
hm2/hm2_5i25.0:     IO Pin 020 (P2-15): Smart Serial Interface #1, pin rx3 (Input)
hm2/hm2_5i25.0:     IO Pin 021 (P2-03): Smart Serial Interface #1, pin tx0 (Output)
hm2/hm2_5i25.0:     IO Pin 022 (P2-16): Smart Serial Interface #1, pin tx1 (Output)
hm2/hm2_5i25.0:     IO Pin 023 (P2-04): Smart Serial Interface #1, pin tx2 (Output)
hm2/hm2_5i25.0:     IO Pin 024 (P2-17): Smart Serial Interface #1, pin tx3 (Output)
hm2/hm2_5i25.0:     IO Pin 025 (P2-05): Smart Serial Interface #1, pin rx4 (Input)
hm2/hm2_5i25.0:     IO Pin 026 (P2-06): Smart Serial Interface #1, pin rx5 (Input)
hm2/hm2_5i25.0:     IO Pin 027 (P2-07): Smart Serial Interface #1, pin rx6 (Input)
hm2/hm2_5i25.0:     IO Pin 028 (P2-08): Smart Serial Interface #1, pin rx7 (Input)
hm2/hm2_5i25.0:     IO Pin 029 (P2-09): Smart Serial Interface #1, pin tx4 (Output)
hm2/hm2_5i25.0:     IO Pin 030 (P2-10): Smart Serial Interface #1, pin tx5 (Output)
hm2/hm2_5i25.0:     IO Pin 031 (P2-11): Smart Serial Interface #1, pin tx6 (Output)
hm2/hm2_5i25.0:     IO Pin 032 (P2-12): Smart Serial Interface #1, pin tx7 (Output)
hm2/hm2_5i25.0:     IO Pin 033 (P2-13): Smart Serial Interface #1, pin txen7 (Output)
hm2/hm2_5i25.0: registered
hm2_5i25.0: initialized AnyIO board at 0000:04:00.0

Thank you tommy, I'd have gone crazy trying to find this!

Unfortunately the 7i73 is still not detected. And its CR1/FAULT LED stays on just like before.

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

More
19 May 2022 11:22 #243332 by andypugh
loadrt hm2_pci config="sserial_port_1=33333333"
addf hm2_5i25.0.read servo-thread
addf hm2_5i25.0.write servo-thread

You are missing one crucial step...
start
The following user(s) said Thank You: arvidb

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

More
19 May 2022 23:36 #243370 by arvidb

You are missing one crucial step...
start


Now I'm a bit confused. The HAL lines shown above are added to an already working EtherCAT config, in a separate file pulled in by an additional HALFILE statement in the .ini file. There is no 'start' statement anywhere, but both EtherCAT and the MPG input of my 6i25/7i77 combo has been working great anyway.

Adding 'start' makes no difference unfortunately. But start or no start, in HAL Meter I can see hm2_5i25.0.gpio.025.in (the RX line I've connected to the TTL/RS422 converter board) toggle from FALSE to TRUE when I disconnect the 7i73. So at least there is some life.

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

More
19 May 2022 23:43 #243371 by arvidb
A bit of a sanity check: the 7i73 RX (CAT5 orange) should be connected to the 5i25 TX, and vice versa, right?

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

More
19 May 2022 23:51 #243372 by PCW
Yes, though you may have to swap the polarity (TX+/- and RX+/-)
The following user(s) said Thank You: arvidb

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

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