TPCOMP(9)
π 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:
- a valid
#define TOPDIR, and - 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:
halcompileis provided by the deb packagelinuxcnc-dev- 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
- ubuntu resolute: linuxcnc-uspace 1:2.9.4-2ubuntu4 Β· GFDL-1.1-or-later
- ubuntu stonking: linuxcnc-uspace 1:2.9.4-2ubuntu4 Β· GFDL-1.1-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms