Smart Serial not working in pathpilot

More
10 years 6 months ago #73278 by KevinCT
Hello all this is my first post here,
I am trying to get pathpilot working with the mesa 6i25-7i76, I have a pc setup with two drives one with PP installed the other with linuxcnc2.7. I have the SS IO working in Linuxcnc Clicking relays and triggering inputs, works great.

I have followed the tutorials on PP on non Tormach machines but I cannot get the SS IO to work.

I have attached the dmesg ouputs from both the working linuxcnc and PP, also the slightly modified HAL I am using in PP

Linuxcnc 2.7
Code:
kevin@debian:~$ dmesg |grep hm2 [ 2471.167047] hm2: loading Mesa HostMot2 driver version 0.15 [ 2471.174785] hm2_pci: loading Mesa AnyIO HostMot2 driver version 0.7 [ 2471.174848] hm2_pci: discovered 5i25 at 0000:02:00.0 [ 2471.175252] hm2/hm2_5i25.0: Smart Serial Firmware Version 43 [ 2471.232336] Board hm2_5i25.0.7i76.0.0 Hardware Mode 0 = standard [ 2471.234498] Board hm2_5i25.0.7i76.0.0 Software Mode 0 = io_spin [ 2471.237343] Board hm2_5i25.0.7i76.0.0 Software Mode 1 = io_ana_spin [ 2471.241113] Board hm2_5i25.0.7i76.0.0 Software Mode 2 = io_enc_ana_spin_fv [ 2471.389446] hm2/hm2_5i25.0: 34 I/O Pins used: [ 2471.389455] hm2/hm2_5i25.0: IO Pin 000 (P3-01): StepGen #0, pin Direction (Output) [ 2471.389460] hm2/hm2_5i25.0: IO Pin 001 (P3-14): StepGen #0, pin Step (Output) [ 2471.389464] hm2/hm2_5i25.0: IO Pin 002 (P3-02): StepGen #1, pin Direction (Output) [ 2471.389469] hm2/hm2_5i25.0: IO Pin 003 (P3-15): StepGen #1, pin Step (Output) [ 2471.389473] hm2/hm2_5i25.0: IO Pin 004 (P3-03): StepGen #2, pin Direction (Output) [ 2471.389477] hm2/hm2_5i25.0: IO Pin 005 (P3-16): StepGen #2, pin Step (Output) [ 2471.389481] hm2/hm2_5i25.0: IO Pin 006 (P3-04): StepGen #3, pin Direction (Output) [ 2471.389485] hm2/hm2_5i25.0: IO Pin 007 (P3-17): StepGen #3, pin Step (Output) [ 2471.389489] hm2/hm2_5i25.0: IO Pin 008 (P3-05): StepGen #4, pin Direction (Output) [ 2471.389493] hm2/hm2_5i25.0: IO Pin 009 (P3-06): StepGen #4, pin Step (Output) [ 2471.389498] hm2/hm2_5i25.0: IO Pin 010 (P3-07): Smart Serial Interface #0, pin TxData0 (Output) [ 2471.389502] hm2/hm2_5i25.0: IO Pin 011 (P3-08): Smart Serial Interface #0, pin RxData0 (Input) [ 2471.389506] hm2/hm2_5i25.0: IO Pin 012 (P3-09): IOPort [ 2471.389510] hm2/hm2_5i25.0: IO Pin 013 (P3-10): IOPort [ 2471.389513] hm2/hm2_5i25.0: IO Pin 014 (P3-11): Encoder #0, pin Index (Input) [ 2471.389517] hm2/hm2_5i25.0: IO Pin 015 (P3-12): Encoder #0, pin B (Input) [ 2471.389521] hm2/hm2_5i25.0: IO Pin 016 (P3-13): Encoder #0, pin A (Input) [ 2471.389525] hm2/hm2_5i25.0: IO Pin 017 (P2-01): IOPort [ 2471.389528] hm2/hm2_5i25.0: IO Pin 018 (P2-14): IOPort [ 2471.389531] hm2/hm2_5i25.0: IO Pin 019 (P2-02): IOPort [ 2471.389534] hm2/hm2_5i25.0: IO Pin 020 (P2-15): IOPort [ 2471.389537] hm2/hm2_5i25.0: IO Pin 021 (P2-03): IOPort [ 2471.389541] hm2/hm2_5i25.0: IO Pin 022 (P2-16): IOPort [ 2471.389544] hm2/hm2_5i25.0: IO Pin 023 (P2-04): IOPort [ 2471.389547] hm2/hm2_5i25.0: IO Pin 024 (P2-17): IOPort [ 2471.389550] hm2/hm2_5i25.0: IO Pin 025 (P2-05): IOPort [ 2471.389553] hm2/hm2_5i25.0: IO Pin 026 (P2-06): IOPort [ 2471.389556] hm2/hm2_5i25.0: IO Pin 027 (P2-07): IOPort [ 2471.389559] hm2/hm2_5i25.0: IO Pin 028 (P2-08): IOPort [ 2471.389562] hm2/hm2_5i25.0: IO Pin 029 (P2-09): IOPort [ 2471.389565] hm2/hm2_5i25.0: IO Pin 030 (P2-10): IOPort [ 2471.389568] hm2/hm2_5i25.0: IO Pin 031 (P2-11): IOPort [ 2471.389571] hm2/hm2_5i25.0: IO Pin 032 (P2-12): IOPort [ 2471.389574] hm2/hm2_5i25.0: IO Pin 033 (P2-13): IOPort [ 2471.389714] hm2/hm2_5i25.0: registered [ 2471.389718] hm2_5i25.0: initialized AnyIO board at 0000:02:00.0 kevin@debian:~$
Pathpilot
Code:
operator@tormachpcnc:~$ dmesg |grep hm2 [ 77.626216] hm2: loading Mesa HostMot2 driver version 0.15 [ 77.629101] hm2_pci: loading Mesa AnyIO HostMot2 driver version 0.7 [ 77.629149] hm2_pci 0000:02:00.0: PCI INT A -> GSI 24 (level, low) -> IRQ 24 [ 77.629154] hm2_pci: discovered 5i25 at 0000:02:00.0 [ 77.629597] hm2/hm2_5i25.0: Smart Serial Firmware Version 43 [ 77.686598] Board hm2_5i25.0.7i76.0.0 Hardware Mode 0 = standard [ 77.688798] Board hm2_5i25.0.7i76.0.0 Software Mode 0 = io_spin [ 77.691431] Board hm2_5i25.0.7i76.0.0 Software Mode 1 = io_ana_spin [ 77.695100] Board hm2_5i25.0.7i76.0.0 Software Mode 2 = io_enc_ana_spin_fv [ 77.840333] hm2/hm2_5i25.0: 34 I/O Pins used: [ 77.840338] hm2/hm2_5i25.0: IO Pin 000 (P3-01): StepGen #0, pin Direction (Output) [ 77.840343] hm2/hm2_5i25.0: IO Pin 001 (P3-14): StepGen #0, pin Step (Output) [ 77.840347] hm2/hm2_5i25.0: IO Pin 002 (P3-02): StepGen #1, pin Direction (Output) [ 77.840351] hm2/hm2_5i25.0: IO Pin 003 (P3-15): StepGen #1, pin Step (Output) [ 77.840356] hm2/hm2_5i25.0: IO Pin 004 (P3-03): StepGen #2, pin Direction (Output) [ 77.840360] hm2/hm2_5i25.0: IO Pin 005 (P3-16): StepGen #2, pin Step (Output) [ 77.840364] hm2/hm2_5i25.0: IO Pin 006 (P3-04): StepGen #3, pin Direction (Output) [ 77.840368] hm2/hm2_5i25.0: IO Pin 007 (P3-17): StepGen #3, pin Step (Output) [ 77.840372] hm2/hm2_5i25.0: IO Pin 008 (P3-05): StepGen #4, pin Direction (Output) [ 77.840376] hm2/hm2_5i25.0: IO Pin 009 (P3-06): StepGen #4, pin Step (Output) [ 77.840380] hm2/hm2_5i25.0: IO Pin 010 (P3-07): Smart Serial Interface #0, pin TxData0 (Output) [ 77.840385] hm2/hm2_5i25.0: IO Pin 011 (P3-08): Smart Serial Interface #0, pin RxData0 (Input) [ 77.840389] hm2/hm2_5i25.0: IO Pin 012 (P3-09): IOPort [ 77.840392] hm2/hm2_5i25.0: IO Pin 013 (P3-10): IOPort [ 77.840396] hm2/hm2_5i25.0: IO Pin 014 (P3-11): Encoder #0, pin Index (Input) [ 77.840400] hm2/hm2_5i25.0: IO Pin 015 (P3-12): Encoder #0, pin B (Input) [ 77.840404] hm2/hm2_5i25.0: IO Pin 016 (P3-13): Encoder #0, pin A (Input) [ 77.840407] hm2/hm2_5i25.0: IO Pin 017 (P2-01): IOPort [ 77.840411] hm2/hm2_5i25.0: IO Pin 018 (P2-14): IOPort [ 77.840414] hm2/hm2_5i25.0: IO Pin 019 (P2-02): IOPort [ 77.840417] hm2/hm2_5i25.0: IO Pin 020 (P2-15): IOPort [ 77.840420] hm2/hm2_5i25.0: IO Pin 021 (P2-03): IOPort [ 77.840424] hm2/hm2_5i25.0: IO Pin 022 (P2-16): IOPort [ 77.840427] hm2/hm2_5i25.0: IO Pin 023 (P2-04): IOPort [ 77.840430] hm2/hm2_5i25.0: IO Pin 024 (P2-17): IOPort [ 77.840433] hm2/hm2_5i25.0: IO Pin 025 (P2-05): IOPort [ 77.840436] hm2/hm2_5i25.0: IO Pin 026 (P2-06): IOPort [ 77.840439] hm2/hm2_5i25.0: IO Pin 027 (P2-07): IOPort [ 77.840443] hm2/hm2_5i25.0: IO Pin 028 (P2-08): IOPort [ 77.840446] hm2/hm2_5i25.0: IO Pin 029 (P2-09): IOPort [ 77.840449] hm2/hm2_5i25.0: IO Pin 030 (P2-10): IOPort [ 77.840452] hm2/hm2_5i25.0: IO Pin 031 (P2-11): IOPort [ 77.840455] hm2/hm2_5i25.0: IO Pin 032 (P2-12): IOPort [ 77.840458] hm2/hm2_5i25.0: IO Pin 033 (P2-13): IOPort [ 77.840529] hm2/hm2_5i25.0: registered [ 77.840532] hm2_5i25.0: initialized AnyIO board at 0000:02:00.0 [ 77.876282] hm2/hm2_5i25.0: Watchdog has bit! (set the .has-bit pin to False to resume) [ 77.876290] hm2/hm2_5i25.0: Smart Serial Error: port 0 channel 0. You may see this error if the FPGA card read thread is not running. This error message will not repeat. [ 77.876294] hm2/hm2_5i25.0: Smart serial card hm2_5i25.0.7i76.0.0 error = (13) Communication error [ 77.876297] hm2/hm2_5i25.0: Smart serial card hm2_5i25.0.7i76.0.0 error = (3) Timeout [ 77.898259] hm2/hm2_5i25.0: Smart Serial Comms Error: There have been more than 1 errors in 10 thread executions at least 200 times. See other error messages for details. [ 77.898265] hm2/hm2_5i25.0: ***Smart Serial Port 0 will be stopped*** operator@tormachpcnc:~$
Pathpiot HAL
Code:
# Generated by PNCconf at Tue Apr 12 23:54:51 2016 # If you make changes to this file, they will be # overwritten when you run PNCconf again loadrt trivkins loadrt [EMCMOT]EMCMOT servo_period_nsec=[EMCMOT]SERVO_PERIOD num_joints=[TRAJ]AXES num_dio=34 loadrt hostmot2 loadrt hm2_pci config=" num_encoders=1 num_pwmgens=0 num_stepgens=5 sserial_port_0=0000xxxx " loadrt pid names=pid.x,pid.y,pid.z,pid.s addf hm2_5i25.0.read servo-thread addf motion-command-handler servo-thread addf motion-controller servo-thread addf pid.x.do-pid-calcs servo-thread addf pid.y.do-pid-calcs servo-thread addf pid.z.do-pid-calcs servo-thread addf pid.s.do-pid-calcs servo-thread addf hm2_5i25.0.write servo-thread # external output signals # --- SPINDLE-ON --- net spindle-on hm2_5i25.0.7i76.0.0.output-00 # --- SPINDLE-CW --- net spindle-cw hm2_5i25.0.7i76.0.0.output-01 # --- SPINDLE-CCW --- net spindle-ccw hm2_5i25.0.7i76.0.0.output-02 # --- COOLANT-MIST --- net coolant-mist hm2_5i25.0.7i76.0.0.output-03 # --- COOLANT-FLOOD --- net coolant-flood hm2_5i25.0.7i76.0.0.output-04 # --- DOUT-00 --- net dout-00 hm2_5i25.0.7i76.0.0.output-05 # --- DOUT-01 --- net dout-01 hm2_5i25.0.7i76.0.0.output-06 # --- DOUT-02 --- net dout-02 hm2_5i25.0.7i76.0.0.output-07 # --- DOUT-03 --- net dout-03 hm2_5i25.0.7i76.0.0.output-08 # external input signals # --- ESTOP-EXT --- net estop-ext <= hm2_5i25.0.7i76.0.0.input-00 # --- HOME-X --- net home-x <= hm2_5i25.0.7i76.0.0.input-01 # --- HOME-Y --- net home-y <= hm2_5i25.0.7i76.0.0.input-02 # --- HOME-Z --- net home-z <= hm2_5i25.0.7i76.0.0.input-03 # --- MIN-X --- net min-x <= hm2_5i25.0.7i76.0.0.input-04 # --- MIN-Y --- net min-y <= hm2_5i25.0.7i76.0.0.input-05 # --- MIN-Z --- net min-z <= hm2_5i25.0.7i76.0.0.input-06 # --- MAX-X --- net max-x <= hm2_5i25.0.7i76.0.0.input-07 # --- MAX-Y --- net max-y <= hm2_5i25.0.7i76.0.0.input-08 # --- MAX-Z --- net max-z <= hm2_5i25.0.7i76.0.0.input-09 # --- PROBE-IN --- net probe-in <= hm2_5i25.0.7i76.0.0.input-10 # --- DIN-00 --- net din-00 <= hm2_5i25.0.7i76.0.0.input-11 # --- DIN-01 --- net din-01 <= hm2_5i25.0.7i76.0.0.input-12 # --- DIN-02 --- net din-02 <= hm2_5i25.0.7i76.0.0.input-13 # --- DIN-03 --- net din-03 <= hm2_5i25.0.7i76.0.0.input-14 #******************* # 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.00.dirsetup [AXIS_0]DIRSETUP setp hm2_5i25.0.stepgen.00.dirhold [AXIS_0]DIRHOLD setp hm2_5i25.0.stepgen.00.steplen [AXIS_0]STEPLEN setp hm2_5i25.0.stepgen.00.stepspace [AXIS_0]STEPSPACE setp hm2_5i25.0.stepgen.00.position-scale [AXIS_0]STEP_SCALE setp hm2_5i25.0.stepgen.00.step_type 0 setp hm2_5i25.0.stepgen.00.control-type 1 setp hm2_5i25.0.stepgen.00.maxaccel [AXIS_0]STEPGEN_MAXACCEL setp hm2_5i25.0.stepgen.00.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.00.velocity-cmd net x-pos-fb <= hm2_5i25.0.stepgen.00.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.00.enable # ---setup home / limit switch signals--- net home-x => axis.0.home-sw-in net min-x => axis.0.neg-lim-sw-in net max-x => axis.0.pos-lim-sw-in #******************* # AXIS Y #******************* setp pid.y.Pgain [AXIS_1]P setp pid.y.Igain [AXIS_1]I setp pid.y.Dgain [AXIS_1]D setp pid.y.bias [AXIS_1]BIAS setp pid.y.FF0 [AXIS_1]FF0 setp pid.y.FF1 [AXIS_1]FF1 setp pid.y.FF2 [AXIS_1]FF2 setp pid.y.deadband [AXIS_1]DEADBAND setp pid.y.maxoutput [AXIS_1]MAX_OUTPUT setp pid.y.error-previous-target true setp pid.y.maxerror .0005 net y-index-enable <=> pid.y.index-enable net y-enable => pid.y.enable net y-pos-cmd => pid.y.command net y-vel-cmd => pid.y.command-deriv net y-pos-fb => pid.y.feedback net y-output => pid.y.output # Step Gen signals/setup setp hm2_5i25.0.stepgen.01.dirsetup [AXIS_1]DIRSETUP setp hm2_5i25.0.stepgen.01.dirhold [AXIS_1]DIRHOLD setp hm2_5i25.0.stepgen.01.steplen [AXIS_1]STEPLEN setp hm2_5i25.0.stepgen.01.stepspace [AXIS_1]STEPSPACE setp hm2_5i25.0.stepgen.01.position-scale [AXIS_1]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_1]STEPGEN_MAXACCEL setp hm2_5i25.0.stepgen.01.maxvel [AXIS_1]STEPGEN_MAXVEL # ---closedloop stepper signals--- net y-pos-cmd <= axis.1.motor-pos-cmd net y-vel-cmd <= axis.1.joint-vel-cmd net y-output <= hm2_5i25.0.stepgen.01.velocity-cmd net y-pos-fb <= hm2_5i25.0.stepgen.01.position-fb net y-pos-fb => axis.1.motor-pos-fb net y-enable <= axis.1.amp-enable-out net y-enable => hm2_5i25.0.stepgen.01.enable # ---setup home / limit switch signals--- net home-y => axis.1.home-sw-in net min-y => axis.1.neg-lim-sw-in net max-y => axis.1.pos-lim-sw-in #******************* # AXIS Z #******************* setp pid.z.Pgain [AXIS_2]P setp pid.z.Igain [AXIS_2]I setp pid.z.Dgain [AXIS_2]D setp pid.z.bias [AXIS_2]BIAS setp pid.z.FF0 [AXIS_2]FF0 setp pid.z.FF1 [AXIS_2]FF1 setp pid.z.FF2 [AXIS_2]FF2 setp pid.z.deadband [AXIS_2]DEADBAND setp pid.z.maxoutput [AXIS_2]MAX_OUTPUT setp pid.z.error-previous-target true setp pid.z.maxerror .0005 net z-index-enable <=> pid.z.index-enable net z-enable => pid.z.enable net z-pos-cmd => pid.z.command net z-vel-cmd => pid.z.command-deriv net z-pos-fb => pid.z.feedback net z-output => pid.z.output # Step Gen signals/setup setp hm2_5i25.0.stepgen.02.dirsetup [AXIS_2]DIRSETUP setp hm2_5i25.0.stepgen.02.dirhold [AXIS_2]DIRHOLD setp hm2_5i25.0.stepgen.02.steplen [AXIS_2]STEPLEN setp hm2_5i25.0.stepgen.02.stepspace [AXIS_2]STEPSPACE setp hm2_5i25.0.stepgen.02.position-scale [AXIS_2]STEP_SCALE setp hm2_5i25.0.stepgen.02.step_type 0 setp hm2_5i25.0.stepgen.02.control-type 1 setp hm2_5i25.0.stepgen.02.maxaccel [AXIS_2]STEPGEN_MAXACCEL setp hm2_5i25.0.stepgen.02.maxvel [AXIS_2]STEPGEN_MAXVEL # ---closedloop stepper signals--- net z-pos-cmd <= axis.2.motor-pos-cmd net z-vel-cmd <= axis.2.joint-vel-cmd net z-output <= hm2_5i25.0.stepgen.02.velocity-cmd net z-pos-fb <= hm2_5i25.0.stepgen.02.position-fb net z-pos-fb => axis.2.motor-pos-fb net z-enable <= axis.2.amp-enable-out net z-enable => hm2_5i25.0.stepgen.02.enable # ---setup home / limit switch signals--- net home-z => axis.2.home-sw-in net min-z => axis.2.neg-lim-sw-in net max-z => axis.2.pos-lim-sw-in #******************* # SPINDLE S #******************* setp pid.s.Pgain [SPINDLE_9]P setp pid.s.Igain [SPINDLE_9]I setp pid.s.Dgain [SPINDLE_9]D setp pid.s.bias [SPINDLE_9]BIAS setp pid.s.FF0 [SPINDLE_9]FF0 setp pid.s.FF1 [SPINDLE_9]FF1 setp pid.s.FF2 [SPINDLE_9]FF2 setp pid.s.deadband [SPINDLE_9]DEADBAND setp pid.s.maxoutput [SPINDLE_9]MAX_OUTPUT setp pid.s.error-previous-target true setp pid.s.maxerror .0005 net spindle-index-enable <=> pid.s.index-enable net spindle-enable => pid.s.enable net spindle-vel-cmd-rpm-abs => pid.s.command net spindle-vel-fb-rpm-abs => pid.s.feedback net spindle-output <= pid.s.output # ---setup spindle control signals--- net spindle-vel-cmd-rps <= motion.spindle-speed-out-rps net spindle-vel-cmd-rps-abs <= motion.spindle-speed-out-rps-abs net spindle-vel-cmd-rpm <= motion.spindle-speed-out net spindle-vel-cmd-rpm-abs <= motion.spindle-speed-out-abs net spindle-enable <= motion.spindle-on net spindle-cw <= motion.spindle-forward net spindle-ccw <= motion.spindle-reverse net spindle-brake <= motion.spindle-brake net spindle-revs => motion.spindle-revs net spindle-at-speed => motion.spindle-at-speed net spindle-vel-fb-rps => motion.spindle-speed-in net spindle-index-enable <=> motion.spindle-index-enable # ---Setup spindle at speed signals--- sets spindle-at-speed true #****************************** # connect miscellaneous signals #****************************** # ---HALUI signals--- net joint-select-a halui.joint.0.select net x-is-homed halui.joint.0.is-homed net jog-x-pos halui.jog.0.plus net jog-x-neg halui.jog.0.minus net jog-x-analog halui.jog.0.analog net joint-select-b halui.joint.1.select net y-is-homed halui.joint.1.is-homed net jog-y-pos halui.jog.1.plus net jog-y-neg halui.jog.1.minus net jog-y-analog halui.jog.1.analog net joint-select-c halui.joint.2.select net z-is-homed halui.joint.2.is-homed net jog-z-pos halui.jog.2.plus net jog-z-neg halui.jog.2.minus net jog-z-analog halui.jog.2.analog net jog-selected-pos halui.jog.selected.plus net jog-selected-neg halui.jog.selected.minus net spindle-manual-cw halui.spindle.forward net spindle-manual-ccw halui.spindle.reverse net spindle-manual-stop halui.spindle.stop net machine-is-on halui.machine.is-on net jog-speed halui.jog-speed net MDI-mode halui.mode.is-mdi # ---coolant signals--- net coolant-mist <= iocontrol.0.coolant-mist net coolant-flood <= iocontrol.0.coolant-flood # ---probe signal--- net probe-in => motion.probe-input # ---jogwheel signals to mesa encoder - shared MPG--- net joint-selected-count <= hm2_5i25.0.encoder.00.count # ---motion control signals--- net in-position <= motion.in-position net machine-is-enabled <= motion.motion-enabled # ---digital in / out signals--- net dout-00 <= motion.digital-out-00 net dout-01 <= motion.digital-out-01 net dout-02 <= motion.digital-out-02 net dout-03 <= motion.digital-out-03 net din-00 => motion.digital-in-00 net din-01 => motion.digital-in-01 net din-02 => motion.digital-in-02 net din-03 => motion.digital-in-03 # ---estop signals--- net estop-out <= iocontrol.0.user-enable-out net estop-ext => iocontrol.0.emc-enable-in # ---manual tool change signals--- #loadusr -W hal_manualtoolchange #net tool-change-request iocontrol.0.tool-change => hal_manualtoolchange.change #net tool-change-confirmed iocontrol.0.tool-changed <= hal_manualtoolchange.changed #net tool-number iocontrol.0.tool-prep-number => hal_manualtoolchange.number #net tool-prepare-loopback iocontrol.0.tool-prepare => iocontrol.0.tool-prepared


