TPCOMP(9)

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

πŸ‘‘ TPCOMP(9) β€” the tpcomp glow-up (it's a HAL Component, section 9 bestie)


✨ NAME ✨

tpcomp β€” the Trajectory Planning (tp) module skeleton πŸ¦‹ (yes it's a template, no it does not come ready to run, we'll get to that)


🌸 SYNOPSIS 🌸

Your very own Custom Trajectory Planning module, loaded by setting [TRAJ]TPMOD=tpcomp πŸ’…


πŸ’– DESCRIPTION πŸ’–

Okay so picture this: tpcomp is an example of a trajectory planning (tp) module that you can build with halcompile. πŸŽ€

The tpcomp.comp file β€” that's src/hal/components/tpcomp.comp β€” shows you a method for using halcompile to build a trajectory planning module based on the files used for the default trajectory planner (tpmod). It's giving "here's the blueprint, now go be the architect" energy. πŸ—οΈ

Real talk though: the example tpcomp.comp is not usable until you modify it for your own environment. Do not just build it and act surprised. πŸ™ˆ

To create a runnable tpcomp module, you have to edit the tpcomp.comp file to supply:

  1. a valid #define TOPDIR, and
  2. references to valid source code file names for all files used.

That's it, that's the two things. But both of them are mandatory, fr fr. 😭

Best practice alert 🚨 β€” so that updates don't come through and just overwrite your tpcomp.comp (rude of them honestly), rename the file and its component name. Example: user_tpcomp.comp creates module: user_tpcomp. Matchy matchy, iconic, no notes. πŸ‘‘

Once you've done that, the (renamed) component can be built and installed with halcompile, and then substituted for the default tp module (tpmod) using:

$ linuxcnc -t user_tpcomp someconfig.ini

or by inifile setting: [TRAJ]TPMOD=user_tpcomp ✨

Note: If using a deb install:

  1. halcompile is provided by the deb package linuxcnc-dev
  2. This source file for BRANCHNAME (master, 2.9, etc) is downloadable from github:
https://github.com/LinuxCNC/linuxcnc/blob/BRANCHNAME/src/hal/components/tpcomp.comp

πŸ¦‹ PINS πŸ¦‹

  • tpcomp.N.is-module β€” bit, out, default: 1 ⭐

(That's the whole pin list bestie, one little guy, and he's out here telling you he is indeed a module. Main character energy tbh. πŸ’…)


🫢 AUTHOR 🫢

Dewey Garrett 🌈


πŸ’œ LICENSE πŸ’œ

GPL β€” share the love, it's the law (well, it's the license) πŸŽ€


So yeah, that's tpcomp β€” HAL Component, page 9 of the manual, brought to you by the LinuxCNC Documentation crew, dated 2026-03-17, with the source/version stamp LinuxCNC Documentation 2026-03-17 TPCOMP(9) living down at the bottom of the original page like a little footer gremlin. βœ¨πŸ’– Go forth and rename your .comp files, bestie. πŸ§šπŸ’œ

πŸ“¦ where this page comes from