Skip to content

xhc-whb04b-6 fixes backport to 2.9 - #4761

Open
hdiethelm wants to merge 25 commits into
LinuxCNC:2.9from
hdiethelm:xhc-whb04b-6-fix-v2_backport-2.9
Open

hdiethelm wants to merge 25 commits into
LinuxCNC:2.9from
hdiethelm:xhc-whb04b-6-fix-v2_backport-2.9

Conversation

@hdiethelm

@hdiethelm hdiethelm commented Nov 1, 2026 •

Copy link
Copy Markdown
Contributor

Backport to 2.9 of these two PR's and 4 other commits needed for a clean back port:
#3810
#3897

Fixes: #4646

I had this back port on my git for a long time. If there will be another 2.9 release, it could be worth merging it. Any opinions?

  • If yes, I will quickly test if it works and set it to ready, but I don't expect any surprises, it's a rebase of a branch I use for regular milling.
  • If no, this PR can be dropped.

BsAtHome and others added 25 commits November 1, 2026 18:11
Modernize deleted copy constructor and copy assignment.
Mark cppcheck detected duplicate inherited update() method as fine.

Cherry-pick: Only take WHB changes
… no side-effects can occur.

Fix missing dereference in clearing pin reference.
Cherry-Pick: Only WHB
Fixes step 5/10 enable/disable
Changing mode from auto to manual would require the program to stop and just gives unneccesary warnings when trying it anyway
This is not an md file but a hal file
Note: isProgramRunning can not be used due to this is false when paused
* Update pendant.cc

fixed old issue LinuxCNC#987 that wasn't fully patched few versions back
some xhc-whb04b-x pendants send different key for one switch

* Update pendant.h

fixed old issue LinuxCNC#987 that wasn't fully patched few versions back
some xhc-whb04b-x pendants send different key for one switch
Tested by overwriting incoming 0x1c codes by 0x9b in usb.cc
XhcWhb04b6Component should not even include libusb
As sugested by Finngineering
@hdiethelm
hdiethelm force-pushed the xhc-whb04b-6-fix-v2_backport-2.9 branch from 6f3e9bb to d257628 Compare November 1, 2026 17:41

@grandixximo grandixximo left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I read through this against 2.9 and master, and it matches the master code apart from the 64-bit HAL API changes. I think it is worth having in 2.9, mostly for the MPG => STEP/CON fix (7937593 on master): the backlog of wheel counts gathered in MPG mode could make the machine jump on the first tick after switching.

One thing a 2.9 user may notice: on 2.9 today -B never had any effect, so everyone got 5 and 10 mm at 60% and 100%. After this, without -B those positions give 1 mm. I think that is fine (it is the safe direction, the pendant shows 1 on the scale, and it matches the man page), but it may be worth a line in the release notes. The same goes for manual mode requests now depending on whb.halui.program.is-idle being connected; it is in the man page and the example config, so most setups have it.

LGTM, thanks!

@hdiethelm
hdiethelm marked this pull request as ready for review November 2, 2026 20:07
@hdiethelm

hdiethelm commented Nov 2, 2026 •

Copy link
Copy Markdown
Contributor Author

Tested, works well. It probably makes sense to merge 2.9 to master right after this to avoid merge conflicts.

Yes, the xhc-whb04b-6 had many issues. And I really did not like the machine moving full speed when switching the modes or the accidental 10mm / step moves when not taking care... ;-)

Anything to do to mention this in the change log?

@grandixximo

Copy link
Copy Markdown
Contributor

@andypugh should we add a tag for release note mentions? Or something else?

@grandixximo
grandixximo requested a review from andypugh November 8, 2026 10:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants