7i92 7i76 7i88 Hostmot2 Basic Orientation, Syntax & Assignment

More
31 Mar 2022 01:20 - 31 Mar 2022 03:25 #238859 by garrettmin
A Novice at Mesa & LinuxCNC my basic goal is to Add a Mesa Card 7i92 / 7i76 / 7i88 that is not in the PNCConf / Configuration Tool Menu systems.  How to Administrate these Firmware indexes in order to declare Mesa Card Configurations that are not available in the PNCConf & Configuration Tools. 

Firmware Indexes Required: 
1.  Syntax of Indexes in FPGA Firmware
Mesa Provided Bit & Pin Files. 
Mesaflash & 7i92 Configuration Tool 

2.  Syntax of Indexes in LinuxCNC: 
HAL & INI / PNCConf / Configuration Tool

3.  Syntax of Indexes in Xillinix ISE: 
Compiling custom Bit & Pin Files

How do we declare the card configuration that is not provided with the Firmware? 

7i92 / 7i76 / 7i88
is not in PNCConf or Configuration Tool Selection. 
is not in the list of Mesa Bit or Pin Files

Syntax Convention:  hm2_7i92.0.stepgen.05.enable
LinuxCNC is "Sending" that command to the FPGA 7i92 Onboard BIT File.
7i92 receives a command with NO DECLARATION of the Daughter Card (7i76 or 7i88) in the Command. 
How does 7i92 know to send that command to 7i76 or 7i88? 
Is the 7i76 / 7i88 declared as a StepGen embedded in the Bit File?
Review of seveni92.xise doesn't immediatley reveal declarations of the 7i76 or 7i88 in Pin####.VHD or IDROMConst.vhd
Review of HAL & INI doesn't reveal declarations of 7i76 / 7i88.  How do we "Hand Edit" the Hal or Ini File to address the 7i88? 

Syntax Convention:  hm2_7i92.0.7i76.0.0.input-00
Well here the 7i76 is declared in the command. 
Did LinuxCNC / HAL / INI / PNCConf declare that command? 
Or did the BIT File on the FPGA declare that command? 

Theory: 
Declare 7i92 / 7i76 / 7i88 in LinuxCNC Index somehow somewhere
Compile a Bit File 7i92 7i76 7i88 in seveni92.xise
Flash, Send & Turn Motors.

My question in any of these Firmware Index Syntaxes, Where & how do we Declare the Daughter Card?  7i88?  I am trying to "Get" the "Basic Swing of Things" with the Logical Syntax Index and someday hope to attain the "Anything Syntax" level of education where it will be nice and text editor logical to declare all that stuff.... 

Exciting Hobby lots of fun to be had!  Some of my project to share.... 
5-Axis BC Head with smallest Water Cooled Spindle, the 800W. 
Clever "Through" Bearing HUB with Belt Pulley or Hot GearTrain....
Run Utilities through the Bearing Hub
Interchange different Tools Mounted to the HUB.
 
Attachments:
Last edit: 31 Mar 2022 03:25 by garrettmin.

Please Log in or Create an account to join the conversation.

More
31 Mar 2022 13:00 #238893 by cmorley
The 7i92 needs firmware uploaded to support the 7i76/7i88 hardware (it may come with it if you ordered it all together)

Pncconf needs to support the 7i92, 7i76 and 7i88 to completely configure it.
Unfortunately Pncconf does not currently support the 7i88
You could use Pncconf to partially configure a system by using a similar firmware such as 7i76x2 or 7i76x2 with one 7i76.
Then you would need to hand edit the HAL files to configure the 7i88.

There is also a 'discovery' option in Pncconf that tries to directly read the cards on the system but in this case I don't think it would help you with the 7i88.

Please Log in or Create an account to join the conversation.

More
31 Mar 2022 22:28 - 01 Apr 2022 01:16 #238956 by garrettmin
You can call me Eddy & I can call you HAL....

Declare the 7i88 from a 7i76x2 HAL & INI File. 
P1 = 7i88
P2 = 7i76

PNCConf Declaration in HAL for 7i76x2:

