Advanced Search

Search Results (Searched for: 7i76e)

  • andypugh
  • andypugh's Avatar
22 Oct 2025 14:20

Button on Linuxcnc interface that switches an output on Mesa 7i76e on and off

Category: GladeVCP

I think 6.1.0-30-rt should probably be OK. (though I think that the packages were built on 6.1.0.10-rt )
  • DerKlotz
  • DerKlotz
22 Oct 2025 13:58

Button on Linuxcnc interface that switches an output on Mesa 7i76e on and off

Category: GladeVCP

Hello,
you answered one of my posts. Can you help me installing the right kernel. I don´t know how to do it.

"Try repeating after typing
sudo apt purge raspi-firmware
If you still gets errors, share the output of uname -r as it appears it is trying to install an incorrect kernel version. "

I got this message 6.1.0-30-rt-amd64
  • andypugh
  • andypugh's Avatar
22 Oct 2025 12:00

Fanuc Serial Pulse Coders - Red cap servos, mesa 7i76e, how to?

Category: Driver Boards

So does this mean that the BLDC module doesn't output commutation before/during the startup indexing procedure? If commutation outputs are suppressed before index pulse is found I may have a problem. I was thinking that it could output them, even if they were off by a little, and hopefully it wouldn't jostle the motor around too much.


I think you are suggesting that you could supply "fake" commutation signals from LinuxCNC to the drive, and that might be enough to persuade the drive to start working?

That might actually work.

If the motor has little enough load on it at startup to magnetically align so that the "fake" commutation becomes true, just long enough for the drive to see the encoder index, then start running off that, you might be able to get things working.

I suppose it's worth a try, it's an hour's work and 3 wires.
  • bnet
  • bnet's Avatar
21 Oct 2025 00:54

Fanuc Serial Pulse Coders - Red cap servos, mesa 7i76e, how to?

Category: Driver Boards

The question is whether the drives can do preset velocity with no commutation.

So does this mean that the BLDC module doesn't output commutation before/during the startup indexing procedure? If commutation outputs are suppressed before index pulse is found I may have a problem. I was thinking that it could output them, even if they were off by a little, and hopefully it wouldn't jostle the motor around too much. 
  • DerKlotz
  • DerKlotz
19 Oct 2025 15:49
Replied by DerKlotz on topic Combine Glade Togglebutton with Physical Input

Combine Glade Togglebutton with Physical Input

Category: GladeVCP

Hello,
this is my almost working postgui. This works is Input-04 is a switch. But i want to use a push button. What can i do?

#[Startknopf]
loadrt or2
addf or2.0 servo-thread

loadrt not #mit diesem Befehl wird ein not.in/out in die Pins geladen
addf not.0 servo-thread
net Start.not.out => not.0.out # hier wird not.0.out startbar gemacht

net Start.ext.an <= gladevcp.Start => or2.0.in0
net Start.ext.an1 <= hm2_7i76e.0.7i76.0.0.input-04 => or2.0.in1
net Start.or <= or2.0.out => hm2_7i76e.0.7i76.0.0.output-05 => halui.machine.on => not.0.in # Eingang not.0.in wird über den or2.0.out gesetzt

net Start.not.out => not.0.out => hm2_7i76e.0.7i76.0.0.output-06 => halui.machine.off
net MachineLED <= halui.machine.is-on => gladevcp.led_Startstopp
  • DerKlotz
  • DerKlotz
17 Oct 2025 13:43
Replied by DerKlotz on topic Combine Glade Togglebutton with Physical Input

Combine Glade Togglebutton with Physical Input

Category: GladeVCP

Tried something, but to much chinese ;-). I did some comments after #
#[Startknopf]
loadrt or2
addf or2.0 servo-thread

loadrt not
addf not.0 servo-thread
net Start.not.in => not.0.in #<= ???? must be hm2_7i76e.0.7i76.0.0.input-04
#net Start.not.out => not.0.out

net Start.ext.an <= gladevcp.Start => or2.0.in0
net Start.ext.an1 <= hm2_7i76e.0.7i76.0.0.input-04 => or2.0.in1
net Start.or <= or2.0.out => hm2_7i76e.0.7i76.0.0.output-05 => gladevcp.led_Startstopp => halui.machine.on

