Sebastian, So the PWMs appear on the P2 connector, but the Step generators appear on P4? I have the P4 connector going to a 7i37 to handle the high voltage I/O. So I guess I have to move that cable to P3 and remap the I/O. It looks like the TTL I/O can map to either P2 or P4, but it does mean I need three cables. I was hoping to be able to do it in two.
What is the limitation as far as putting the step generators and PWMs on the same connector? Regards, Eric That's more like it :-) Now that the driver's loaded, it can tell us what its pinout is. (This should show up even without setting /proc/rtapi/debug.) Here's the relevant bits from the dmesg2.txt file you sent me: > [ 2485.811368] hm2/hm2_5i20.0: 72 I/O Pins used: > [ 2485.811374] hm2/hm2_5i20.0: I/O Pin P2.000: IOPort > [ 2485.811381] hm2/hm2_5i20.0: I/O Pin P2.001: IOPort > [ 2485.811387] hm2/hm2_5i20.0: I/O Pin P2.002: IOPort > [ 2485.811393] hm2/hm2_5i20.0: I/O Pin P2.003: IOPort > [ 2485.811399] hm2/hm2_5i20.0: I/O Pin P2.004: IOPort > [ 2485.811405] hm2/hm2_5i20.0: I/O Pin P2.005: IOPort > [ 2485.811411] hm2/hm2_5i20.0: I/O Pin P2.006: IOPort > [ 2485.811420] hm2/hm2_5i20.0: I/O Pin P2.007: PWMGen #0, pin Out0 (PWM or Up) (Output) > [ 2485.811427] hm2/hm2_5i20.0: I/O Pin P2.008: IOPort > [ 2485.811435] hm2/hm2_5i20.0: I/O Pin P2.009: PWMGen #0, pin Out1 (Dir or Down) (Output) > [ 2485.811442] hm2/hm2_5i20.0: I/O Pin P2.010: IOPort > [ 2485.811450] hm2/hm2_5i20.0: I/O Pin P2.011: PWMGen #0, pin Not-Enable (Output) > [ 2485.811457] hm2/hm2_5i20.0: I/O Pin P2.012: IOPort > [ 2485.811464] hm2/hm2_5i20.0: I/O Pin P2.013: IOPort > [ 2485.811470] hm2/hm2_5i20.0: I/O Pin P2.014: IOPort > [ 2485.811476] hm2/hm2_5i20.0: I/O Pin P2.015: IOPort > [ 2485.811482] hm2/hm2_5i20.0: I/O Pin P2.016: IOPort > [ 2485.811488] hm2/hm2_5i20.0: I/O Pin P2.017: IOPort > [ 2485.811495] hm2/hm2_5i20.0: I/O Pin P2.018: IOPort > [ 2485.811501] hm2/hm2_5i20.0: I/O Pin P2.019: IOPort > [ 2485.811507] hm2/hm2_5i20.0: I/O Pin P2.020: IOPort > [ 2485.811513] hm2/hm2_5i20.0: I/O Pin P2.021: IOPort > [ 2485.811519] hm2/hm2_5i20.0: I/O Pin P2.022: IOPort > [ 2485.811526] hm2/hm2_5i20.0: I/O Pin P2.023: IOPort > [ 2485.811532] hm2/hm2_5i20.0: I/O Pin P3.024: IOPort > [ 2485.811538] hm2/hm2_5i20.0: I/O Pin P3.025: IOPort > [ 2485.811544] hm2/hm2_5i20.0: I/O Pin P3.026: IOPort > [ 2485.811550] hm2/hm2_5i20.0: I/O Pin P3.027: IOPort > [ 2485.811557] hm2/hm2_5i20.0: I/O Pin P3.028: IOPort > [ 2485.811563] hm2/hm2_5i20.0: I/O Pin P3.029: IOPort > [ 2485.811569] hm2/hm2_5i20.0: I/O Pin P3.030: IOPort > [ 2485.811575] hm2/hm2_5i20.0: I/O Pin P3.031: IOPort > [ 2485.811581] hm2/hm2_5i20.0: I/O Pin P3.032: IOPort > [ 2485.811588] hm2/hm2_5i20.0: I/O Pin P3.033: IOPort > [ 2485.811594] hm2/hm2_5i20.0: I/O Pin P3.034: IOPort > [ 2485.811600] hm2/hm2_5i20.0: I/O Pin P3.035: IOPort > [ 2485.811606] hm2/hm2_5i20.0: I/O Pin P3.036: IOPort > [ 2485.811612] hm2/hm2_5i20.0: I/O Pin P3.037: IOPort > [ 2485.811619] hm2/hm2_5i20.0: I/O Pin P3.038: IOPort > [ 2485.811625] hm2/hm2_5i20.0: I/O Pin P3.039: IOPort > [ 2485.811631] hm2/hm2_5i20.0: I/O Pin P3.040: IOPort > [ 2485.811637] hm2/hm2_5i20.0: I/O Pin P3.041: IOPort > [ 2485.811643] hm2/hm2_5i20.0: I/O Pin P3.042: IOPort > [ 2485.811654] hm2/hm2_5i20.0: I/O Pin P3.043: IOPort > [ 2485.811660] hm2/hm2_5i20.0: I/O Pin P3.044: IOPort > [ 2485.811667] hm2/hm2_5i20.0: I/O Pin P3.045: IOPort > [ 2485.811673] hm2/hm2_5i20.0: I/O Pin P3.046: IOPort > [ 2485.811679] hm2/hm2_5i20.0: I/O Pin P3.047: IOPort > [ 2485.811686] hm2/hm2_5i20.0: I/O Pin P4.048: StepGen #0, pin Step (Output) > [ 2485.811695] hm2/hm2_5i20.0: I/O Pin P4.049: StepGen #0, pin Direction (Output) > [ 2485.811704] hm2/hm2_5i20.0: I/O Pin P4.050: StepGen #0, pin (unused) (Output) > [ 2485.811712] hm2/hm2_5i20.0: I/O Pin P4.051: StepGen #0, pin (unused) (Output) > [ 2485.811721] hm2/hm2_5i20.0: I/O Pin P4.052: StepGen #0, pin (unused) (Output) > [ 2485.811729] hm2/hm2_5i20.0: I/O Pin P4.053: StepGen #0, pin (unused) (Output) > [ 2485.811738] hm2/hm2_5i20.0: I/O Pin P4.054: StepGen #1, pin Step (Output) > [ 2485.811746] hm2/hm2_5i20.0: I/O Pin P4.055: StepGen #1, pin Direction (Output) > [ 2485.811755] hm2/hm2_5i20.0: I/O Pin P4.056: StepGen #1, pin (unused) (Output) > [ 2485.811763] hm2/hm2_5i20.0: I/O Pin P4.057: StepGen #1, pin (unused) (Output) > [ 2485.811772] hm2/hm2_5i20.0: I/O Pin P4.058: StepGen #1, pin (unused) (Output) > [ 2485.811780] hm2/hm2_5i20.0: I/O Pin P4.059: StepGen #1, pin (unused) (Output) > [ 2485.811788] hm2/hm2_5i20.0: I/O Pin P4.060: IOPort > [ 2485.811794] hm2/hm2_5i20.0: I/O Pin P4.061: IOPort > [ 2485.811800] hm2/hm2_5i20.0: I/O Pin P4.062: IOPort > [ 2485.811806] hm2/hm2_5i20.0: I/O Pin P4.063: IOPort > [ 2485.811812] hm2/hm2_5i20.0: I/O Pin P4.064: IOPort > [ 2485.811819] hm2/hm2_5i20.0: I/O Pin P4.065: IOPort > [ 2485.811825] hm2/hm2_5i20.0: I/O Pin P4.066: IOPort > [ 2485.811831] hm2/hm2_5i20.0: I/O Pin P4.067: IOPort > [ 2485.811837] hm2/hm2_5i20.0: I/O Pin P4.068: IOPort > [ 2485.811843] hm2/hm2_5i20.0: I/O Pin P4.069: IOPort > [ 2485.811850] hm2/hm2_5i20.0: I/O Pin P4.070: IOPort > [ 2485.811856] hm2/hm2_5i20.0: I/O Pin P4.071: IOPort First of all note that the pinout shows one pwmgen and two stepgens, and no encoders; this is as specified by your config string. The way to read this pinout description is as follows: Each line is preceeded by the somewhat cryptic string "hm2/hm2_5i20.0": the hm2 means hostmot2 of course, and the "5i20.0" means the first 5i20 board discovered. There's one line per I/O pin that that board has. Each line includes the name of the I/O pin as "Connector.PinNumber" and the use that the driver is making of the pin. So for example, the very last line means "on connector P4, I/O pin 71 is used as IOPort". IOPort is another somewhat cryptic thing that means GPIO. So based on that, you'd expect to find some HAL objects with names like "hm2_5i20.0.gpio.P4.071.in", "hm2_5i20.0.gpio.P4.071.out", "hm2_5i20.0.gpio.P4.071.is-output", etc. Another example is the block of pins P4.054 through P4.059, which are used for the second stepgen instance. The "step" output is on P4.054, and the "direction" output is on P4.055. (The other four stepgen outputs are used for table-driven steppers, which are very rare; there will be a mechanism to reclaim them as gpios in a future version of hostmot2 real soon now.) hostmot2 will tell you each time it successfully initializes a board what that board's pinout is. The pinout will be the same each time you load the same version of the driver with the same firmware and the same config string. The firmware determines how many of each module (stepgen, pwmgen, and encoder) are available and which I/O pins each of those module instances are connected to. The config string to the driver lets you optionally disable some module instances; the pins of the disabled module instances become GPIOs. Does this make sense? ------------------------------------------------------------------------- This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK & win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100&url=/ _______________________________________________ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users