@Frank_Graffagnino built a beautiful jog pendant server that talks direct to SPJS. I decided to make a new widget in CP to go along with his server and to show off the new “broadcast” feature of SPJS.
https://www.youtube.com/watch?v=cQpw2chvjzM&list=UUmysy_KTozjivarUVG4mlPw
So very impressed john!
@Britton_Evans Well, credit to Frank really. He did all the hard work. I just added the audio feedback and the widget.
You did produce and share your video that detailed just how you do what you do. Thanks for that
thanks so much John. Great video. Hopefully the code can continue to improve and become more seamless and slick.
ok John, I’ve updated the code to incorporate your changes for the broadcast command. I also added a define at the top for TINYG which will send the feedhold on the shuttle if that is set. This is just temporary, as in the future we should be able to get the code to automatically detect if the protocol is TinyG or GRBL or whatever and do the right thing.
Anyhow, it’s there. I noticed the widget isn’t in the GRBL workspace yet. I’d buy Mr. @Jarret_Luft some pizza if he would move that (and the touch plate widget) over to the GRBL workspace! 
I couldn’t run on the TinyG workspace, but I did notice that the button to show/hide the body/panel of the widget wasn’t working. I’m not a javascript guy, but I noticed in the console it gives the error: “Syntax error, unrecognized expression: # .panel-body”. Perhaps the “if ($(’#’ + http://this.id + ’ .panel-body’)…” needs to be http://that.id?
Thanks again guys.
thanks man. if you would like one, i’ll buy you one as a thank you for all your chilipeppr efforts… just let me know
so, I went ahead and forked that shuttle widget and fixed that bug. It was two typos, but the main one was what I thought - the “this” needed to be a “that”. I don’t entirely know why as I’m not a strong JS guy. But that fixed it. The forked widget with the fix is at: http://fiddle.jshell.net/lordmundi/btyfqk7w/
@Frank_Graffagnino good catch on the fix. What I did is repoint the whole widget to your URL so you are now the direct owner of editing/modifying that widget. If you want to change anything on it, add features, or tweak, it’s now directly pointing at your version.
ok, that sounds good. Should be fun. But, I went to the grbl workspace and noticed the fix wasn’t there, and I did the force refresh mode, and it doesn’t look like it is there either. 
Oh, that’s funny. I did the update in the tinyg workspace cuz that’s the one I manage. Jarrett owns the Grbl workspace, so he’d have to repoint that one or he’d have to update it.
ahh, that makes sense.
great thanks!
Great video. I’ve almost got my jog dial running. The Jog dial is communicating with Chilipepper, but not getting any movement on my cnc machine.
hmm… any output on the console of shuttleCP? also make sure Chilipeppr has already opened the connection to your device
I am getting output on the console, but it gives a connection error every time it tries to send the movement. I’m new with linux, so I may have missed something.
hmm… well, make sure before you compile it you set those settings at the top. there is a README file at the top you have to walk through. Unforuntately, this is a weak point in the code - it really needs to accept command line arguments.
Thanks for the help Frank. I’m up and running now. I had two go in and change the two following lines and then make.
#define DEVICE_PATH “/dev/ttyUSB0” // really should be an argument to the program TODO
#define TINYG 1 #define DEVICE_PATH “/dev/ttyUSB0” // really should be an argument to the program TODO
Without any commands from the Shuttle Express, I can hear my stepper motors cycling on and off. Is this normal?
no, i don’t think so. does it stop when you kill shuttleCP?
I don’t recall hearing them cycle on and off before I installed the Jog Dial. I’ll take a closer look and see what happens when I kill ShuttleCP when I get back to my machine.