I am very new to all this so I am not sure exactly how everything fits together and therefore what I15 am doing wrong.

Please Log in to join the conversation.

More
10 years 6 months ago #73279 by cncbasher
no problem Kevin , i;'ll guide you through and help etc ,
i notice you posted this in another section to.

looking at your files , it appears you don't have field power connected to the 7i76 , this is required prior to starting the PC
as the serial port requires power before the 6i25 is powered up . you should then find the analog output as an option
on the spindle tab ,

and it should then give you a modified config to suit , pathpilot is fine with the 7i76 , so long as you have modified the files to load the 7i76x2 bitfile and not load the origional pathpilot version , if your not sure , just give me a call .
but please allow time zones etc , i'm in the UK .

Please Log in to join the conversation.

More
10 years 6 months ago #73281 by KevinCT
Thank you,

Field IO is connected to 24v, it is working when I boot into LinuCNC 2.7 but not when i boot into PP.

Must I bridge all the Field IO +V "VFIELD" terminals together?

Thanks again.

Kevin.

Please Log in to join the conversation.

More
10 years 6 months ago #73282 by cncbasher
Hi Kevin ,
no you dont need to bridge all the field terminals just apply gnd to pin 8 and 24v pwr to pin 1

cr1 should be lit once you power up the pc (5v rail )