#net Start.or <= not.0.in => hm2_7i76e.0.7i76.0.0.output-06 => halui.machine.off
#net Start.ext.aus <= not.0.out => hm2_7i76e.0.7i76.0.0.output-06 => halui.machine.off ## almost work, but gladevcp.led_Startstopp doesn´t work
  • DerKlotz
  • DerKlotz
17 Oct 2025 09:34 - 17 Oct 2025 09:35

Combine Glade Togglebutton with Physical Input

Category: GladeVCP

Hello,
i just try to complete the function in the attached file. My postgui.hal:

#[Startknopf]
loadrt or2
addf or2.0 servo-thread
net Start.ext.an <= gladevcp.Start => or2.0.in0
net Start.ext.an1 <= hm2_7i76e.0.7i76.0.0.input-04 => or2.0.in1
net Start.or <= or2.0.out => hm2_7i76e.0.7i76.0.0.output-05 => gladevcp.led_Startstopp => halui.machine.on

#net Start.or => gladevcp.Start-not => hm2_7i76e.0.7i76.0.0.output-06 => halui.machine.off
#net Start.ext.aus => gladevcp.Start-not => hm2_7i76e.0.7i76.0.0.output-06 => #halui.machine.off

I can´t get output-6 and halui.machine.off to work.
Please help
  • PCW
  • PCW's Avatar
16 Oct 2025 18:59 - 16 Oct 2025 19:00
Replied by PCW on topic LinuxCNC installation + 7I96S

LinuxCNC installation + 7I96S

Category: Installing LinuxCNC

LinuxCNC must not have been running when you ran halcmd show all *.tmax
otherwise it should have show a set of parameters like:

Parameters:
Owner   Type  Dir         Value  Name
    33  s32   RW              0  hm2_7i76e.0.read-request.tmax
    33  s32   RW        1159140  hm2_7i76e.0.read.tmax
    33  s32   RW         270636  hm2_7i76e.0.write.tmax
    23  s32   RW          45260  motion-command-handler.tmax
    23  s32   RW         942716  motion-controller.tmax
    27  s32   RW         233832  pid.0.do-pid-calcs.tmax
    27  s32   RW         246480  pid.1.do-pid-calcs.tmax
    27  s32   RW          21700  pid.2.do-pid-calcs.tmax
    27  s32   RW          20144  pid.3.do-pid-calcs.tmax
    24  s32   RW        1564056  servo-thread.tmax


and yes, RealTek Network interfaces have issue with real time when using the stock
Linux kernel driver, the suggested  fix is to install the DKMS 8168 driver.

This affects any Ethernet or EtherCAT connected device that use the standard RealTek in kernel driver.
  • andypugh
  • andypugh's Avatar
15 Oct 2025 23:47

Fanuc Serial Pulse Coders - Red cap servos, mesa 7i76e, how to?

Category: Driver Boards

The question is whether the drives can do preset velocity with no commutation.

ChatGPT (or any AI) is going to do very poorly with anything that hasn't been done before.
  • Doc_emmet
  • Doc_emmet
14 Oct 2025 20:53 - 14 Oct 2025 20:56
6th axis for ATC was created by Doc_emmet

6th axis for ATC

Category: General LinuxCNC Questions

Hello, I use QtDragon with 5 axes (X, Y, Z, B, C) and have expanded and flashed my Mesa 7i76EU with a 7I85s. The additional 4 axes are also displayed with sudo mesaflash --device 7i76eu --addr 192.168.1.121 --readhmid. As far as I know, QtDragon can only handle 5 axes. I need an additional axis for the ATC that doesn't need to be displayed in QtDragon. Can I control it via G-code, e.g., G0 W100, or if G-code isn't possible, via HAL commands?

I read that you can customize the xyzbc-trt-kins file, but I can't find it?
  • Bram kersten
  • Bram kersten
14 Oct 2025 08:46
WCS Problem with Linuxcnc/qtdragon was created by Bram kersten

WCS Problem with Linuxcnc/qtdragon

Category: General LinuxCNC Questions

I have avidcnc from 2017 from wich i recently replace the breakoutboard with a mesa7i76EU to make it work with linuxcnc.
Everything seems to be working fine,

The only problem i have is that it doesn't seem to use the WCS coordonates after i zero my machine But keeps using only the absolute coordinates when im running my gcode
This causes the machine(zaxis) to move into the bed when starting the program.