loadrt [KINS]KINEMATICS
loadrt [EMCMOT]EMCMOT servo_period_nsec=[EMCMOT]SERVO_PERIOD num_joints=[KINS]JOINTS
loadrt hostmot2
loadrt hm2_eth board_ip="192.168.1.121" config=" num_encoders=2 num_pwmgens=0 num_stepgens=10 sserial_port_0=0000xx"
setp    hm2_7i92.0.watchdog.timeout_ns 5000000
loadrt pid names=pid.x,pid.y,pid.z,pid.z2,pid.s

addf hm2_7i92.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.z2.do-pid-calcs       servo-thread
addf pid.s.do-pid-calcs       servo-thread
addf hm2_7i92.0.write         servo-thread
setp hm2_7i92.0.dpll.01.timer-us -50
setp hm2_7i92.0.stepgen.timer-number 1
# external output signals
# external input signals
# Step Gen signals/setup
setp hm2_7i92.0.stepgen.00.dirsetup


The PNCConf 7i76x2 Syntax does not format 7i76, it does format 0 or 1 which declares P1 or P2. 
setp hm2_7i92.0.
setp hm2_7i92.1.

Although P1 is lesser than P2, P2 appears to be referenced by 0 which is lesser than 1. 
P1 = 1
P2 = 0

LinuxCNC is "Sending" only that
setp hm2_7i92.0.stepgen.00.dirsetup

without any reference to a Daughter Board
with reference to the P1 or P2 Address as 0 or 1.  

The Daughter Boards are declared elsewhere?  I am missing that declaration, I cannot find it... 

The Presumed Logical Declaration would be something like this...
setp hm2_7i92.0.7i76.0.0.stepgen.00.dirsetup
setp hm2_7i92.1.7i88.0.0.stepgen.01.dirsetup

Are there 2x Indexes for declaring a Daughter Board? 
1.  Declare in PNCConf
setp hm2_7i92.0.stepgen.00.dirsetup
"There is no declaration in HAL for the daughter board,it's abstracted into a object oriented reference elsewhere".

2.  Declare in BIT File: 
Declare same in Hostmot2 BIT with Xillinix ISE.

Or is the 7i88 referenced only as a 0 or 1 Address?  Is the 0 or 1 the only required syntax for declaring a 7i88 in HAL ?  The BIT File then routes the commands to 0 or 1 & knows it's a 7i88 with PIN?  That is the 7i88 declaration for HAL?  A 0 or 1 only?  without any 7i88 string?
If 7i88 = P1 then
setp hm2_7i92.1.

If 7i88 = P2 then
setp hm2_7i92.0.

Would you please reference the Syntax that I could add to HAL & INI in order to configure the 7i88? 

OK I have found the Hostmot2 Instruction manual and that should hopefully answer my questions! 

Attachments:
Last edit: 01 Apr 2022 01:16 by garrettmin.

Please Log in or Create an account to join the conversation.

More
01 Apr 2022 15:31 #238995 by PCW
 

File Attachment:

File Name: 7i92_7i76_7i88d.zip
File Size:128 KB


Contains a bit file for a 7I92+7I76+7I88:
P2 --> 7I76 (stepgens 0..4 + other 7I76 I/O)
P1 --> 7I88 (stepgens 5..9 + 1 PWM)

 
Attachments:

Please Log in or Create an account to join the conversation.

More
03 Apr 2022 00:01 - 03 Apr 2022 00:47 #239116 by garrettmin
OK it's flashed & I opened the VHD in Xillinix ISE. 

How do I configure PNCConf & hand edit for 7i92 / 7i76 / 7i88 ? 

While Editing HAL & INI, there is no reference in the syntax to a daughter board 7i76 or 7i88.

Is the 7i88 only declared by the Numbered Address of the StepGen Declaration?

In this example, "05" or "06" is reffering to the 7i88?
hm2_7i92.0.stepgen.05.dirsetup
hm2_7i92.0.stepgen.06.step_type
Last edit: 03 Apr 2022 00:47 by garrettmin.

Please Log in or Create an account to join the conversation.

More
03 Apr 2022 00:43 #239119 by PCW

In this example, "05" or "06" is reffering to the 7i88?
hm2_7i92.0.stepgen.05.dirsetup
hm2_7i92.0.stepgen.06.step_type

