Mesa 7i93/7i33/7i37 - easiest install?

More
30 Nov 2017 13:51 #102528 by idea
none, I have an opto-isolator card i'll use for external I/O.

Are the daughter cards not simply protected breakout boards or SPI multipliers etc.?

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

More
30 Nov 2017 14:13 #102530 by PCW
Mesa's daughterboards vary in complexity from ones with simple input conditioning/buffers
to ones that have multiple processors.

Things like PWM generation, step generation, encoder counting, etc
are usually done in the FPGA so simple buffered/isolated daughtercards are fine, but
Its likely you would need custom firmware for the FPGA to match the pinout of your
optoisolator card

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

More
30 Nov 2017 14:26 #102531 by idea
Thats what I understood from the meager information on the mesa website. i'm not fussed about the pinout from the FPGA, i'll solder up a connector to match.

Are there any references for using the mesa ethernet boards? the 7i93 looks like it was only recently added as supported in linuxcnc and i've been unable to find much information regarding it.

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

More
30 Nov 2017 14:43 #102532 by PCW
Basically all the Ethernet cards are identical as far as the LinuxCNC side goes, only the card name is different
The very specific information on the hal pins and parameters is in the hostmot2 manual page, This applies to all Mesa FPGA cards used with LinuxCNC.

The Ethernet driver setup is in the hm2_eth manual page.

While the 7I93 is not supported directly by the setup utility (pncconf), as indicated above you can choose another similar FPGA card, create hal and ini files and then edit these to support the 7I93

To check the actual firmware pinout, you can use mesaflash:

mesaflash --device 7i93 --readhmid

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

More
30 Nov 2017 15:17 #102536 by idea
Thanks, that makes things a bit clearer. As I mentioned i've got as far as editing a basis file from 7i43-4 and svst4_4 as per the instructions.

But when i load up linuxcnc I get the error "parameter or pin 'hm2_7i93.0.pwmgen.pwm_frequency' not found" - line 9. The current hal and ini files are attached.

Do you have any suggestions?
Attachments:

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

More
30 Nov 2017 15:34 #102537 by PCW
what does

mesaflash --device 7i93 --readhmid
(assuming IP address is 192.168.1.121)

or

mesaflash --device 7i93 --addr 10.10.10.10 --readhmid
(assuming IP address is 10.10.10.10)

print?

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

More
01 Dec 2017 00:45 #102547 by idea
The command gives;
david@linuxcnc:~$ mesaflash --device 7i93 --readhmid
Configuration Name: HOSTMOT2

General configuration information:

  BoardName : MESA7I93
  FPGA Size: 9 KGates
  FPGA Pins: 144
  Number of IO Ports: 2
  Width of one I/O port: 24
  Clock Low frequency: 100.0000 MHz
  Clock High frequency: 200.0000 MHz
  IDROM Type: 3
  Instance Stride 0: 4
  Instance Stride 1: 64
  Register Stride 0: 256
  Register Stride 1: 256

Modules in configuration:

  Module: DPLL
  There are 1 of DPLL in configuration
  Version: 0
  Registers: 7
  BaseAddress: 7000
  ClockFrequency: 100.000 MHz
  Register Stride: 256 bytes
  Instance Stride: 4 bytes

  Module: WatchDog
  There are 1 of WatchDog in configuration
  Version: 0
  Registers: 3
  BaseAddress: 0C00
  ClockFrequency: 100.000 MHz
  Register Stride: 256 bytes
  Instance Stride: 4 bytes

  Module: IOPort
  There are 2 of IOPort in configuration
  Version: 0
  Registers: 5
  BaseAddress: 1000
  ClockFrequency: 100.000 MHz
  Register Stride: 256 bytes
  Instance Stride: 4 bytes

  Module: QCount
  There are 4 of QCount in configuration
  Version: 2
  Registers: 5
  BaseAddress: 3000
  ClockFrequency: 100.000 MHz
  Register Stride: 256 bytes
  Instance Stride: 4 bytes

  Module: PWM
  There are 2 of PWM in configuration
  Version: 0
  Registers: 5
  BaseAddress: 4100
  ClockFrequency: 200.000 MHz
  Register Stride: 256 bytes
  Instance Stride: 4 bytes

  Module: StepGen
  There are 4 of StepGen in configuration
  Version: 2
  Registers: 10
  BaseAddress: 2000
  ClockFrequency: 100.000 MHz
  Register Stride: 256 bytes
  Instance Stride: 4 bytes

  Module: LED
  There are 1 of LED in configuration
  Version: 0
  Registers: 1
  BaseAddress: 0200
  ClockFrequency: 100.000 MHz
  Register Stride: 256 bytes
  Instance Stride: 4 bytes

