Advanced Search

Search Results (Searched for: 7i76e)

  • Aria James
  • Aria James
21 Apr 2025 18:23 - 21 Apr 2025 18:24

Issue with inconsistent spindle RPM readings on Mesa 7i76e + LinuxCNC setup

Category: General LinuxCNC Questions

Hey everyone,
I’ve been setting up a CNC mill using LinuxCNC with a Mesa 7i76e board, and I’ve run into a bit of a headache. The spindle RPM readings in the LinuxCNC GUI are fluctuating a lot even when the spindle speed seems stable when measured with an external tachometer. I'm using an encoder on the spindle for feedback, but I’m not sure if the issue is from signal noise, encoder settings, or something else in the HAL config.Has anyone else had similar issues with inconsistent RPM readings? What would you recommend checking first encoder wiring, debounce filtering, or maybe even firmware updates for the Mesa board? Any guidance would be a huge help, I’m still getting comfortable with HAL and custom configs.Thanks in advance!

References:

www.theengineeringprojects.com/2023/06/i...l-with-linuxcnc.html
www.cnczone.com/forums/linuxcnc-formerly-emc2-/
store.mesanet.com/index.php?route=product/product&product_id=58
  • spumco
  • spumco
18 Apr 2025 12:52

Need help making rotary axis behave like second spindle

Category: Advanced Configuration

BINGO, adding the halui line did the trick. Thank you PCW and spumco, you guys are amazing (and lighting fast responders).
 

Thanks for reporting back, and glad to hear it's sorted out.

BTW, the "=>" and "<=" in the line are just characters to help the user visualize the pin to signal connection.  They are not required, and are ignored by LCNC.  I personally find single-line HAL entries nearly impossible to read, but breaking them up in to multiple lines does make for a much longer HAL file.

For example, the single line:
net machine-is-on hm2_7i76e.0.stepgen.04.enable halui.machine.is-on

is the same to LCNC as:
net machine-is-on  <= halui.machine.is-on
net machine-is-on  => hm2_7i76e.0.stepgen.04.enable
  • theslawek
  • theslawek
18 Apr 2025 04:16

Need help making rotary axis behave like second spindle

Category: Advanced Configuration

After my last post I was trying "machine-is-on" in the lines WITHOUT hm2. I tried your replacement and the result is M3 and M4 no longer do anything. No error.

#net spindle1-enable => hm2_7i76e.0.stepgen.04.enable
net machine-is-on hm2_7i76e.0.stepgen.04.enable

Even tried with the same "=>" and still same behaviour.

Do I have to do something with my regular spindle hal entries for it to play nice?
net spindle-enable => hm2_7i76e.0.7i76.0.0.spinena
  • spumco
  • spumco
18 Apr 2025 04:08

Need help making rotary axis behave like second spindle

Category: Advanced Configuration

Simply replacing:

net spindle.1.on hm2_7i76e.0.stepgen.04.enable

with

net machine-is-on  hm2_7i76e.0.stepgen.04.enable

Should fix the issue.
 

PCW - I didn't see the halui signal machine-is-on in his HAL file; maybe I missed it.

OP - if that signal is already in your half file, do what PCW posted.

If it's not already there, you can tweak it to this:

net machine-is-on <= halui.machine.is-on
net machine-is-on => hm2_7i76e.0.stepgen.04.enable

I can confirm this fixed my stepgen spindle after PCW suggested it to me last year.
  • PCW
  • PCW's Avatar
18 Apr 2025 03:54 - 18 Apr 2025 03:55

Need help making rotary axis behave like second spindle

Category: Advanced Configuration

Simply replacing:

net spindle.1.on hm2_7i76e.0.stepgen.04.enable

with

net machine-is-on  hm2_7i76e.0.stepgen.04.enable

Should fix the issue.
  • spumco
  • spumco
17 Apr 2025 12:16

Need help making rotary axis behave like second spindle

Category: Advanced Configuration

  1. Should I expect M5 to stop all spindles, or do I have to get used to using M5 $-1?
    • Is it possible to get M4 to work? It doesn't do anything right now.


M5 - I recall some discussion on Github about what should be the default behavior for multi-spindle M5 commands.  I found a commit that appears to change M5 to 'stop all spindles', and any of the $ modifiers are for individual spindles.
github.com/LinuxCNC/linuxcnc/commit/01a0...d65486193ead51027c29

Probably want to do some testing yourself.

M4: I think what's going on is that step/dir spindles require an explicit reverse speed value in the INI file, despite what the manual indicates.
linuxcnc.org/docs/devel/html/config/ini-...:ini:sec:spindle-num

adding
[SPINDLE_1]
MAX_REVERSE_VELOCITY = 550

Might do the trick.

If this doesn't work, the next thing is for you to get used to using the 'halshow' feature in LCNC.  This is a simple but powerful tool for debugging since it lets you see what LCNC is doing behind the scenes.  In your case, you want to know why M4 isn't working so you should display all the HAL pins which affect the spindle - including the PID pins.

When you open halshow there's a folder tree on the left where you can click on all the pins (real physical pins, or logical pins) in LCNC.  Once you select those they will appear on the right in the 'watchlist'.  On/off (bit) pins will look sort of like red/yellow LED's, and other pin types will display the value.
What you want is to display all the pins which form the internal logic chain that starts with and M4 command and ends with the mesa stepgen outputting signals to the drive.  Figuring out all the pins and how they're logically interconnected is not always straightforward... but it also didn't cost you buckets of money.

This is where coming to terms with HAL is necessary:

All this stuff like this below still makes no sense to me as to what its purpose is.
net spindle1-vel-cmd-rps        <=  spindle.1.speed-out-rps