i notice your not finding the analog spindle ( needed for the 7i76 ) from the pncconf
make sure your using the correct bit file and load pncconf and dont forget to accept to update the pins , this if 24v is applied to field power BEFORE start up
if you start the pc before power is applied it will not load the GPIO and sserial , this shows as errors soon as you come to list pins .

archive your config folder Kevin and email them to me

which version of pathpilot are you using , there's quite a bit of editing to do to get pathpilot up and running properly .
take a look at the log file in your gcode folder for clues , any errors and pathpilot will not load .

sent you a PM
Sarah

Please Log in to join the conversation.

More
10 years 6 months ago #73283 by KevinCT
I have done it the way you describe in your Tutorial, but why can you not just rename the 5i25_7i76x2.bit file tormach_mill3.bit and replace the one in the mesa folder, then you wouldn't have to go find all mentions of it and change them.

How do I load pncconf on pathpilot?

Everything works great in LinuxCNC 2.7 and I literally shut down the PC then restart in PP and the smart Serial isn't happy. so I am fairly confident the physical requirements are being met.

I have messed around so much trying to get this to work I think I better start from scratch and send you those configs.

I copied my hal and ini files into the tmc configs folder and then ran operator_login script using the terminal to "debug" until pathpilot gui started. I am guessing I keep breaking something along the way.

