I am attempting to do pretty much the same exact thing as Jrjones except I am using the 5i25/7i85s combination. I was on the fence about starting a new thread or jumping in on this one. In the end, I decided to jump in here as I am at about the same progress point and I think that answers to our respective questions will likely help one another.
Basics:
Same machine/servos/amps that JrJones is using.
5i25/7i85s boards
5i25 installed in PC running LINUXCNC - 2.7.0
7i85 not currently connected to 5i25 (just not connecting until I am sure I am ready)
5i25 flashed with 5i25_7i85spx2.bit downloaded from Mesa Website
OUTPUT FROM mesaflash -verify
Code:
sudo mesaflash --device 5I25 --verify ../configs/hostmot2/5i25_7i85spx2.bit
Checking file... OK
File type: BIT file
Boot sector OK
Verifying EEPROM sectors starting from 0x100000...
|VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
Board configuration verified successfully.
OUTPUT FROM halcmd: show pin
Code:
halcmd: loadrt hm2_pci
halcmd: show pin
Component Pins:
Owner Type Dir Value Name
5 s32 OUT 0 hm2_5i25.0.encoder.00.count
5 s32 OUT 0 hm2_5i25.0.encoder.00.count-latched
5 bit I/O FALSE hm2_5i25.0.encoder.00.index-enable
5 bit OUT TRUE hm2_5i25.0.encoder.00.input-a
5 bit OUT TRUE hm2_5i25.0.encoder.00.input-b
5 bit OUT FALSE hm2_5i25.0.encoder.00.input-index
5 bit IN FALSE hm2_5i25.0.encoder.00.latch-enable
5 bit IN FALSE hm2_5i25.0.encoder.00.latch-polarity
5 float OUT 0 hm2_5i25.0.encoder.00.position
5 float OUT 0 hm2_5i25.0.encoder.00.position-latched
5 bit OUT FALSE hm2_5i25.0.encoder.00.quad-error
5 bit IN FALSE hm2_5i25.0.encoder.00.quad-error-enable
5 s32 OUT 0 hm2_5i25.0.encoder.00.rawcounts
5 s32 OUT 0 hm2_5i25.0.encoder.00.rawlatch
5 bit IN FALSE hm2_5i25.0.encoder.00.reset
5 float OUT 0 hm2_5i25.0.encoder.00.velocity
5 s32 OUT 0 hm2_5i25.0.encoder.01.count
5 s32 OUT 0 hm2_5i25.0.encoder.01.count-latched
5 bit I/O FALSE hm2_5i25.0.encoder.01.index-enable
5 bit OUT TRUE hm2_5i25.0.encoder.01.input-a
5 bit OUT TRUE hm2_5i25.0.encoder.01.input-b
5 bit OUT FALSE hm2_5i25.0.encoder.01.input-index
5 bit IN FALSE hm2_5i25.0.encoder.01.latch-enable
5 bit IN FALSE hm2_5i25.0.encoder.01.latch-polarity
5 float OUT 0 hm2_5i25.0.encoder.01.position
5 float OUT 0 hm2_5i25.0.encoder.01.position-latched
5 bit OUT FALSE hm2_5i25.0.encoder.01.quad-error
5 bit IN FALSE hm2_5i25.0.encoder.01.quad-error-enable
5 s32 OUT 0 hm2_5i25.0.encoder.01.rawcounts
5 s32 OUT 0 hm2_5i25.0.encoder.01.rawlatch
5 bit IN FALSE hm2_5i25.0.encoder.01.reset
5 float OUT 0 hm2_5i25.0.encoder.01.velocity
5 s32 OUT 0 hm2_5i25.0.encoder.02.count
5 s32 OUT 0 hm2_5i25.0.encoder.02.count-latched
5 bit I/O FALSE hm2_5i25.0.encoder.02.index-enable
5 bit OUT TRUE hm2_5i25.0.encoder.02.input-a
5 bit OUT TRUE hm2_5i25.0.encoder.02.input-b
5 bit OUT FALSE hm2_5i25.0.encoder.02.input-index
5 bit IN FALSE hm2_5i25.0.encoder.02.latch-enable
5 bit IN FALSE hm2_5i25.0.encoder.02.latch-polarity
5 float OUT 0 hm2_5i25.0.encoder.02.position
5 float OUT 0 hm2_5i25.0.encoder.02.position-latched
5 bit OUT FALSE hm2_5i25.0.encoder.02.quad-error
5 bit IN FALSE hm2_5i25.0.encoder.02.quad-error-enable
5 s32 OUT 0 hm2_5i25.0.encoder.02.rawcounts
5 s32 OUT 0 hm2_5i25.0.encoder.02.rawlatch
5 bit IN FALSE hm2_5i25.0.encoder.02.reset
5 float OUT 0 hm2_5i25.0.encoder.02.velocity
5 s32 OUT 0 hm2_5i25.0.encoder.03.count
5 s32 OUT 0 hm2_5i25.0.encoder.03.count-latched
5 bit I/O FALSE hm2_5i25.0.encoder.03.index-enable
5 bit OUT TRUE hm2_5i25.0.encoder.03.input-a
5 bit OUT TRUE hm2_5i25.0.encoder.03.input-b
5 bit OUT FALSE hm2_5i25.0.encoder.03.input-index
5 bit IN FALSE hm2_5i25.0.encoder.03.latch-enable
5 bit IN FALSE hm2_5i25.0.encoder.03.latch-polarity
5 float OUT 0 hm2_5i25.0.encoder.03.position
5 float OUT 0 hm2_5i25.0.encoder.03.position-latched
5 bit OUT FALSE hm2_5i25.0.encoder.03.quad-error
5 bit IN FALSE hm2_5i25.0.encoder.03.quad-error-enable
5 s32 OUT 0 hm2_5i25.0.encoder.03.rawcounts
5 s32 OUT 0 hm2_5i25.0.encoder.03.rawlatch
5 bit IN FALSE hm2_5i25.0.encoder.03.reset
5 float OUT 0 hm2_5i25.0.encoder.03.velocity
5 s32 OUT 0 hm2_5i25.0.encoder.04.count
5 s32 OUT 0 hm2_5i25.0.encoder.04.count-latched
5 bit I/O FALSE hm2_5i25.0.encoder.04.index-enable
5 bit OUT TRUE hm2_5i25.0.encoder.04.input-a
5 bit OUT TRUE hm2_5i25.0.encoder.04.input-b
5 bit OUT FALSE hm2_5i25.0.encoder.04.input-index
5 bit IN FALSE hm2_5i25.0.encoder.04.latch-enable
5 bit IN FALSE hm2_5i25.0.encoder.04.latch-polarity
5 float OUT 0 hm2_5i25.0.encoder.04.position
5 float OUT 0 hm2_5i25.0.encoder.04.position-latched
5 bit OUT FALSE hm2_5i25.0.encoder.04.quad-error
5 bit IN FALSE hm2_5i25.0.encoder.04.quad-error-enable
5 s32 OUT 0 hm2_5i25.0.encoder.04.rawcounts
5 s32 OUT 0 hm2_5i25.0.encoder.04.rawlatch
5 bit IN FALSE hm2_5i25.0.encoder.04.reset
5 float OUT 0 hm2_5i25.0.encoder.04.velocity
5 s32 OUT 0 hm2_5i25.0.encoder.05.count
5 s32 OUT 0 hm2_5i25.0.encoder.05.count-latched
5 bit I/O FALSE hm2_5i25.0.encoder.05.index-enable
5 bit OUT TRUE hm2_5i25.0.encoder.05.input-a
5 bit OUT TRUE hm2_5i25.0.encoder.05.input-b
5 bit OUT FALSE hm2_5i25.0.encoder.05.input-index
5 bit IN FALSE hm2_5i25.0.encoder.05.latch-enable
5 bit IN FALSE hm2_5i25.0.encoder.05.latch-polarity
5 float OUT 0 hm2_5i25.0.encoder.05.position
5 float OUT 0 hm2_5i25.0.encoder.05.position-latched
5 bit OUT FALSE hm2_5i25.0.encoder.05.quad-error
5 bit IN FALSE hm2_5i25.0.encoder.05.quad-error-enable
5 s32 OUT 0 hm2_5i25.0.encoder.05.rawcounts
5 s32 OUT 0 hm2_5i25.0.encoder.05.rawlatch
5 bit IN FALSE hm2_5i25.0.encoder.05.reset
5 float OUT 0 hm2_5i25.0.encoder.05.velocity
5 s32 OUT 0 hm2_5i25.0.encoder.06.count
5 s32 OUT 0 hm2_5i25.0.encoder.06.count-latched
5 bit I/O FALSE hm2_5i25.0.encoder.06.index-enable
5 bit OUT TRUE hm2_5i25.0.encoder.06.input-a
5 bit OUT TRUE hm2_5i25.0.encoder.06.input-b
5 bit OUT FALSE hm2_5i25.0.encoder.06.input-index
5 bit IN FALSE hm2_5i25.0.encoder.06.latch-enable
5 bit IN FALSE hm2_5i25.0.encoder.06.latch-polarity
5 float OUT 0 hm2_5i25.0.encoder.06.position
5 float OUT 0 hm2_5i25.0.encoder.06.position-latched
5 bit OUT FALSE hm2_5i25.0.encoder.06.quad-error
5 bit IN FALSE hm2_5i25.0.encoder.06.quad-error-enable
5 s32 OUT 0 hm2_5i25.0.encoder.06.rawcounts
5 s32 OUT 0 hm2_5i25.0.encoder.06.rawlatch
5 bit IN FALSE hm2_5i25.0.encoder.06.reset
5 float OUT 0 hm2_5i25.0.encoder.06.velocity
5 s32 OUT 0 hm2_5i25.0.encoder.07.count
5 s32 OUT 0 hm2_5i25.0.encoder.07.count-latched
5 bit I/O FALSE hm2_5i25.0.encoder.07.index-enable
5 bit OUT TRUE hm2_5i25.0.encoder.07.input-a
5 bit OUT TRUE hm2_5i25.0.encoder.07.input-b
5 bit OUT FALSE hm2_5i25.0.encoder.07.input-index
5 bit IN FALSE hm2_5i25.0.encoder.07.latch-enable
5 bit IN FALSE hm2_5i25.0.encoder.07.latch-polarity
5 float OUT 0 hm2_5i25.0.encoder.07.position
5 float OUT 0 hm2_5i25.0.encoder.07.position-latched
5 bit OUT FALSE hm2_5i25.0.encoder.07.quad-error
5 bit IN FALSE hm2_5i25.0.encoder.07.quad-error-enable
5 s32 OUT 0 hm2_5i25.0.encoder.07.rawcounts
5 s32 OUT 0 hm2_5i25.0.encoder.07.rawlatch
5 bit IN FALSE hm2_5i25.0.encoder.07.reset
5 float OUT 0 hm2_5i25.0.encoder.07.velocity
5 u32 IN 0x007F2815 hm2_5i25.0.encoder.muxed-sample-frequency
5 bit OUT TRUE hm2_5i25.0.gpio.000.in
5 bit OUT FALSE hm2_5i25.0.gpio.000.in_not
5 bit IN FALSE hm2_5i25.0.gpio.000.out
5 bit OUT TRUE hm2_5i25.0.gpio.001.in
5 bit OUT FALSE hm2_5i25.0.gpio.001.in_not
5 bit IN FALSE hm2_5i25.0.gpio.001.out
5 bit OUT FALSE hm2_5i25.0.gpio.002.in
5 bit OUT TRUE hm2_5i25.0.gpio.002.in_not
5 bit OUT FALSE hm2_5i25.0.gpio.003.in
5 bit OUT TRUE hm2_5i25.0.gpio.003.in_not
5 bit OUT FALSE hm2_5i25.0.gpio.004.in
5 bit OUT TRUE hm2_5i25.0.gpio.004.in_not
5 bit OUT FALSE hm2_5i25.0.gpio.005.in
5 bit OUT TRUE hm2_5i25.0.gpio.005.in_not
5 bit OUT FALSE hm2_5i25.0.gpio.006.in
5 bit OUT TRUE hm2_5i25.0.gpio.006.in_not
5 bit OUT FALSE hm2_5i25.0.gpio.007.in
5 bit OUT TRUE hm2_5i25.0.gpio.007.in_not
5 bit OUT FALSE hm2_5i25.0.gpio.008.in
5 bit OUT TRUE hm2_5i25.0.gpio.008.in_not
5 bit OUT FALSE hm2_5i25.0.gpio.009.in
5 bit OUT TRUE hm2_5i25.0.gpio.009.in_not
5 bit OUT FALSE hm2_5i25.0.gpio.010.in
5 bit OUT TRUE hm2_5i25.0.gpio.010.in_not
5 bit OUT TRUE hm2_5i25.0.gpio.011.in
5 bit OUT FALSE hm2_5i25.0.gpio.011.in_not
5 bit OUT TRUE hm2_5i25.0.gpio.012.in
5 bit OUT FALSE hm2_5i25.0.gpio.012.in_not
5 bit OUT TRUE hm2_5i25.0.gpio.013.in
5 bit OUT FALSE hm2_5i25.0.gpio.013.in_not
5 bit OUT TRUE hm2_5i25.0.gpio.014.in
5 bit OUT FALSE hm2_5i25.0.gpio.014.in_not
5 bit OUT TRUE hm2_5i25.0.gpio.015.in
5 bit OUT FALSE hm2_5i25.0.gpio.015.in_not
5 bit OUT TRUE hm2_5i25.0.gpio.016.in
5 bit OUT FALSE hm2_5i25.0.gpio.016.in_not
5 bit OUT TRUE hm2_5i25.0.gpio.017.in
5 bit OUT FALSE hm2_5i25.0.gpio.017.in_not
5 bit IN FALSE hm2_5i25.0.gpio.017.out
5 bit OUT TRUE hm2_5i25.0.gpio.018.in
5 bit OUT FALSE hm2_5i25.0.gpio.018.in_not
5 bit IN FALSE hm2_5i25.0.gpio.018.out
5 bit OUT FALSE hm2_5i25.0.gpio.019.in
5 bit OUT TRUE hm2_5i25.0.gpio.019.in_not
5 bit OUT FALSE hm2_5i25.0.gpio.020.in
5 bit OUT TRUE hm2_5i25.0.gpio.020.in_not
5 bit OUT FALSE hm2_5i25.0.gpio.021.in
5 bit OUT TRUE hm2_5i25.0.gpio.021.in_not
5 bit OUT FALSE hm2_5i25.0.gpio.022.in
5 bit OUT TRUE hm2_5i25.0.gpio.022.in_not
5 bit OUT FALSE hm2_5i25.0.gpio.023.in
5 bit OUT TRUE hm2_5i25.0.gpio.023.in_not
5 bit OUT FALSE hm2_5i25.0.gpio.024.in
5 bit OUT TRUE hm2_5i25.0.gpio.024.in_not
5 bit OUT FALSE hm2_5i25.0.gpio.025.in
5 bit OUT TRUE hm2_5i25.0.gpio.025.in_not
5 bit OUT FALSE hm2_5i25.0.gpio.026.in
5 bit OUT TRUE hm2_5i25.0.gpio.026.in_not
5 bit OUT FALSE hm2_5i25.0.gpio.027.in
5 bit OUT TRUE hm2_5i25.0.gpio.027.in_not
5 bit OUT TRUE hm2_5i25.0.gpio.028.in
5 bit OUT FALSE hm2_5i25.0.gpio.028.in_not
5 bit OUT TRUE hm2_5i25.0.gpio.029.in
5 bit OUT FALSE hm2_5i25.0.gpio.029.in_not
5 bit OUT TRUE hm2_5i25.0.gpio.030.in
5 bit OUT FALSE hm2_5i25.0.gpio.030.in_not
5 bit OUT TRUE hm2_5i25.0.gpio.031.in
5 bit OUT FALSE hm2_5i25.0.gpio.031.in_not
5 bit OUT TRUE hm2_5i25.0.gpio.032.in
5 bit OUT FALSE hm2_5i25.0.gpio.032.in_not
5 bit OUT TRUE hm2_5i25.0.gpio.033.in
5 bit OUT FALSE hm2_5i25.0.gpio.033.in_not
5 bit IN FALSE hm2_5i25.0.led.CR01
5 bit IN FALSE hm2_5i25.0.led.CR02
5 bit IN FALSE hm2_5i25.0.pwmgen.00.enable
5 float IN 0 hm2_5i25.0.pwmgen.00.value
5 bit IN FALSE hm2_5i25.0.pwmgen.01.enable
5 float IN 0 hm2_5i25.0.pwmgen.01.value
5 bit IN FALSE hm2_5i25.0.pwmgen.02.enable
5 float IN 0 hm2_5i25.0.pwmgen.02.value
5 bit IN FALSE hm2_5i25.0.pwmgen.03.enable
5 float IN 0 hm2_5i25.0.pwmgen.03.value
5 bit IN FALSE hm2_5i25.0.pwmgen.04.enable
5 float IN 0 hm2_5i25.0.pwmgen.04.value
5 bit IN FALSE hm2_5i25.0.pwmgen.05.enable
5 float IN 0 hm2_5i25.0.pwmgen.05.value
5 bit IN FALSE hm2_5i25.0.pwmgen.06.enable
5 float IN 0 hm2_5i25.0.pwmgen.06.value
5 bit IN FALSE hm2_5i25.0.pwmgen.07.enable
5 float IN 0 hm2_5i25.0.pwmgen.07.value
5 s32 OUT 0 hm2_5i25.0.read.time
5 s32 OUT 0 hm2_5i25.0.read_gpio.time
5 bit I/O FALSE hm2_5i25.0.watchdog.has_bit
5 s32 OUT 0 hm2_5i25.0.write.time
5 s32 OUT 0 hm2_5i25.0.write_gpio.time
With that information out of the way, I am unsure of next steps.
It appears that I can use PNCConf to create a configuration but it appears from previous posts in this thread, this would not be useful for what I need to accomplish. Or is the PNCConf only an issue for jrjones as he is using the 7i92 instead of the 5i25?
Also with regard to the differential signal, does a set of pins already exist using the standard 5i25-7i85spx2 firmware/config. i.e. are TX0 and /TX0 the same pwm with opposite polarity?
I did read through the HAL manual and the HOSTMOT2 documentation and have a reasonable grasp of the information presented in these documents. It appears as though most of the basics of what I need to get started are already available through the firmware/config that I downloaded from MESA. I just want to be sure that I am taking the correct steps.
Please advise on the recommended next actions and/or other documentation that I should be reading.
Thanks - Jeff