SIM_AXIS_HARDWARE(9)

πŸ“¦
version 2.9.4 Β· 4 versions
, in ubuntu resolute, ubuntu stonking

🌸 NAME 🌸

ok so picture this: sim_axis_hardware β€” a component that simulates home and limit switches. that's it, that's the vibe. it's a HAL Component, section 9, and it's here to fake switches for you so you don't have to wire up real ones πŸ’–


✨ SYNOPSIS ✨

loadrt sim_axis_hardware [count=N|names=name1[,name2...]]

πŸ¦‹ DESCRIPTION πŸ¦‹

bestie. this component creates simulated home and limit switches based on the current position. it's giving "ghost machinery" energy and we're obsessed 😌

right now it can supply simulation for X, tandem X, Y, tandem Y, Z, U, V, and A axes. iconic lineup, no skips πŸ’…


πŸŽ€ FUNCTIONS πŸŽ€

one function, one job, main character energy:

  • sim-axis-hardware.N.update β€” (requires a floating-point thread) fr fr, it will NOT run without one.

πŸ‘‘ PINS πŸ‘‘

quick heads up before we dive in: all of these live under sim-axis-hardware.N. where the N is your instance number, bestie 🌈

πŸ’œ position inputs (float in)

  • sim-axis-hardware.N.Xcurrent-pos float in β€” the current position on the axis. like, connect it to joint.0.motor-pos-fb and you're slaying.
  • sim-axis-hardware.N.X2current-pos float in
  • sim-axis-hardware.N.Ycurrent-pos float in
  • sim-axis-hardware.N.Y2current-pos float in
  • sim-axis-hardware.N.Zcurrent-pos float in
  • sim-axis-hardware.N.Acurrent-pos float in
  • sim-axis-hardware.N.Ucurrent-pos float in
  • sim-axis-hardware.N.Vcurrent-pos float in

πŸ“ home switch positions

  • sim-axis-hardware.N.Xhomesw-pos float in (default: 1) β€” the position of the home switch.
  • sim-axis-hardware.N.X2homesw-pos float in (default: 1)
  • sim-axis-hardware.N.Yhomesw-pos float in (default: 1)
  • sim-axis-hardware.N.Y2homesw-pos float in (default: 1)
  • sim-axis-hardware.N.Zhomesw-pos float in (default: 1)
  • sim-axis-hardware.N.Ahomesw-pos float in (default: 1)
  • sim-axis-hardware.N.Uhomesw-pos float in (default: 1)
  • sim-axis-hardware.N.Vhomesw-pos float in (default: 1)

πŸ”₯ max limit switch β€” upper edge

  • sim-axis-hardware.N.Xmaxsw-upper float in β€” the upper range of the maximum limit switch. above this? false. periodt.
  • sim-axis-hardware.N.X2maxsw-upper float in
  • sim-axis-hardware.N.Ymaxsw-upper float in
  • sim-axis-hardware.N.Y2maxsw-upper float in
  • sim-axis-hardware.N.Zmaxsw-upper float in
  • sim-axis-hardware.N.Amaxsw-upper float in
  • sim-axis-hardware.N.Umaxsw-upper float in
  • sim-axis-hardware.N.Vmaxsw-upper float in

🌈 max limit switch β€” lower edge

  • sim-axis-hardware.N.Xmaxsw-lower float in β€” the lower range of the maximum limit switch. below this? false.
  • sim-axis-hardware.N.X2maxsw-lower float in
  • sim-axis-hardware.N.Ymaxsw-lower float in
  • sim-axis-hardware.N.Y2maxsw-lower float in
  • sim-axis-hardware.N.Zmaxsw-lower float in
  • sim-axis-hardware.N.Amaxsw-lower float in
  • sim-axis-hardware.N.Umaxsw-lower float in
  • sim-axis-hardware.N.Vmaxsw-lower float in

πŸ’€ min limit switch β€” upper edge

  • sim-axis-hardware.N.Xminsw-upper float in β€” the upper range of the minimum limit switch. above this is false.
  • sim-axis-hardware.N.X2minsw-upper float in
  • sim-axis-hardware.N.Yminsw-upper float in
  • sim-axis-hardware.N.Y2minsw-upper float in
  • sim-axis-hardware.N.Zminsw-upper float in
  • sim-axis-hardware.N.Aminsw-upper float in
  • sim-axis-hardware.N.Uminsw-upper float in
  • sim-axis-hardware.N.Vminsw-upper float in

🧚 min limit switch β€” lower edge

  • sim-axis-hardware.N.Xminsw-lower float in β€” the lower range of the minimum limit switch. below this is false.
  • sim-axis-hardware.N.X2minsw-lower float in
  • sim-axis-hardware.N.Yminsw-lower float in
  • sim-axis-hardware.N.Y2minsw-lower float in
  • sim-axis-hardware.N.Zminsw-lower float in
  • sim-axis-hardware.N.Aminsw-lower float in
  • sim-axis-hardware.N.Uminsw-lower float in
  • sim-axis-hardware.N.Vminsw-lower float in

🫢 home switch hysteresis

  • sim-axis-hardware.N.Xhomesw-hyst float in (default: .025) β€” range that home switch will be true +- half this to the home position.
  • sim-axis-hardware.N.X2homesw-hyst float in (default: .025)
  • sim-axis-hardware.N.Yhomesw-hyst float in (default: .025)
  • sim-axis-hardware.N.Y2homesw-hyst float in (default: .025)
  • sim-axis-hardware.N.Zhomesw-hyst float in (default: .025)
  • sim-axis-hardware.N.Ahomesw-hyst float in (default: .025)
  • sim-axis-hardware.N.Uhomesw-hyst float in (default: .025)
  • sim-axis-hardware.N.Vhomesw-hyst float in (default: .025)