this is copied from the terminal after running operator_login
Code:
pgrep -c -f "tee -a /home/operator/gcode/logfiles/pathpilotlog.txt" REDIRECTION_RUNNING: 1 stdout/stderr redirection already in progress sourcing /home/operator/tmc/scripts/rip-environment.sh /home/operator/tmc Setting enviroment to run Tormach LinuxCNC to run-in-place for development Using command line supplied EMC2_HOME: /home/operator/tmc EMC2_HOME = /home/operator/tmc, absolute path for /home/operator/tmc EMC2_HOME: /home/operator/tmc new PATH: /home/operator/tmc/python:/home/operator/tmc/bin:/home/operator/tmc/scripts:/home/operator/tmc/bin:/home/operator/teamviewer9qs:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games new LD_LIBRARY_PATH: /home/operator/tmc/lib new PYTHONPATH: /home/operator/tmc/python/scanner:/home/operator/tmc/python:/home/operator/tmc/python/config_picker:/home/operator/tmc/lib/python:/home/operator/tmc/python/scanner2 Temporary directory for linuxcnc: /tmp/linuxcnc RIP environment setup complete... setting touchscreen calibration No calibration file found: /home/operator/gcode/pointercal.xinput starting log rotator logrotator.sh 3600 /home/operator/gcode/logfiles/logrotate.conf /home/operator/gcode/logfiles/logrotate.status LOGROTATOR_PID: 1911 logrotate /home/operator/gcode/logfiles/logrotate.conf -s /home/operator/gcode/logfiles/logrotate.status gnome-power-manager already running HAVE_GNOME: 1 INI file: ~/tmc/configs/tormach_mill/tormach_1100-3.ini /home/operator/tmc/configs/tormach_mill/tormach_1100-3.ini [HOSTMOT2] BITFILE0 = 'mesa/5i25_7i76x2.bit' [HOSTMOT2] BITFILE0 = /home/operator/tmc/mesa/5i25_7i76x2.bit lspci -n -d 2718:5125: 02:00.0 1100: 2718:5125 (rev 01) /home/operator/tmc/bin/mesaflash: root4755 linuxcnc ~/tmc/configs/tormach_mill/tormach_1100-3.ini Setting enviroment to run Tormach LinuxCNC to run-in-place for development Using command line supplied EMC2_HOME: /home/operator/tmc EMC2_HOME = /home/operator/tmc, absolute path for /home/operator/tmc PATH: /home/operator/tmc/python:/home/operator/tmc/bin:/home/operator/tmc/scripts:/home/operator/tmc/bin:/home/operator/teamviewer9qs:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games This script only needs to be run once per shell session. Attempting to start Dropbox - if installed Starting Dropbox... The Dropbox daemon is not installed! Run "dropbox start -i" to install the daemon prefix: /home/operator/tmc exec_prefix: /home/operator/tmc EMC2_BIN_DIR=/home/operator/tmc/bin EMC2_RTLIB_DIR=/home/operator/tmc/rtlib tormach_splash.py: no alpha suppport INIFILE: ~/tmc/configs/tormach_mill/tormach_1100-3.ini ~/tmc/configs/tormach_mill/tormach_1100-3.ini started with tilde expanded INIFILE: /home/operator/tmc/configs/tormach_mill/tormach_1100-3.ini EXTRA_ARGS: RUN_IN_PLACE=yes LINUXCNC_DIR= LINUXCNC_BIN_DIR=/home/operator/tmc/bin LINUXCNC_RTLIB_DIR=/home/operator/tmc/rtlib INIVAR=inivar HALCMD=halcmd LINUXCNC - 2.6.0~pre inserted into PYTHONPATH: /home/operator/tmc/configs/tormach_mill/python Machine configuration directory is '/home/operator/tmc/configs/tormach_mill' Machine configuration file is 'tormach_1100-3.ini' INIFILE=/home/operator/tmc/configs/tormach_mill/tormach_1100-3.ini PARAMETER_FILE=~/mill_data/emc.var Can not find -sec MOT -var MOT -num 1 Can not find -sec IO -var IO -num 1 TASK=milltask HALUI=halui DISPLAY=tormach_mill_ui.py EMCDISPLAY_FULLPATH: /home/operator/tmc/python/tormach_mill_ui.py EMCDISPLAY_DIR: /home/operator/tmc/python inserted into PYTHONPATH: /home/operator/tmc/python NML_FILE: /home/operator/tmc/configs/common/linuxcnc.nml User's HOME directory: /home/operator /home/operator/tmc/scripts/check_mill_tool_table.py: tool file is /home/operator/mill_data/tool.tbl scanning mill tool table tool table is already up to date Can not find -sec REDIS -var DISABLE_SERVER -num 1 DISABLE_SERVER= Can not find -sec REDIS -var SERVER_PATH -num 1 SERVER_PATH= Can not find -sec REDIS -var SERVER_ARGS -num 1 SERVER_ARGS= REDIS_SERVER_ARGS: REDIS_SERVER_ARGS: Can not find -sec REDIS -var SERVER_LOG -num 1 SERVER_LOG= Starting LinuxCNC... Starting redis server program: redis server started as: 'redis-server ', logging to: /dev/null Starting LinuxCNC server program: linuxcncsvr Loading Real Time OS, RTAPI, and HAL_LIB modules module helper '/home/operator/tmc/bin/linuxcnc_module_helper' found. Starting LinuxCNC IO program: io io started halcmd loadusr io started Starting HAL User Interface program: halui halcmd loadusr -Wn halui halui -ini /home/operator/tmc/configs/tormach_mill/tormach_1100-3.ini Starting TASK program: milltask task pid=2059 Starting DISPLAY program: /home/operator/tmc/python/tormach_mill_ui.py hm2/hm2_5i25.0: Smart Serial Error: port 0 channel 0. You may see this error if the FPGA card read thread is not running. This error message will not repeat. emcTaskInit: using builtin interpreter Setting tolerance to 0.000000 Setting tolerance to 0.000000 hm2/hm2_5i25.0: Smart serial card hm2_5i25.0.7i76.0.0 error = (13) Communication error hm2/hm2_5i25.0: Smart serial card hm2_5i25.0.7i76.0.0 error = (3) Timeout hm2/hm2_5i25.0: Smart Serial Comms Error: There have been more than 1 errors in 10 thread executions at least 200 times. See other error messages for details. hm2/hm2_5i25.0: ***Smart Serial Port 0 will be stopped*** Warning: missing POSTGUI_SHUTTLEXPRESS_HALFILE in .INI file. UI version: v1.9.5 spindle type: 0 Retrieval of MDI history failed. no enc_door_open_max_rpm found in redis defaulting to 1000 enclosure door open max rpm: 1000 hm2/hm2_5i25.0: Smart Serial Error: port 0 channel 0. You may see this error if the FPGA card read thread is not running. This error message will not repeat. hm2/hm2_5i25.0: Smart serial card hm2_5i25.0.7i76.0.0 error = (13) Communication error hm2/hm2_5i25.0: Smart serial card hm2_5i25.0.7i76.0.0 error = (3) Timeout hm2/hm2_5i25.0: Smart Serial Comms Error: There have been more than 1 errors in 10 thread executions at least 200 times. See other error messages for details. hm2/hm2_5i25.0: ***Smart Serial Port 0 will be stopped*** LinuxCNC status.task_mode change was unknown is now MODE_MANUAL LinuxCNC interp_state change was unknown is now INTERP_IDLE status.task_state was unknown is now STATE_ESTOP exit button was pressed at 2016-04-14 09:36:02 CPU usage was 0.0, is now 36.9 CPU usage was 36.9, is now 10.0 CPU usage was 10.0, is now 4.0

