Mesa Electronics
Overview
Mesa Electronics is a company that sells LinuxCNC compatible FPGA cards/boards and expansion boards.
Connectivity
Their cards are traditionally PCI or PCI-Express interfaced, but there are also Ethernet connected cards. The Ethernet solution is often more convenient for several reasons:
- remote location
- electrical isolation
- requires only a free Ethernet port on the host
Firmware
For the ethernet based boards, the firmware can be flashed over the network using the mesaflash
utility. You must know which board it is, and the IP address of the board. The board can usually have jumpers set to have a fixed known IP, so as long as you manually configure the ethernet interface of the host to be within the same subnet as the card, you should be able to ping it.
For example, the default IP is usually 192.168.1.121:
ping 192.168.1.121
And you can read the current configuration of the card using the following command:
mesaflash --device 7i92 --addr 192.168.1.121 --readhmid
Newer versions of mesaflash
can also cross reference the terminal block pinout if you tell it what daughterboard is being used in combination with the configuration. For example, for a 7i96
25-pin daughter board connected to a 7i92
Ethernet FPGA card, where you might use the 7i92_7i76x1D.bit
pre-made configuration, the pins can be queried:
mesaflash --device 7i92 --addr 192.168.1.121 --readhmid --dbname1 7i76
To flash a new bitfile, issue a command such as this:
mesaflash --device 7i92 --addr 192.168.1.121 --write 7i92_7i77x2.bit
The board must be power cycled after flashing for the new firmware/settings to take effect.
To test the configuration, and make sure any "smart serial" daughterboards are being discovered, you can manually load the hostmot2 driver using halrun
(use the appropriate IP, and config="..." parameter if necessary):
# in the Linux shell halrun # within the halrun command prompt loadrt hostmot2 loadrt hm2_eth board_ip="192.168.1.121"
Ethernet Boards
25-pin boards
- 7I92 Ethernet Anything I/O card
- 7I92M Ethernet Anything I/O card
- 7I92H Ethernet Anything I/O card
- 7I80DB-16 Ethernet Anything I/O card
- 7I80DB-25 Ethernet Anything I/O card