---
name: "gearchange"
section: "9"
platform: "linux"
package: "linuxcnc-uspace"
version: "1:2.9.4-2+deb13u1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/gearchange"
---

# gearchange(9)

Select from one two speed ranges

## NAME

gearchange - Select from one two speed ranges

## SYNOPSIS

The output will be a value scaled for the selected gear, and clamped to the min/max values for that gear. The scale of gear 1 is assumed to be 1, so the output device scale should be chosen accordingly. The scale of gear 2 is relative to gear 1, so if gear 2 runs the spindle 2.5 times as fast as gear 1, scale2 should be set to 2.5.

## FUNCTIONS

- **gearchange.***N* (requires a floating-point thread)

  ## PINS

- **gearchange.*N*.sel bit in**

  Gear selection input

- **gearchange.*N*.speed-in float in**

  Speed command input

- **gearchange.*N*.speed-out float out**

  Speed command to DAC/PWM

- **gearchange.*N*.dir-in bit in**

  Direction command input

- **gearchange.*N*.dir-out bit out**

  Direction output - possibly inverted for second gear

## PARAMETERS

- **gearchange.*N*.min1 float rw (default: *0*)**

  Minimum allowed speed in gear range 1

- **gearchange.*N*.max1 float rw (default: *100000*)**

  Maximum allowed speed in gear range 1

- **gearchange.*N*.min2 float rw (default: *0*)**

  Minimum allowed speed in gear range 2

- **gearchange.*N*.max2 float rw (default: *100000*)**

  Maximum allowed speed in gear range 2

- **gearchange.*N*.scale2 float rw (default: *1.0*)**

  Relative scale of gear 2 vs. gear 1. Since it is assumed that gear 2 is "high gear", **scale2** must be greater than 1, and will be reset to 1 if set lower.

- **gearchange.*N*.reverse bit rw (default: *0*)**

  Set to 1 to reverse the spindle in second gear.

## AUTHOR

Stephen Wille Padnos

## LICENSE

GPL