Please Log in to join the conversation.

More
10 years 6 months ago #73284 by cncbasher
look at the log files in the gcode directory , it will tell you the error
any error at any stage will result in pathpilot not starting and closing down

yes you can rename the bit file to the same as pathpilot , but dont forget to remove the pathpilot one
they are located in /lib/firmware/hm2/5i25/
you'll need to use sudo to copy the file across

your error is here
hm2/hm2_5i25.0: Smart Serial Error: port 0 channel 0. You may see this error if the FPGA card read thread is not running. This error message will not repeat.
&
Warning: missing POSTGUI_SHUTTLEXPRESS_HALFILE in .INI file.

Please Log in to join the conversation.

More
10 years 6 months ago #73285 by KevinCT
Are you saying this error should cause PP to fail and close? If so I may have broken something else too, PP still starts up it displays this error in the status if you click he e-stop it repeats the error message.

I am going to reinstall PP and start from scratch.

Kevin

Please Log in to join the conversation.

More
10 years 6 months ago #73286 by cncbasher
how are you installing pathpilot ?
and which version of linuxcnc , if you have both installed be careful you will have a confilct of rtai kernels
as pathpilot only uses the older 2.6. kernels that it is compiled for .

once you hit estop , the only way to recover is then to restart the pc , from power down

Please Log in to join the conversation.

More
10 years 6 months ago #73289 by KevinCT
I have a disc from Tormach and using optical drive.

I have LinuxCNC 2.7 on a separate Drive from PP I can't find where to download LinuxCNC 2.6

thanks

Kevin

Please Log in to join the conversation.

More
10 years 6 months ago #73290 by cncbasher
you need to remember at the moment , linuxcnc uses debian wheezy or jessie & pathpilot uses the older Ubuntu 10.04
so their are significant differences, both in kernels & linuxcnc functionality .

Please Log in to join the conversation.

Time to create page: 0.097 seconds
Powered by Kunena Forum