MESA PWM
27 Jun 2013 00:35 #36102
by eslavko
Andypugh I don't understand what you mean exactly. (probably my english in't good enought)
I already have 7i43 and have made opto breakout board. One port from mesa is all output and other is all input.
There is enought pins if there is possibility to configure PWM/PDM to use just one pin instead 3. (And I need just one)
For input I lost few pins in encoder as in one I just want spindle speed (encoder A) and index and B not connected. For jog whell I have encoder A and B so index is not needed.
If there is some option to make firmware to be able selection of what kind of encoder / pwm / pdm is connected then this should cover (at least my needs)
For example in pncconf the encoder-B and encoder-I is grayed out. If that can be configurable to have that option selectable (for examtle to select signal or general IO on that pin.)
About buildbot I don't understand how to tell what I want?!?
(and about update, in finished machine there is no internet. So updating is off)
And again about pins... I run out of pins if PWM/encoder eat my pins, only in case if I wire limit+ and limit - of each axis separate. If I wire Both limit's in same pin then I have enought pins. (probably I will newer need separated limits but who knows...)
I already have 7i43 and have made opto breakout board. One port from mesa is all output and other is all input.
There is enought pins if there is possibility to configure PWM/PDM to use just one pin instead 3. (And I need just one)
For input I lost few pins in encoder as in one I just want spindle speed (encoder A) and index and B not connected. For jog whell I have encoder A and B so index is not needed.
If there is some option to make firmware to be able selection of what kind of encoder / pwm / pdm is connected then this should cover (at least my needs)
For example in pncconf the encoder-B and encoder-I is grayed out. If that can be configurable to have that option selectable (for examtle to select signal or general IO on that pin.)
About buildbot I don't understand how to tell what I want?!?
(and about update, in finished machine there is no internet. So updating is off)
And again about pins... I run out of pins if PWM/encoder eat my pins, only in case if I wire limit+ and limit - of each axis separate. If I wire Both limit's in same pin then I have enought pins. (probably I will newer need separated limits but who knows...)
Please Log in or Create an account to join the conversation.
27 Jun 2013 01:37 #36104
by eslavko
At least for now the intendent use is described below.
As I understand only output pins 1-14 and input pins 1..3 need to be hardcoded. All other are general IO. (or I mess something again)
Output connector
1 StepX
2 DirX
3 StepY
4 DirY
5 StepY2
6 DirY2
7 StepZ
8 DirZ
9 StepA
10 DirA
11 StepC
12 DirC
13 PDM Spindle I
14 PWM Spindle II
15 General Output
16 General Output
17 General Output
18 General Output
19 General Output
20 General Output
21 General Output
22 General Output
23 General Output
24 General Output
Input Connector
1 EncoderI-A (spindel speed)
2 EncoderII-A (jog whell)
3 EncoderII-B (jog whell)
4 Limit X (General input)
5 Limit Y (General input)
6 Limit Z (General input)
7 Limit A (General input)
8 Limit C (General input)
9 Home X (General input)
10 Home Y (General input)
11 Home Y2 (General input)
12 Home Z (General input)
13 Home A (General input)
14 Home C (General input)
15 Home Index X (General input)
16 Home Index Y (General input)
17 Home Index Y2 (General input)
18 Home Index Z (General input)
19 Home Index A (General input)
20 Home Index C (General input)
21 (General input)
22 (General input)
23 (General input)
24 (General input)
As I understand only output pins 1-14 and input pins 1..3 need to be hardcoded. All other are general IO. (or I mess something again)
Output connector
1 StepX
2 DirX
3 StepY
4 DirY
5 StepY2
6 DirY2
7 StepZ
8 DirZ
9 StepA
10 DirA
11 StepC
12 DirC
13 PDM Spindle I
14 PWM Spindle II
15 General Output
16 General Output
17 General Output
18 General Output
19 General Output
20 General Output
21 General Output
22 General Output
23 General Output
24 General Output
Input Connector
1 EncoderI-A (spindel speed)
2 EncoderII-A (jog whell)
3 EncoderII-B (jog whell)
4 Limit X (General input)
5 Limit Y (General input)
6 Limit Z (General input)
7 Limit A (General input)
8 Limit C (General input)
9 Home X (General input)
10 Home Y (General input)
11 Home Y2 (General input)
12 Home Z (General input)
13 Home A (General input)
14 Home C (General input)
15 Home Index X (General input)
16 Home Index Y (General input)
17 Home Index Y2 (General input)
18 Home Index Z (General input)
19 Home Index A (General input)
20 Home Index C (General input)
21 (General input)
22 (General input)
23 (General input)
24 (General input)
Please Log in or Create an account to join the conversation.
02 Jul 2013 04:25 #36216
by PCW
All pins can be GPIO in _any_ Hostmot2 configuration but only if the alternate function for that pin
(step/dir/PWM/encoder etc) is disabled in the config line (the num_stepgens=3 etc etc)
Input pins 15 through 20 (indexes) will be encoder index pins if the corresponding encoders are enabled
This does not prevent you from reading them as GP inputs but will prevent you from using them as outputs
if the corresponding encoder is enabled
Before I build a special bit file can you say which connector you wish for the input and output section?
Also I assume you mean 2 separate PWM generator outputs on output pins 13 and 14
(as PWM vs PDM is a setup option, not anything hardwired in the bit file)
At least for now the intendent use is described below.
As I understand only output pins 1-14 and input pins 1..3 need to be hardcoded. All other are general IO. (or I mess something again)
All pins can be GPIO in _any_ Hostmot2 configuration but only if the alternate function for that pin
(step/dir/PWM/encoder etc) is disabled in the config line (the num_stepgens=3 etc etc)
Input pins 15 through 20 (indexes) will be encoder index pins if the corresponding encoders are enabled
This does not prevent you from reading them as GP inputs but will prevent you from using them as outputs
if the corresponding encoder is enabled
Before I build a special bit file can you say which connector you wish for the input and output section?
Also I assume you mean 2 separate PWM generator outputs on output pins 13 and 14
(as PWM vs PDM is a setup option, not anything hardwired in the bit file)
Please Log in or Create an account to join the conversation.
02 Jul 2013 16:02 - 02 Jul 2013 16:04 #36229
by eslavko
Ok I know if I disable stepgen the pins for them is available as general IO.
But is there option to disable only index pin in encoder for example. (so to be available as general i/o)
Input pins 15 trough 20 are general input. They are there as index for homing. (no encoder used)
Actually the hardware function for fpga is on pins 1 to 14 on one connector (with output only) and pin s 1 to 3 on other connector (input only) As connectors are the same just pick whatever one for outputs and other for input. As for start I just copy SVST4_12 maybe just prefer outputs to be on 2nd conector as is in that config.
pin 13 and 14 are separate outputs as machine is intended to have two spindles. (lighweight in 5 axis configurtion and powerful one as 3 axis cnc)
I`m little confused that PDM/PWM isn`t hardwired. Servo thread is little slow to make that pulses as i wish. So they need to be hardware done.
As I`m in holiday now, just dont hurry.
All pins can be GPIO in _any_ Hostmot2 configuration but only if the alternate function for that pin
(step/dir/PWM/encoder etc) is disabled in the config line (the num_stepgens=3 etc etc)
Input pins 15 through 20 (indexes) will be encoder index pins if the corresponding encoders are enabled
This does not prevent you from reading them as GP inputs but will prevent you from using them as outputs
if the corresponding encoder is enabled
Before I build a special bit file can you say which connector you wish for the input and output section?
Also I assume you mean 2 separate PWM generator outputs on output pins 13 and 14
(as PWM vs PDM is a setup option, not anything hardwired in the bit file)
Ok I know if I disable stepgen the pins for them is available as general IO.
But is there option to disable only index pin in encoder for example. (so to be available as general i/o)
Input pins 15 trough 20 are general input. They are there as index for homing. (no encoder used)
Actually the hardware function for fpga is on pins 1 to 14 on one connector (with output only) and pin s 1 to 3 on other connector (input only) As connectors are the same just pick whatever one for outputs and other for input. As for start I just copy SVST4_12 maybe just prefer outputs to be on 2nd conector as is in that config.
pin 13 and 14 are separate outputs as machine is intended to have two spindles. (lighweight in 5 axis configurtion and powerful one as 3 axis cnc)
I`m little confused that PDM/PWM isn`t hardwired. Servo thread is little slow to make that pulses as i wish. So they need to be hardware done.
As I`m in holiday now, just dont hurry.
Last edit: 02 Jul 2013 16:04 by eslavko.
Please Log in or Create an account to join the conversation.
16 Jul 2013 16:22 #36699
by eslavko
Ok I copyed that files in lib/firmware/hm2/ and got my config.
At first seems ok. Steppers,PWM, and encoders are ok. But the rest of pins is missing. All other pins in Spepper/pwm connector should be general output, and in other connector is for input. Is that my error or xml/bitfile is wrong?
freeby.mesanet.com/enslavko.zip
Has 200k and 400K 7I43 bitfiles with your pin-out plus the 400K pin and XML files
(easily edited for the 200K)
Also included is the pin-out definition source file (PIN_enslavko_48.vhd)
Ok I copyed that files in lib/firmware/hm2/ and got my config.
At first seems ok. Steppers,PWM, and encoders are ok. But the rest of pins is missing. All other pins in Spepper/pwm connector should be general output, and in other connector is for input. Is that my error or xml/bitfile is wrong?
Please Log in or Create an account to join the conversation.
16 Jul 2013 16:30 #36700
by andypugh
No, the Hostmot2 driver doesn't really have the concept of dedicated inputs and outputs, and it is likely that the bitfile fills up all the connectors. What happens is that any unused functions release their pins as GPIO, and then you can choose on a pin-by-pin basis whether you want the pin to be an output or an input.
(In fact is is worth noting that even pins with a function can be used as inputs at the same time, so you can, for example, see what the inputs to an encoder module are doing).
Note also that there is nothing special about the Hall and Status pins in a 7i39 bitfile, so those inputs show up as GPIO rather than (for example) "hall01"
At first seems ok. Steppers,PWM, and encoders are ok. But the rest of pins is missing. All other pins in Spepper/pwm connector should be general output, and in other connector is for input. Is that my error or xml/bitfile is wrong?
No, the Hostmot2 driver doesn't really have the concept of dedicated inputs and outputs, and it is likely that the bitfile fills up all the connectors. What happens is that any unused functions release their pins as GPIO, and then you can choose on a pin-by-pin basis whether you want the pin to be an output or an input.
(In fact is is worth noting that even pins with a function can be used as inputs at the same time, so you can, for example, see what the inputs to an encoder module are doing).
Note also that there is nothing special about the Hall and Status pins in a 7i39 bitfile, so those inputs show up as GPIO rather than (for example) "hall01"
Please Log in or Create an account to join the conversation.
16 Jul 2013 18:18 #36703
by eslavko
I'm know that General I/O is available in free pins. Just the problem is that it isn't available in Pncconf to configure it. (It's available if I select SVST4_6 for example, but not if I select that custom bitfile). So probably is something wrong compiled... Maybe just xml is bad.
Please Log in or Create an account to join the conversation.
Moderators: cmorley
Time to create page: 0.616 seconds