Sieg KX3 and 5i25. Seeking firmware.
23 Jun 2016 11:11 #76483
by mooser
Replied by mooser on topic Sieg KX3 and 5i25. Seeking firmware.
I'll try that
Other than the HAL file, what else needs to be created? (.ini?) or is that the only one?
M
Other than the HAL file, what else needs to be created? (.ini?) or is that the only one?
M
Please Log in or Create an account to join the conversation.
23 Jun 2016 11:14 #76484
by andypugh
Replied by andypugh on topic Sieg KX3 and 5i25. Seeking firmware.
Pncconf will create a config which is approximately right. The INI file should be OK, but the HAL file will need a few changes.
Please Log in or Create an account to join the conversation.
23 Jun 2016 19:24 #76509
by mooser
Replied by mooser on topic Sieg KX3 and 5i25. Seeking firmware.
OK so back at it.
Removed everything and starting from scratch
Launch PNCconf and create a new config
Went through a couple of tries and can't find where to pretend I'm using a G540.
Tried PNCconf edit existing config but there are no configs anywhere I can find.
Tried copy the G540 ini, hal and xml files into the config dir and using the LinuxCNC config picker app, selected the g540 and after a few seconds it gives an error
hm2_5i25.0.pet.watchdog not found ./hm2_g540-stepper.hal:52 addf failed
Spent an hour at lunch going through the wiki pages.... I'm just so completely lost
Arrrgggg
Removed everything and starting from scratch
Launch PNCconf and create a new config
Went through a couple of tries and can't find where to pretend I'm using a G540.
Tried PNCconf edit existing config but there are no configs anywhere I can find.
Tried copy the G540 ini, hal and xml files into the config dir and using the LinuxCNC config picker app, selected the g540 and after a few seconds it gives an error
hm2_5i25.0.pet.watchdog not found ./hm2_g540-stepper.hal:52 addf failed
Spent an hour at lunch going through the wiki pages.... I'm just so completely lost
Arrrgggg
Please Log in or Create an account to join the conversation.
23 Jun 2016 19:50 #76511
by PCW
Replied by PCW on topic Sieg KX3 and 5i25. Seeking firmware.
Forgot that pncconf doesnt have a g5450 config, try probrfx2 (as similar parallel port like config)
Please Log in or Create an account to join the conversation.
24 Jun 2016 01:51 #76531
by mooser
Replied by mooser on topic Sieg KX3 and 5i25. Seeking firmware.
OK, maybe slight progress
Created a new config using probrfx2
attempted to set some things knowing I'll have to fix the HAL
saved the config and tried running linuxcnc
error on a bunch of spindle stuff so I opened the HAL and commented out the offending lines, re-ran, re-commented out new lines all related to spindle. had to open the mitsub HAL and comment it out also
Finally linuxcnc loaded without error
Nothing works other than I can reset the estop I guess it is but it's only the program not the machine of course.
Anyway, it ran the program.
Now, looking at the HAL I'm thinking I should try to get just one anything working like a single axis to move,
The estop on the machine is on pin 10 active low
HAL has
# ---estop signals---
net estop-out <= iocontrol.0.user-enable-out
net estop-out => iocontrol.0.emc-enable-in
Yaeh that doesn't sound promising
I needed the charge pump as well
HAL has
loadrt charge_pump
=addf charge-pump servo-thread
and later on has
# --- CHARGE-PUMP ---
setp hm2_5i25.0.gpio.017.is_output true
net charge-pump hm2_5i25.0.gpio.017.out
My chargpump in mach3 is pin 17 so I'm hoping this is vaguely correct
for the X-Axis
HAL has a tonne of stuff
#*******************
# AXIS X
#*******************
setp pid.x.Pgain [AXIS_0]P
setp pid.x.Igain [AXIS_0]I
setp pid.x.Dgain [AXIS_0]D
setp pid.x.bias [AXIS_0]BIAS
setp pid.x.FF0 [AXIS_0]FF0
setp pid.x.FF1 [AXIS_0]FF1
setp pid.x.FF2 [AXIS_0]FF2
setp pid.x.deadband [AXIS_0]DEADBAND
setp pid.x.maxoutput [AXIS_0]MAX_OUTPUT
setp pid.x.error-previous-target true
setp pid.x.maxerror .0005
net x-index-enable <=> pid.x.index-enable
net x-enable => pid.x.enable
net x-pos-cmd => pid.x.command
net x-vel-cmd => pid.x.command-deriv
net x-pos-fb => pid.x.feedback
net x-output => pid.x.output
# Step Gen signals/setup
setp hm2_5i25.0.stepgen.01.dirsetup [AXIS_0]DIRSETUP
setp hm2_5i25.0.stepgen.01.dirhold [AXIS_0]DIRHOLD
setp hm2_5i25.0.stepgen.01.steplen [AXIS_0]STEPLEN
setp hm2_5i25.0.stepgen.01.stepspace [AXIS_0]STEPSPACE
setp hm2_5i25.0.stepgen.01.position-scale [AXIS_0]STEP_SCALE
setp hm2_5i25.0.stepgen.01.step_type 0
setp hm2_5i25.0.stepgen.01.control-type 1
setp hm2_5i25.0.stepgen.01.maxaccel [AXIS_0]STEPGEN_MAXACCEL
setp hm2_5i25.0.stepgen.01.maxvel [AXIS_0]STEPGEN_MAXVEL
# ---closedloop stepper signals---
net x-pos-cmd <= axis.0.motor-pos-cmd
net x-vel-cmd <= axis.0.joint-vel-cmd
net x-output <= hm2_5i25.0.stepgen.01.velocity-cmd
net x-pos-fb <= hm2_5i25.0.stepgen.01.position-fb
net x-pos-fb => axis.0.motor-pos-fb
net x-enable <= axis.0.amp-enable-out
net x-enable => hm2_5i25.0.stepgen.01.enable
# ---setup home / limit switch signals---
net x-home-sw => axis.0.home-sw-in
net x-neg-limit => axis.0.neg-lim-sw-in
net x-pos-limit => axis.0.pos-lim-sw-in
very little of that looks familiar
I've got X-drive step on pin 6, dir on pin 5, dirlow-active true steplow active
M
Created a new config using probrfx2
attempted to set some things knowing I'll have to fix the HAL
saved the config and tried running linuxcnc
error on a bunch of spindle stuff so I opened the HAL and commented out the offending lines, re-ran, re-commented out new lines all related to spindle. had to open the mitsub HAL and comment it out also
Finally linuxcnc loaded without error
Nothing works other than I can reset the estop I guess it is but it's only the program not the machine of course.
Anyway, it ran the program.
Now, looking at the HAL I'm thinking I should try to get just one anything working like a single axis to move,
The estop on the machine is on pin 10 active low
HAL has
# ---estop signals---
net estop-out <= iocontrol.0.user-enable-out
net estop-out => iocontrol.0.emc-enable-in
Yaeh that doesn't sound promising
I needed the charge pump as well
HAL has
loadrt charge_pump
=addf charge-pump servo-thread
and later on has
# --- CHARGE-PUMP ---
setp hm2_5i25.0.gpio.017.is_output true
net charge-pump hm2_5i25.0.gpio.017.out
My chargpump in mach3 is pin 17 so I'm hoping this is vaguely correct
for the X-Axis
HAL has a tonne of stuff
#*******************
# AXIS X
#*******************
setp pid.x.Pgain [AXIS_0]P
setp pid.x.Igain [AXIS_0]I
setp pid.x.Dgain [AXIS_0]D
setp pid.x.bias [AXIS_0]BIAS
setp pid.x.FF0 [AXIS_0]FF0
setp pid.x.FF1 [AXIS_0]FF1
setp pid.x.FF2 [AXIS_0]FF2
setp pid.x.deadband [AXIS_0]DEADBAND
setp pid.x.maxoutput [AXIS_0]MAX_OUTPUT
setp pid.x.error-previous-target true
setp pid.x.maxerror .0005
net x-index-enable <=> pid.x.index-enable
net x-enable => pid.x.enable
net x-pos-cmd => pid.x.command
net x-vel-cmd => pid.x.command-deriv
net x-pos-fb => pid.x.feedback
net x-output => pid.x.output
# Step Gen signals/setup
setp hm2_5i25.0.stepgen.01.dirsetup [AXIS_0]DIRSETUP
setp hm2_5i25.0.stepgen.01.dirhold [AXIS_0]DIRHOLD
setp hm2_5i25.0.stepgen.01.steplen [AXIS_0]STEPLEN
setp hm2_5i25.0.stepgen.01.stepspace [AXIS_0]STEPSPACE
setp hm2_5i25.0.stepgen.01.position-scale [AXIS_0]STEP_SCALE
setp hm2_5i25.0.stepgen.01.step_type 0
setp hm2_5i25.0.stepgen.01.control-type 1
setp hm2_5i25.0.stepgen.01.maxaccel [AXIS_0]STEPGEN_MAXACCEL
setp hm2_5i25.0.stepgen.01.maxvel [AXIS_0]STEPGEN_MAXVEL
# ---closedloop stepper signals---
net x-pos-cmd <= axis.0.motor-pos-cmd
net x-vel-cmd <= axis.0.joint-vel-cmd
net x-output <= hm2_5i25.0.stepgen.01.velocity-cmd
net x-pos-fb <= hm2_5i25.0.stepgen.01.position-fb
net x-pos-fb => axis.0.motor-pos-fb
net x-enable <= axis.0.amp-enable-out
net x-enable => hm2_5i25.0.stepgen.01.enable
# ---setup home / limit switch signals---
net x-home-sw => axis.0.home-sw-in
net x-neg-limit => axis.0.neg-lim-sw-in
net x-pos-limit => axis.0.pos-lim-sw-in
very little of that looks familiar
I've got X-drive step on pin 6, dir on pin 5, dirlow-active true steplow active
M
Please Log in or Create an account to join the conversation.
24 Jun 2016 02:18 - 24 Jun 2016 02:18 #76532
by andypugh
Replied by andypugh on topic Sieg KX3 and 5i25. Seeking firmware.
You probably don't want chargepump at all. There is a stepgen on pin 17 (I think) and what you need to do is set that running at a constant rate.
This involves setting it to velocity mode, then setting a suitable step rate to put it at the right frequency for the charge pump.
The information you need it all here, but I will not pretend that it is written in an approachable way:
linuxcnc.org/docs/2.7/html/man/man9/hostmot2.9.html#stepgen
Actually, just so we are not talking at crossed-purposes, what is the actual pin layout of your firmware?
This involves setting it to velocity mode, then setting a suitable step rate to put it at the right frequency for the charge pump.
The information you need it all here, but I will not pretend that it is written in an approachable way:
linuxcnc.org/docs/2.7/html/man/man9/hostmot2.9.html#stepgen
Actually, just so we are not talking at crossed-purposes, what is the actual pin layout of your firmware?
Last edit: 24 Jun 2016 02:18 by andypugh.
Please Log in or Create an account to join the conversation.
24 Jun 2016 21:09 #76601
by mooser
Replied by mooser on topic Sieg KX3 and 5i25. Seeking firmware.
Configuration Name: HOSTMOT2
General configuration information:
BoardName : MESA5I25
FPGA Size: 9 KGates
FPGA Pins: 144
Number of IO Ports: 2
Width of one I/O port: 17
Clock Low frequency: 33.3333 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: WatchDog
There are 1 of WatchDog in configuration
Version: 0
Registers: 3
BaseAddress: 0C00
ClockFrequency: 33.333 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: 33.333 MHz
Register Stride: 256 bytes
Instance Stride: 4 bytes
Module: QCount
There are 2 of QCount in configuration
Version: 2
Registers: 5
BaseAddress: 3000
ClockFrequency: 33.333 MHz
Register Stride: 256 bytes
Instance Stride: 4 bytes
Module: StepGen
There are 12 of StepGen in configuration
Version: 2
Registers: 10
BaseAddress: 2000
ClockFrequency: 33.333 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: 33.333 MHz
Register Stride: 256 bytes
Instance Stride: 4 bytes
Configuration pin-out:
IO Connections for P3
Pin# I/O Pri. func Sec. func Chan Pin func Pin Dir
1 0 IOPort None
14 1 IOPort StepGen 4 Step/Table1 (Out)
2 2 IOPort StepGen 0 Step/Table1 (Out)
15 3 IOPort None
3 4 IOPort StepGen 0 Dir/Table2 (Out)
16 5 IOPort StepGen 4 Dir/Table2 (Out)
4 6 IOPort StepGen 1 Step/Table1 (Out)
17 7 IOPort StepGen 5 Step/Table1 (Out)
5 8 IOPort StepGen 1 Dir/Table2 (Out)
6 9 IOPort StepGen 2 Step/Table1 (Out)
7 10 IOPort StepGen 2 Dir/Table2 (Out)
8 11 IOPort StepGen 3 Step/Table1 (Out)
9 12 IOPort StepGen 3 Dir/Table2 (Out)
10 13 IOPort QCount 0 Quad-A (In)
11 14 IOPort QCount 0 Quad-B (In)
12 15 IOPort QCount 0 Quad-IDX (In)
13 16 IOPort None
IO Connections for P2
Pin# I/O Pri. func Sec. func Chan Pin func Pin Dir
1 17 IOPort None
14 18 IOPort StepGen 10 Step/Table1 (Out)
2 19 IOPort StepGen 6 Step/Table1 (Out)
15 20 IOPort None
3 21 IOPort StepGen 6 Dir/Table2 (Out)
16 22 IOPort StepGen 10 Dir/Table2 (Out)
4 23 IOPort StepGen 7 Step/Table1 (Out)
17 24 IOPort StepGen 11 Step/Table1 (Out)
5 25 IOPort StepGen 7 Dir/Table2 (Out)
6 26 IOPort StepGen 8 Step/Table1 (Out)
7 27 IOPort StepGen 8 Dir/Table2 (Out)
8 28 IOPort StepGen 9 Step/Table1 (Out)
9 29 IOPort StepGen 9 Dir/Table2 (Out)
10 30 IOPort QCount 1 Quad-A (In)
11 31 IOPort QCount 1 Quad-B (In)
12 32 IOPort QCount 1 Quad-IDX (In)
13 33 IOPort None
I get that it sees 34 pins but which of the above pin callouts is what I would think of as the pin?
As in pin 17, the first group says
17 7 IOPort StepGen 5 Step/Table1 (Out)
while the second says
17 24 IOPort StepGen 11 Step/Table1 (Out)
or does it matter?
M
General configuration information:
BoardName : MESA5I25
FPGA Size: 9 KGates
FPGA Pins: 144
Number of IO Ports: 2
Width of one I/O port: 17
Clock Low frequency: 33.3333 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: WatchDog
There are 1 of WatchDog in configuration
Version: 0
Registers: 3
BaseAddress: 0C00
ClockFrequency: 33.333 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: 33.333 MHz
Register Stride: 256 bytes
Instance Stride: 4 bytes
Module: QCount
There are 2 of QCount in configuration
Version: 2
Registers: 5
BaseAddress: 3000
ClockFrequency: 33.333 MHz
Register Stride: 256 bytes
Instance Stride: 4 bytes
Module: StepGen
There are 12 of StepGen in configuration
Version: 2
Registers: 10
BaseAddress: 2000
ClockFrequency: 33.333 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: 33.333 MHz
Register Stride: 256 bytes
Instance Stride: 4 bytes
Configuration pin-out:
IO Connections for P3
Pin# I/O Pri. func Sec. func Chan Pin func Pin Dir
1 0 IOPort None
14 1 IOPort StepGen 4 Step/Table1 (Out)
2 2 IOPort StepGen 0 Step/Table1 (Out)
15 3 IOPort None
3 4 IOPort StepGen 0 Dir/Table2 (Out)
16 5 IOPort StepGen 4 Dir/Table2 (Out)
4 6 IOPort StepGen 1 Step/Table1 (Out)
17 7 IOPort StepGen 5 Step/Table1 (Out)
5 8 IOPort StepGen 1 Dir/Table2 (Out)
6 9 IOPort StepGen 2 Step/Table1 (Out)
7 10 IOPort StepGen 2 Dir/Table2 (Out)
8 11 IOPort StepGen 3 Step/Table1 (Out)
9 12 IOPort StepGen 3 Dir/Table2 (Out)
10 13 IOPort QCount 0 Quad-A (In)
11 14 IOPort QCount 0 Quad-B (In)
12 15 IOPort QCount 0 Quad-IDX (In)
13 16 IOPort None
IO Connections for P2
Pin# I/O Pri. func Sec. func Chan Pin func Pin Dir
1 17 IOPort None
14 18 IOPort StepGen 10 Step/Table1 (Out)
2 19 IOPort StepGen 6 Step/Table1 (Out)
15 20 IOPort None
3 21 IOPort StepGen 6 Dir/Table2 (Out)
16 22 IOPort StepGen 10 Dir/Table2 (Out)
4 23 IOPort StepGen 7 Step/Table1 (Out)
17 24 IOPort StepGen 11 Step/Table1 (Out)
5 25 IOPort StepGen 7 Dir/Table2 (Out)
6 26 IOPort StepGen 8 Step/Table1 (Out)
7 27 IOPort StepGen 8 Dir/Table2 (Out)
8 28 IOPort StepGen 9 Step/Table1 (Out)
9 29 IOPort StepGen 9 Dir/Table2 (Out)
10 30 IOPort QCount 1 Quad-A (In)
11 31 IOPort QCount 1 Quad-B (In)
12 32 IOPort QCount 1 Quad-IDX (In)
13 33 IOPort None
I get that it sees 34 pins but which of the above pin callouts is what I would think of as the pin?
As in pin 17, the first group says
17 7 IOPort StepGen 5 Step/Table1 (Out)
while the second says
17 24 IOPort StepGen 11 Step/Table1 (Out)
or does it matter?
M
Please Log in or Create an account to join the conversation.
24 Jun 2016 21:55 #76609
by PCW
Replied by PCW on topic Sieg KX3 and 5i25. Seeking firmware.
The hal file will refer to the GPIO number ( the second column ) for I/O
The stepgens will be referred to by the stepgen number
so for example you can see from the pinout that:
stepgen0 = X
stepgen1 = Y
stepgen2 = Z
stepgen3 = A
stepgen4 = Spindle control
stepgen5 = Charge Pump
The stepgens will be referred to by the stepgen number
so for example you can see from the pinout that:
stepgen0 = X
stepgen1 = Y
stepgen2 = Z
stepgen3 = A
stepgen4 = Spindle control
stepgen5 = Charge Pump
Please Log in or Create an account to join the conversation.
24 Jun 2016 23:37 #76616
by mooser
Replied by mooser on topic Sieg KX3 and 5i25. Seeking firmware.
Hard to believe I could be more lost than I was.
ok. So on the HAL snipet I posted earlier
Under the X-axis section I've got lines like
setp hm2_5i25.0.stepgen.01.dirsetup [AXIS_0]DIRSETUP
setp hm2_5i25.0.stepgen.01.dirsetup [AXIS_0]DIRSETUP
setp hm2_5i25.0.stepgen.01.dirhold [AXIS_0]DIRHOLD
setp hm2_5i25.0.stepgen.01.steplen [AXIS_0]STEPLEN
setp hm2_5i25.0.stepgen.01.stepspace [AXIS_0]STEPSPACE
setp hm2_5i25.0.stepgen.01.position-scale [AXIS_0]STEP_SCALE
setp hm2_5i25.0.stepgen.01.step_type 0
setp hm2_5i25.0.stepgen.01.control-type 1
setp hm2_5i25.0.stepgen.01.maxaccel [AXIS_0]STEPGEN_MAXACCEL
setp hm2_5i25.0.stepgen.01.maxvel [AXIS_0]STEPGEN_MAXVEL
etc.
So that's stepgen1 (stepgen.01) or is it stepgen0 (5i25.0.) ?
And on my mesa file output (posted above)
4 6 IOPort StepGen 1 Step/Table1 (Out)
5 8 IOPort StepGen 1 Dir/Table2 (Out)
So my Pin for X Step is 4 and the Dir is pin 5
???
M
ok. So on the HAL snipet I posted earlier
Under the X-axis section I've got lines like
setp hm2_5i25.0.stepgen.01.dirsetup [AXIS_0]DIRSETUP
setp hm2_5i25.0.stepgen.01.dirsetup [AXIS_0]DIRSETUP
setp hm2_5i25.0.stepgen.01.dirhold [AXIS_0]DIRHOLD
setp hm2_5i25.0.stepgen.01.steplen [AXIS_0]STEPLEN
setp hm2_5i25.0.stepgen.01.stepspace [AXIS_0]STEPSPACE
setp hm2_5i25.0.stepgen.01.position-scale [AXIS_0]STEP_SCALE
setp hm2_5i25.0.stepgen.01.step_type 0
setp hm2_5i25.0.stepgen.01.control-type 1
setp hm2_5i25.0.stepgen.01.maxaccel [AXIS_0]STEPGEN_MAXACCEL
setp hm2_5i25.0.stepgen.01.maxvel [AXIS_0]STEPGEN_MAXVEL
etc.
So that's stepgen1 (stepgen.01) or is it stepgen0 (5i25.0.) ?
And on my mesa file output (posted above)
4 6 IOPort StepGen 1 Step/Table1 (Out)
5 8 IOPort StepGen 1 Dir/Table2 (Out)
So my Pin for X Step is 4 and the Dir is pin 5
???
M
Please Log in or Create an account to join the conversation.
24 Jun 2016 23:54 #76618
by mooser
Replied by mooser on topic Sieg KX3 and 5i25. Seeking firmware.
Not questioning but is there any reason for not using the charge pump feature? I was reading and it looked like I could set the 12.5khz the c11g card wanted by setting the base-thread = 40,000 in the ini file
Using the HAL
freq = 12500
?
M
Using the HAL
freq = 12500
?
M
Please Log in or Create an account to join the conversation.
Moderators: cmorley
Time to create page: 0.175 seconds