Configuration pin-out:

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

 1      0   IOPort       StepGen          0        Step/Table1     (Out)
 3      1   IOPort       StepGen          0        Dir/Table2      (Out)
 5      2   IOPort       StepGen          1        Step/Table1     (Out)
 7      3   IOPort       StepGen          1        Dir/Table2      (Out)
 9      4   IOPort       QCount           0        Quad-A          (In)
11      5   IOPort       QCount           2        Quad-A          (In)
13      6   IOPort       QCount           0        Quad-B          (In)
15      7   IOPort       QCount           2        Quad-B          (In)
17      8   IOPort       QCount           0        Quad-IDX        (In)
19      9   IOPort       QCount           2        Quad-IDX        (In)
21     10   IOPort       QCount           1        Quad-A          (In)
23     11   IOPort       QCount           3        Quad-A          (In)
25     12   IOPort       QCount           1        Quad-B          (In)
27     13   IOPort       QCount           3        Quad-B          (In)
29     14   IOPort       QCount           1        Quad-IDX        (In)
31     15   IOPort       QCount           3        Quad-IDX        (In)
33     16   IOPort       StepGen          2        Step/Table1     (Out)
35     17   IOPort       StepGen          2        Dir/Table2      (Out)
37     18   IOPort       StepGen          3        Step/Table1     (Out)
39     19   IOPort       StepGen          3        Dir/Table2      (Out)
41     20   IOPort       PWM              0        PWM             (Out)
43     21   IOPort       PWM              0        Dir             (Out)
45     22   IOPort       PWM              1        PWM             (Out)
47     23   IOPort       PWM              1        Dir             (Out)

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

 1     24   IOPort       None           
 3     25   IOPort       None           
 5     26   IOPort       None           
 7     27   IOPort       None           
 9     28   IOPort       None           
11     29   IOPort       None           
13     30   IOPort       None           
15     31   IOPort       None           
17     32   IOPort       None           
19     33   IOPort       None           
21     34   IOPort       None           
23     35   IOPort       None           
25     36   IOPort       None           
27     37   IOPort       None           
29     38   IOPort       None           
31     39   IOPort       None           
33     40   IOPort       None           
35     41   IOPort       None           
37     42   IOPort       None           
39     43   IOPort       None           
41     44   IOPort       None           
43     45   IOPort       None           
45     46   IOPort       None           
47     47   IOPort       None
Attachments:

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

More
01 Dec 2017 01:38 - 01 Dec 2017 01:42 #102548 by PCW
Well that looks OK (and has 2 pwmgens), so its quite odd the the pwm frequency pin is missing.
I just tested a stock 7I93 here and its PWM pins/parameters show up fine. which makes me think that some other
error is preventing LinuxCNC from starting

Can you start LinuxCNC from the command line and paste the entire output here?

EDIT
I also have never checked if the driver default to a board IP address of 192.168.1.121
So it may require the board_ip token
Last edit: 01 Dec 2017 01:42 by PCW.

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

More
01 Dec 2017 03:08 #102550 by idea
Well it got further and connected with the ip address added, and then removing the encoders from the base definition gets it to load up without errors. I need to rig up something to test on the oscilloscope that it is generating output pulses but it looks positive.

I will have a look tomorrow to see if i can get the encoder section to behave itself.

Hopefully this will also be useful for others wanting to use the ethernet driven modules.

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

Time to create page: 0.096 seconds
Powered by Kunena Forum