can somebody help me please.
Thanks in advance.i added my gcodeand my hall/ini files for qtdragon.  
  • DerKlotz
  • DerKlotz
13 Oct 2025 12:08

Button on Linuxcnc interface that switches an output on Mesa 7i76e on and off

Category: GladeVCP

THANK YOU VERY MUCH

After a little bit testing and understanding i got the output to work
  • DerKlotz
  • DerKlotz
13 Oct 2025 10:15
  • bnet
  • bnet's Avatar
13 Oct 2025 02:49

Fanuc Serial Pulse Coders - Red cap servos, mesa 7i76e, how to?

Category: Driver Boards

Here's a version that uses the digitally settable preset velocity mode to seek for the index of the encoder:
# =====================================================
#  LinuxCNC HAL — Ultra3000 preset velocity index seek
#  Board: 7i76e main + 7i84 (outputs) + 7i85 (encoder)
#  Axis: X
# =====================================================

loadrt threads name1=servo-thread period1=1000000

# --- Load components ---
loadrt bldc count=1
loadrt encoder num_chan=1
loadrt mux2 count=1
loadrt and2 count=1
loadrt not count=1
loadrt timedelay count=1
loadrt oneshot count=1

addf encoder.update servo-thread
addf bldc servo-thread
addf timedelay servo-thread
addf oneshot servo-thread

# =====================================================
#  Encoder setup (7i85)
# =====================================================
setp hm2_7i85.0.encoder.00.scale 800
setp hm2_7i85.0.encoder.00.counter-mode 0
setp hm2_7i85.0.encoder.00.filter 1

net x-enc-a     hm2_7i85.0.encoder.00.input-a
net x-enc-b     hm2_7i85.0.encoder.00.input-b
net x-enc-z     hm2_7i85.0.encoder.00.input-index

# =====================================================
#  BLDC Hall synthesis (for Ultra3000 commutation)
# =====================================================
# 8-pole motor = 4 pole pairs
setp bldc.0.pole-pairs 4
setp bldc.0.encoder-scale 800
setp bldc.0.hall-offset 0      # will be updated after index alignment

net x-enc-pos       hm2_7i85.0.encoder.00.position => bldc.0.enc-pos
net hall-u          bldc.0.hall-u => hm2_7i84.0.output-00
net hall-v          bldc.0.hall-v => hm2_7i84.0.output-01
net hall-w          bldc.0.hall-w => hm2_7i84.0.output-02

# =====================================================
#  Preset Velocity Control Output (7i84)
# =====================================================
# Choose an available output (here output-03)
net preset-vel-enable => hm2_7i84.0.output-03

# =====================================================
#  Step/Dir control enable (7i76e stepgen 0)
# =====================================================
net stepgen-enable => hm2_7i76e.0.stepgen.00.enable

# =====================================================
#  State control logic for startup alignment
# =====================================================

# --- Delay after power-up before preset allowed ---
setp timedelay.0.on-delay 0.25
net startup-delay timedelay.0.out => preset-allow
net always-true timedelay.0.in <= true

# --- Oneshoot from encoder index detection ---
setp oneshot.0.width 0.05
net x-enc-index hm2_7i85.0.encoder.00.index => oneshot.0.in
net index-found oneshot.0.out

# --- Preset velocity enable logic ---
# When not yet found index and startup delay done -> enable preset rotation
loadrt and2 count=1
net not-found-delay and2.0.in0 <= preset-allow
net not-found-delay and2.0.in1 <= not-index-found
net preset-active and2.0.out => hm2_7i84.0.output-03

# --- index found logic ---
loadrt not count=1
net index-found oneshot.0.out => not.0.in
net not-index-found not.0.out

# --- On index detection, disable preset and enable stepgen ---
net index-found stepgen-enable
# (this ties directly; optionally route through another delay)
  • bnet
  • bnet's Avatar
13 Oct 2025 02:29 - 13 Oct 2025 02:51

Fanuc Serial Pulse Coders - Red cap servos, mesa 7i76e, how to?

Category: Driver Boards

