Anyone got cncjs for hdm working?

i just tried to use cncjs with the macros on my hdm with some success. i copied and pasted the macros for initial, tool change, 3 axis probe with the hole (for bitzero with the hole). i put in the correct bitzero position in the initial tool macro.

only the initial tool bitsetter seems to work and then goes back to home position. then nothing else seems to work. the MDI screen shows the commands it’s trying but nothing seems to be moving afterwards. i have to do a reset in order to get it working again. did i copy the macros wrong?

Hi @hayaku,

I assume you mean @neilferreri’s macros from here.
While I don’t have an HDM, I do use them with CNCJs on a Pro and the behavior should be the exact same.

You mentioned the “initial tool” bitsetter macro works (then goes back to the home position, but that is probably because you did not set a zero yet, this is where the macro returns to). What next action are you taking that does not work ?

The logical next step after running the “initial tool” macro would be to set zeroes using the bitzero one, is that what is causing the traces in the console window but nothing happening ? Can you copy/paste the content of the console window here for a check ?

1 Like

Hi Julien,

Yes, you are correct. I home the machine first to unlock cncjs. Then I run the “initial tool” macro so it can measure the tool length. It then goes back to the home position and I cannot move it with the jog controls or anything any longer. I would need to reset the machine to get control back.

I’ll try tomorrow with setting a work zero first. I assumed the work zero was stored in the eprom and that cncjs would read that? That’s how carbide motion does it right? I’m following the carbide motion workflow essentially. I just wanted a view of the program and better status on where the job is…

I’ll report back tomorrow with the output from the trace.

Mmh, weird. Do you have any error message showing up in the console? Is the machine in “Alarm” state? Cncjs normally never contrains your workflow (for better or for worse), so an error/lock/Alarm state is usually the only cause for not being able to jog

There is no reason for it not to work.


I’ve used CNCjs successfully with HDM. @neilferreri ’s macros work as expected.


Yes…if you know your work zero is set, you don’t need to set it again.

No, Motion clears the Zero in the controller’s EEPROM and stores it in Motion. If you’re bouncing back and forth, that can cause issues if you’re not aware of the differences.

You mean the console in CNCjs? Do you receive an ‘ok’ response to commands? Do the axes readouts show movement commands were sent?


Thanks for all the replies guys. I ended up deleting everything and starting from scratch.

cncjs with the macros is working now. I was out of order with how i was using the macros as well as something wrong with my initial copying of the macros I think.

Here’s how I’m running it now. please let me know if it’s correct:

  1. turn on hdm and start cncjs (obviously secure the work piece in place)
  2. home the hdm from cncjs to unlock and clear the alarm
  3. since the homed spindle is in the back right, jog the spindle to where I can change the tool (if not already the correct tool).
  4. jog the spindle to the start work point and run the “3 axis with hole” probe to set the zeroes.
  5. run the “initial tool” macro to get the cutter length read. after this runs, it goes back to “g0 x0 yo” position.
  6. (optional)load the gcode and run the “boundary trace” macro to make sure everything is in the correct place
  7. load the gcode file and go

I am running into an issue with the z height being 5mm higher than what the 3 axis probe gave me. I have to re-zero the z 5mm lower and then it’s at the correct height.

I’ve ran a test file and we’re operational now with the workflow view and line status I was looking for.

Thanks for all the help.

1 Like

When you probe for zero it’s 5mm too high?

Yes. Using the cb3d bitzero to probe from the lower left corner. it’s not on top, but properly referencing the corner. it always comes back as 5mm higher than the stock and i tried with several difference pieces of varying sizes to confirm and move the zero around for confirmation that the probe works. XY is perfect. just the Z is consistently 5mm higher than the where it should be.

Does the %Z_PROBE_THICKNESS parameter in the probing macro match the actual thickness of your bitzero?


Thank you!

Thank was exactly the problem. My dumb self forgot to change the variable for that when i started over from scratch. That also made me actually read through the macros and understand what they are trying to do line by line.

I have since gone through all the macros and made the changes I wanted. I have the spindle move to the front center for tool changes and move over to the bitsetter location just like in carbide motion.

I can now emulate the carbide motion workflow if I want.

Thank you all for your advice. This has been a learning curve but a lot of fun.


This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.