Here's an update on my XHC wireless CNC Pendant working with TinyG and Chilipeppr!

Here’s an update on my XHC wireless CNC Pendant working with TinyG and Chilipeppr! I have it communicating with SPJS and moving around a bit. Its all written in NodeJS and available here:

The Display is not currently working. I pretty confident that it will be pretty trivial to get it going. I just focused on sending data to SPJS and TinyG this weekend vs receiving data.

Right now the jog motion is less than ideal. Its a single click per move. I need to work out an velocity algorithm but have not yet :slight_smile:

outstanding! any hope this would work with grbl also?

@Frank_Graffagnino My understanding is Riley is heavily using the !% command to stop the jogging immediately which Grbl doesn’t have.

Riley has this going using a very similar model to your pendant where he’s just a websocket client to SPJS. That means if you have ChiliPeppr going in a browser while using the pendant, it’s all nice and updated. This is super slick.

yah i am also just parsing json for everything. It would be a slog to get this working as is in grbl. There is some state tracking right now too. I monitor the stat: param in the sr’s (status reports) and look for the state to change to feedhold. This way my pendant knows if tinyg is paused and when it can resume. But there is going to be a bunch more like this too.

Is what I mean by stat:

Whoa. I have the same exact pendant. Epic hack.

@Riley_Porter_ril3y pretty sure that state reporting is in the status report of grbl as well. And json shouldn’t be an issue I don’t think since SPJS is handling that.

@Riley_Porter_ril3y how is this connected to the TinyG?

it connects to the SPJS server which connects to the TinyG. So my code connects the pendant to the SPJS server via websockets. Then I just write to that websocket “what to do” and it does it :slight_smile:

I was able to get it working by deleting the node_modules folder and issuing a npm install https://github.com/natevw/node-hid/releases/download/test-node-12/node-hid-0.3.2.tgz with-in the TinyG-xhChili folder.

Now, then thats working. That’s much, much better then the crazy hack I was doing.

Oh good. Well it looks like the maintainer merged it up steam like 4 days ago. Now I can continue to get the ui on the pendant working. I need to document it a bit. Were u able to get it working?

Yup. Used to today to do my first cut with TinyG2 & CP. (I’ve been using GRBL all this time.) There were a couple times where it overshot where I wanted it to go. But I think I got the hang of it now. Just takes alittle finesse.

So the MPG / Model mode will go from continuous mode to incremental mode. Continue moves as long as you were moving. Incremental is for little steps. However in incremental mode, if you really crank on it it will get a BUNCH of moves queued up. The fix for this is if you stop moving the dial in incremental mode for like 2 seconds (i am going off of memory) then all queued commands will be flushed and it will stop.

If you have any feature requests I can put them in pretty quick. Also if you want to write up any notes or anything its always welcome.

Glad its working for you.

Yeah I figured that out very quickly. As for features, Spindle On/Off? And pre-can Gcode to assign to the Macro buttons?

The short answer is I think on this line:

You can just edit what gcode you want sent for the macros. Spindle is a bit more work. I would have to load it up and take a look. I will try to look at that soon.

Hey, what’s the status on this project? I have bought a TinyG and thinking of buying a XHC to control my CNC but really would like the feature with coordinates from the machine being shown in the display of the device. Is it possible to start/stop/jog?

Really appreciate the work done!

Any updates on this project? I am interested in getting mu wiXHC working with my Rpi3 running Chilipeppr/TinyG setup. Would really like a handheld control for setups, etc.