The problem with the setup with the Fanuc encoders in my case was that I couldn't find a way to return quadrature encoder pulses back to the Ultra3000 drives which it requires to run. They need both, encoder and commutation pulses. Had I been using a motor drive that was controlled by LinuxCNC on a lower lever [such as the Mesa ones?] it would have worked (I think?) with BLDC component and original encoders. That would have been a slick setup. Also by the time I bought the Ultra3000's and the new encoders I am probably close to the price of those Mesa drives. Next time. 

Now onto generating commutation signals for the drives now that they have the encoder connected to them. ChatGPT seems to think its possible to do with BLDC. I've already spotted one error which is that the ultra3000s don't have an option to set low torque mode via the digital inputs.. So that leaves me unsure of if the rest of it will work.


# =======================================================
#  Fanuc Redcap → Ultra3000 setup (X axis)
#  Mesa 7i76e + 7i85 + 7i84
# =======================================================

# --- Load required components ---
loadrt bldc cfg=qiH
loadrt oneshot count=1
loadrt toggle count=1

addf bldc.0 servo-thread
addf oneshot.0 servo-thread
addf toggle.0 servo-thread

# =======================================================
#  Encoder Input (7i85)
# =======================================================

# Encoder channel 0 on 7i85 → 800 counts per rev
net x-rawcounts     hm2_7i85.0.encoder.00.rawcounts => bldc.0.rawcounts
net x-index-enable  hm2_7i85.0.encoder.00.index-enable => bldc.0.index-enable
net x-index-pulse   hm2_7i85.0.encoder.00.index => oneshot.0.in

setp oneshot.0.width 0.1
net x-index-detected oneshot.0.out => toggle.0.toggle
net x-index-found    toggle.0.state

# =======================================================
#  BLDC synthetic Hall generation
# =======================================================

setp bldc.0.scale           800          # encoder counts per mechanical rev
setp bldc.0.poles           4            # 8-pole motor = 4 pole pairs
setp bldc.0.encoder-offset  0.0          # adjust once aligned
setp bldc.0.output-pattern  25

# Output Hall states to Ultra3000 (7i84)
net hall1 bldc.0.hall1-out => hm2_7i84.0.output-00
net hall2 bldc.0.hall2-out => hm2_7i84.0.output-01
net hall3 bldc.0.hall3-out => hm2_7i84.0.output-02

# =======================================================
#  Step/Dir setup (X Axis)
# =======================================================

# Step/Dir on 7i76e output 0
setp hm2_7i76e.0.stepgen.00.dirsetup   5000
setp hm2_7i76e.0.stepgen.00.dirhold    5000
setp hm2_7i76e.0.stepgen.00.steplen    2500
setp hm2_7i76e.0.stepgen.00.stepspace  2500
setp hm2_7i76e.0.stepgen.00.position-scale 10000
setp hm2_7i76e.0.stepgen.00.maxvel     60
setp hm2_7i76e.0.stepgen.00.maxaccel   300
net x-pos-cmd axis.x.motor-pos-cmd => hm2_7i76e.0.stepgen.00.position-cmd
net x-pos-fb  hm2_7i76e.0.stepgen.00.position-fb => axis.x.motor-pos-fb
net x-enable  axis.x.amp-enable-out => hm2_7i76e.0.stepgen.00.enable

# =======================================================
#  Torque Limit Select control (7i84 output-04)
# =======================================================

# Before index found, TorqueLimitSelect = ON (low current)
# After index found, TorqueLimitSelect = OFF (normal torque)
# This drives a digital input on the Ultra3000.

net torque-low hm2_7i84.0.output-04
net torque-low <= not-x-index-found

# Use toggle to remember index found across servo cycles
net not-x-index-found toggle.0.state
# (If logic inverted, swap TRUE/FALSE below)
setp toggle.0.state 0   # default = index not found

# =======================================================
#  Auto jog-to-index at startup
# =======================================================

# At boot: torque low active, start slow jog
setp hm2_7i76e.0.stepgen.00.velocity-cmd 0.05
net torque-low hm2_7i76e.0.stepgen.00.enable

# Once index found: stop motion, switch torque to normal
net x-index-found => hm2_7i76e.0.stepgen.00.enable-not
net x-index-found => hm2_7i76e.0.stepgen.00.velocity-cmd 0
 
Displaying 31 - 45 out of 504 results.
Time to create page: 0.836 seconds
Powered by Kunena Forum