😭 homing bits

  • sim-axis-hardware.N.Xhoming bit in β€” true is homing in progress.
  • sim-axis-hardware.N.X2homing bit in
  • sim-axis-hardware.N.Yhoming bit in
  • sim-axis-hardware.N.Y2homing bit in
  • sim-axis-hardware.N.Zhoming bit in
  • sim-axis-hardware.N.Ahoming bit in
  • sim-axis-hardware.N.Uhoming bit in
  • sim-axis-hardware.N.Vhoming bit in

🌸 home switch outputs

  • sim-axis-hardware.N.Xhomesw-out bit out β€” home switch for the X axis.
  • sim-axis-hardware.N.X2homesw-out bit out
  • sim-axis-hardware.N.Yhomesw-out bit out
  • sim-axis-hardware.N.Y2homesw-out bit out
  • sim-axis-hardware.N.Zhomesw-out bit out
  • sim-axis-hardware.N.Ahomesw-out bit out
  • sim-axis-hardware.N.Uhomesw-out bit out
  • sim-axis-hardware.N.Vhomesw-out bit out
  • sim-axis-hardware.N.homesw-all bit out

⭐ limit switch outputs

  • sim-axis-hardware.N.Xmaxsw-out bit out β€” max limit switch.
  • sim-axis-hardware.N.Xminsw-out bit out β€” min limit switch.
  • sim-axis-hardware.N.Xbothsw-out bit out β€” true for both max and min limit switch.
  • sim-axis-hardware.N.X2maxsw-out bit out
  • sim-axis-hardware.N.X2minsw-out bit out
  • sim-axis-hardware.N.X2bothsw-out bit out
  • sim-axis-hardware.N.Ymaxsw-out bit out
  • sim-axis-hardware.N.Yminsw-out bit out
  • sim-axis-hardware.N.Ybothsw-out bit out
  • sim-axis-hardware.N.Y2maxsw-out bit out
  • sim-axis-hardware.N.Y2minsw-out bit out
  • sim-axis-hardware.N.Y2bothsw-out bit out
  • sim-axis-hardware.N.Zmaxsw-out bit out
  • sim-axis-hardware.N.Zminsw-out bit out
  • sim-axis-hardware.N.Zbothsw-out bit out
  • sim-axis-hardware.N.Amaxsw-out bit out
  • sim-axis-hardware.N.Aminsw-out bit out
  • sim-axis-hardware.N.Abothsw-out bit out
  • sim-axis-hardware.N.Umaxsw-out bit out
  • sim-axis-hardware.N.Uminsw-out bit out
  • sim-axis-hardware.N.Ubothsw-out bit out
  • sim-axis-hardware.N.Vmaxsw-out bit out
  • sim-axis-hardware.N.Vminsw-out bit out
  • sim-axis-hardware.N.Vbothsw-out bit out
  • sim-axis-hardware.N.limitsw-all bit out
  • sim-axis-hardware.N.limitsw-homesw-all bit out β€” true for all limits and all home.

πŸ’– combined limit + home outputs

  • sim-axis-hardware.N.Xmaxsw-homesw-out bit out
  • sim-axis-hardware.N.Xminsw-homesw-out bit out
  • sim-axis-hardware.N.Xbothsw-homesw-out bit out
  • sim-axis-hardware.N.X2maxsw-homesw-out bit out
  • sim-axis-hardware.N.X2minsw-homesw-out bit out
  • sim-axis-hardware.N.X2bothsw-homesw-out bit out
  • sim-axis-hardware.N.Ymaxsw-homesw-out bit out
  • sim-axis-hardware.N.Yminsw-homesw-out bit out
  • sim-axis-hardware.N.Ybothsw-homesw-out bit out
  • sim-axis-hardware.N.Y2maxsw-homesw-out bit out
  • sim-axis-hardware.N.Y2minsw-homesw-out bit out
  • sim-axis-hardware.N.Y2bothsw-homesw-out bit out
  • sim-axis-hardware.N.Zmaxsw-homesw-out bit out
  • sim-axis-hardware.N.Zminsw-homesw-out bit out
  • sim-axis-hardware.N.Zbothsw-homesw-out bit out
  • sim-axis-hardware.N.Amaxsw-homesw-out bit out
  • sim-axis-hardware.N.Aminsw-homesw-out bit out
  • sim-axis-hardware.N.Abothsw-homesw-out bit out
  • sim-axis-hardware.N.Umaxsw-homesw-out bit out
  • sim-axis-hardware.N.Uminsw-homesw-out bit out
  • sim-axis-hardware.N.Ubothsw-homesw-out bit out
  • sim-axis-hardware.N.Vmaxsw-homesw-out bit out
  • sim-axis-hardware.N.Vminsw-homesw-out bit out
  • sim-axis-hardware.N.Vbothsw-homesw-out bit out

πŸ’… the offset one

  • sim-axis-hardware.N.limit-offset float in (default: .01) β€” how much the limit switches are offset from inputted position. added to max, subtracted from min. sneaky little shift, but we love her.

🫢 AUTHOR 🫢

Chris S Morley β€” ty for your service, legend πŸŽ€


🌟 LICENSE 🌟

GPL β€” that's the whole line bestie, go read the license, it's good for you ✨


and that's the whole page!! πŸŽ‰ this was SIM_AXIS_HARDWARE(9) from the LinuxCNC Documentation, dated 2026-03-17. you ate that, honestly. go forth and simulate some switches πŸ¦‹πŸ’–

πŸ“¦ where this page comes from