Yes, as I said, stepgens 5 through 9 are on the 7I88
Note: if you only damaged the field I/O section of the 7I76,
stepgen 0..4 should still work on the 7I76

Please Log in or Create an account to join the conversation.

More
03 Apr 2022 00:52 - 04 Apr 2022 20:12 #239121 by garrettmin
loadrt [KINS]KINEMATICS
loadrt [EMCMOT]EMCMOT servo_period_nsec=[EMCMOT]SERVO_PERIOD num_joints=[KINS]JOINTS
loadrt hostmot2
loadrt hm2_eth board_ip="192.168.1.121" config=" num_encoders=1 num_pwmgens=0 num_stepgens=9 sserial_port_0=0000xx"
setp    hm2_7i92.0.watchdog.timeout_ns 5000000
loadrt pid names=pid.x,pid.x2,pid.y,pid.y2,pid.z,pid.z2,pid.a,pid.s

addf hm2_7i92.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.x2.do-pid-calcs       servo-thread
addf pid.y.do-pid-calcs       servo-thread
addf pid.y2.do-pid-calcs       servo-thread
addf pid.z.do-pid-calcs       servo-thread
addf pid.z2.do-pid-calcs       servo-thread
addf pid.a.do-pid-calcs       servo-thread
addf pid.s.do-pid-calcs       servo-thread
addf hm2_7i92.0.write         servo-thread
setp hm2_7i92.0.dpll.01.timer-us -50
setp hm2_7i92.0.stepgen.timer-number 1

# external output signals

EMC Starts & locks the 7i92 from the system & the 7i92 is not available to MesaFlash... 
I can home and load a file & push play or Jog... 
Physical Motors don't turn... 

Nema 23 Differential Wiring Scheme of Step -+ Pul -+
Leadshine HBS57H Closed Loop
TB6600

What am I missing from the HAL Declaration?   7i92 - 7i76 - 7i88... 
loadrt stepgen step_type=0,0,0 ?
loadrt pwmgen output_type=1 ?
loadrt stepgen step_type=0,0,0,0,0,0,0,0 ?

While I am a Mesa Novice, I am Unknown with HAL sufficient to start the 7i92 - 7i76 - 7i88.... 
Could anyone provide a reference to a Known Good HAL File for starting motors & all with 7i92 - 7i76 -7i88? 








 
Last edit: 04 Apr 2022 20:12 by garrettmin.

Please Log in or Create an account to join the conversation.

More
04 Apr 2022 22:25 - 04 Apr 2022 23:40 #239282 by garrettmin
New to Mesa, I didn't know to use LED for testing & diagnostic!   Wow what a difference!  Now I can see what is going on! 

7i92 was in fact turning the motors or lighting LED with OEM HAL. 

Evidently the Drivers or wiring are the reason the motors are not turning. 

The Boards are responding Verified with LED...After shorting polarity on 24V TB1

Inputs / Outputs are now failed?

./7i76-7i88.hal:428: parameter or pin 'hm2_7i92.0.7i76.0.0.spinout-minlim' not found
./7i76-7i88.hal:32: Pin 'hm2_7i92.0.7i76.0.0.input-00' does not exist
./7i76-7i88.hal:32: Pin 'hm2_7i92.0.7i76.0.0.input-15' does not exist
./7i76-7i88.hal:32: Pin 'hm2_7i92.0.7i76.0.0.output-07' does not exist
21777

I installed a LED between TB1 & TB6 #1 with no result to test I/O.
Last edit: 04 Apr 2022 23:40 by garrettmin.

Please Log in or Create an account to join the conversation.

More
06 Apr 2022 02:09 - 06 Apr 2022 17:08 #239410 by garrettmin
Leadshine HBS57H Red LED Error:
Position Following Error Protection

TB6600 Turns correctly if installed on same channel.

 
Last edit: 06 Apr 2022 17:08 by garrettmin.

Please Log in or Create an account to join the conversation.

More
06 Apr 2022 09:58 #239432 by tommylight
HBS57H wiring error, be it motor or encoder.
Has nothing to do with LinuxCNC or Mesa boards, granted acceleration is set to something reasonable.

Please Log in or Create an account to join the conversation.

Moderators: cmorley
Time to create page: 0.168 seconds
Powered by Kunena Forum