'spindle.1.speed-out-rps' is a logical (not physical) pin inside LCNC.  When LCNC starts up and reads the HAL file, there are a number of default functions that are automatically loaded. One of these functions is called 'motion.comp', and a description of what it does and all the related pins which are created is located here:
linuxcnc.org/docs/devel/html/man/man9/motion.9.html

If you read through that page, what you find is a list of logical pins which are created when LCNC starts.  Once those pins are created, you can do 'stuff' with them by connecting them together.  I won't go in to specifics right this minute, but any pin which is connected to spindle.1.speed-out-rps will receive a value that is equal to the commanded rotary-axis spindle speed in revolutions per second.

Hopefully this will click with you soon.

BUT

Assuming you didn't mess things up significantly during your editing, I think there may (still) be at least one bug in Mesact or PNCconf for step/dir spindles.

See where spindle.1.on is connected to hm2_7i76e.0.stepgen.04.enable through signal spindle1-enable?

This connection will result in the stepgen shutting off instantly when the spindle is turned off - no controlled deceleration.  This result in a massive BANG! when the motor drive stops dead, and can lead to over-voltage trips in the drive or broken things.

This should have been fixed in LCNC 2.9, but it appears to still be an issue:
github.com/LinuxCNC/linuxcnc/issues/2748

This bug shouldn't affect M4/reverse not working, but I bet your spindle stops HARD right now and doesn't decel gracefully.  
  • theslawek
  • theslawek
17 Apr 2025 04:17

Need help making rotary axis behave like second spindle

Category: Advanced Configuration

Hi Spumco, I appreciate your dedication to helping me accomplish this.

I ran into a hurdle immediately with MesaCT 2.1.7. When set to 7i76E, or any other card for that matter, the Spindle -> StepGen tab just has a message of "not functioning yet". I even cloned the lastest master from GitHub and the same message is present.

I was about to press Post on this reply, but then I thought, why don't I try PNCConf in case that's what you meant. PNCConf seems to have what you indicated. I did the changes in the INI, but I'm hung up on the HAL part.

Here are the substitutions I made from the PNCConf HAL into the clone of my good xyza config. (A parts were removed)
  1. pid.s is pid.s1 (including in the loadrt and do-pid-calcs parts)
  2. SPINDLE_0 to SPINDLE_1
  3. changed all ".s" entries to ".s1"
  4. entries such as "net spindle-vel-cmd-rps" changed to "net spindle1-vel-cmd-rps"
I've loaded the config many times and addressed my oversights.

I'm stuck with this error:

twopass: Error in file ./hallib/main.hal:
    Pin 'spindle.1.speed-ut-rps' does not exist


Which I think relates to this block. I'm not sure how to go from here. Are these related to the GUI?

net spindle1-vel-cmd-rps        <=  spindle.1.speed-out-rps
net spindle1-vel-cmd-rps-abs    <=  spindle.1.speed-out-rps-abs
net spindle1-vel-cmd-rpm        <=  spindle.1.speed-out
net spindle1-vel-cmd-rpm-abs    <=  spindle.1.speed-out-abs
net spindle1-enable             <=  spindle.1.on
net spindle1-cw                 <=  spindle.1.forward
net spindle1-ccw                <=  spindle.1.reverse
net spindle1-brake              <=  spindle.1.brake
net spindle1-revs               =>  spindle.1.revs
net spindle1-at-speed           =>  spindle.1.at-speed
net spindle1-vel-fb-rps         =>  spindle.1.speed-in
net spindle1-index-enable      <=>  spindle.1.index-enable

My latest INI and HALs attached.
  • JohnnyCNC
  • JohnnyCNC's Avatar
16 Apr 2025 23:21
Replied by JohnnyCNC on topic spindle with encoder

spindle with encoder

Category: Basic Configuration

I'm not really sure exactly what is does, but this is where it is used in my hal file.
It looks like it is set to -10800 because 5400 to -5400 is -10800.

# ---Analog output signals/setup---
setp hm2_7i76e.0.7i83.0.1.analogout5-scalemax [SPINDLE_0]OUTPUT_SCALE
setp hm2_7i76e.0.7i83.0.1.analogout5-minlim [SPINDLE_0]OUTPUT_MIN_LIMIT
setp hm2_7i76e.0.7i83.0.1.analogout5-maxlim [SPINDLE_0]OUTPUT_MAX_LIMIT
net spindle-output => hm2_7i76e.0.7i83.0.1.analogout5
  • theslawek
  • theslawek
14 Apr 2025 14:41

Need help making rotary axis behave like second spindle

Category: Advanced Configuration

Hi Spumco,

I can't find any official documentation about caxis.comp, just many forum posts about it from you. Is this something new not in the documentation yet?

My goal is to make my CNC router use the rotary axis and simulate a lathe. I've actually already done this before moving to my Mesa 7i76e but using an external device with a dial ( amazon link ) to control the speed. I'd like to have that programatic control over the speed for obvious reasons. I actually have a YouTube video on what I did then. 


I don't need dynamic change between velocity and position controls. I'm more than happy to restart LinuxCNC with new config when changing operations.
  • unknown
  • unknown
11 Apr 2025 20:38
Replied by unknown on topic 7i92 firmware issue

7i92 firmware issue

Category: Driver Boards

I understand now, silly me.
Ok found I had to use setname & found the Linux version here
www.forum.linuxcnc.org/27-driver-boards/...board?start=10#65737

and I can communicate.

Thanks again
Displaying 541 - 550 out of 550 results.
Time to create page: 1.068 seconds
Powered by Kunena Forum