CNC build: Grizzley G0704 LinuxCNC controlled with a Mesa 7i76
7i76e user manuel
http://www.mesanet.com/pdf/parallel/7i76eman.pdf
So to get linuxcnc working with the MESA 7i76e you are going to need an appropriate realtime kernel. Here are the steps provided to me by PCW from Mesa Electronics, I may have made slight modifications based on notes or changes I needed to impliment based on my experience.
cd ~
mkdir rtlinux
cd rtlinux
wget ftp://ftp.kernel.org/pub/linux/kernel/v3.x/linux-3.18.11.tar.xz
wget https://www.kernel.org/pub/linux/kernel/projects/rt/3.18/patch-3.18.11-rt7.patch.gz
tar -xpf linux-3.18.11.tar.xz
gunzip patch-3.18.11-rt7.patch.gz
// now copy the contents of rtconfig into .config inside linux-3.18.11
// this can be found at http://freeby.mesanet.com/rtconfig
cp patch-3.18.11-rt7.patch linux-3.18.11
cd linux-3.18.11
cat patch-3.18.11-rt7.patch | patch -p1
make xconfig
//ok at this point a window will open, make sure "fully premptable kernel" is enabled
//then close the kernel config, the configuration file should have enabled this.
make
// for my machine(asrock 1900-itx), make took a good chunck of the day..
// I am aware there are ways you can issue the make command that will utilise more of the processors // but I was unable to issue them without complicating the task beyond my means to figure out.
// I am aware there are ways you can issue the make command that will utilise more of the processors // but I was unable to issue them without complicating the task beyond my means to figure out.
sudo make modules_install
sudo make install
// now when you reboot you should have a fully premptable kernel, which you should see at the top of grub apon booting
/****** instructions on how to get a copy of linuxcnc that you want for the 7i76e *****/
// you will need this or else the regular branch of linuxcnc won't have the stuff you need to talk to
// the 7i76e
// the 7i76e
cd ~
sudo apt-get install git-core gitk git-gui
sudo apt-get build-dep linuxcnc
sudo apt-get install linux-image-3.2.0-4-rt-686-pae
sudo apt-get install libudev-dev
sudo apt-get install iptables-persistent
// save rules yes
// save rules yes
git clone git://git.linuxcnc.org/git/linuxcnc.git linuxcnc-dev
cd linuxcnc-dev
git checkout master
git pull
cd src
./autogen.sh
./configure --with-realtime=uspace
make
sudo make setuid
cd ..
. scripts/rip-environment
// you need to run this command each time you run linuxcnc
man hm2_eth
// you need to run this command each time you run linuxcnc
man hm2_eth
// follow the instructions in the man to get things further set up
address of 7i76 card:
192.168.1.121
Add these lines to the file /etc/network/interfaces to configure eth1
with a static address:
auto eth1
iface eth1 inet static
address 192.168.1.1
These instructions assume your dedicated network interface is "eth1",
192.168.1/24
The board must have its hardware loaded on the board by the
mesaflash(1) program.
By default, Linux may transmit IPv6 packets on all interfaces, even if
they are not explicitly configured with global IPv6 addresses. In
/etc/sysctl.conf, disable ipv6 on eth1 by adding this line:
net.ipv6.conf.eth1.disable_ipv6=1
Configure iptables for exclusive access
Install the package "iptables-persistent" and put this in the file
/etc/iptables/rules.v4 (remove leading whitespace from every line):
*filter
:OUTPUT ACCEPT [0:0]
:hm2-eth-rules-output - [0:0]
-A OUTPUT -j hm2-eth-rules-output
COMMIT
If this configuration is present, then when hm2_eth loads it will add
rules restricting use of the interface to only its own UDP socket; at
(normal) exit, it will remove the rules. You can manually clear the
rules with sudo iptables -F hm2-eth-rules-output.
If you already use iptables, create an empty chain named "hm2-eth-
rules-output" (you must use this name; it is hardcoded in hm2_eth), and
place a call to this rule early in the OUTPUT chain, before any rules
that could potentially pass packets out eth1.
my particular machine only had one ethernet port
so I had to purchase a usb ethernet adapter and configure the network interfaces
set the w2, w3 jumpers
then I modified 7i76es1.ini to connect to the address
(09:25:19 PM) PCW: step_type 0 = step/dir
(09:25:21 PM) PCW: step_type 1 = up/down CW/CCW
(09:25:22 PM) PCW: step_type 2 and > = Table driven
(09:26:10 PM) Computer_barf: my x axis is stuck but I believe thats probably mechanical
(09:26:15 PM) PCW: man hostmot2 for the meaning of all the hardware parameters
(09:26:22 PM) andypugh: furrywolf: Yes, they are pressed in.
(09:26:34 PM) andypugh: But that’s a mad price
(09:26:57 PM) furrywolf: yeah, that's just a random
forum link. it's for a hitachi that's identical to my bosch. figure
that one out!
(09:27:22 PM) PCW: also you must determine the max velocity and acceleration (so expect stalls until you get these set)
(09:27:30 PM) andypugh: furrywolf:
http://simplybearings.co.uk/shop/product_detail.php?products_id=152959&gclid=CJaji9DzocUCFUyWtAodpGMAwg
(09:27:39 PM) andypugh: Is that a less frightening price?
(09:27:43 PM) PCW: bbl dinner
(09:27:48 PM) Computer_barf: PCW: commentary logged to
notes, at this point im going to slow down and read over all the stuff
ive saved, i wrote down before about the velocity and accelleration
settings.
(09:27:59 PM) MrFluffy: budget bearing, does that mean it comes pre worn out?
(09:28:09 PM) PCW: Well that was easy :-)
(09:28:18 PM) PCW left the room (quit: Quit: ChatZilla 0.9.91.1 [Firefox 37.0.2/20150415140819]).
TB6
inputs
00 estop in
01 x home
02 y home
03 z home
04 probe in
05 x maximum limit
06 y maximum limit
07 z maximim limit
08
09
10
11
12
13
14
15
output's
00 ESTOP Out
01 Coolant Flood
02
03
04
05
06
0flashing the 7i76
ive not done this but this is the command I believe needs to be run to do so:
mesaflash --device 7i76e --addr 10.10.10.10 --readhmid