Add Bluetooth to make your CNC wireless

Most cheap CNC machines come with a GRBL controller board that communicates with a computer using a wired USB connection. There’s no problem with that if you want a computer near your CNC, but a much more convenient way to communicate with it is over a wireless connection. That way you can keep your valuable PC well away from potential hazards or even use an Android tablet or smartphone instead. And the easiest way to do that is add a Bluetooth module to the GRBL board if it has serial connections available.

So a bit of manual reading, and looking at the boards’ circuit diagram, are necessary. You’ll be looking for connections for connecting wires to its positive (e.g. 3.3V or 5V) and negative (a.k.a. ground or earth), transmit (Tx) and receive (Rx) headers. Normally they’ll be on pins soldered into the board. Then you need a Bluetooth-serial module which are a few pounds/dollars on eBay or Amazon: I used a HC-05 which is commonly available. The module will need its name and communications speed set up first and I’ve put some tips on that at the bottom of this post.

Then the Bluetooth module needs a connection from positive to Vcc and from ground to GND, to power it. The Tx on the GRBL board goes to Rx on the Bluetooth module and, similarly, Rx goes to Tx. I’ve put a diagram below that shows how I wired my HC-05 to my Woodpecker 3.1 GRBL controller board, which is quite common on cheap Chinese CNC machines. Sometimes Tx and Rx connections are reversed on the Bluetooth modules, so if you have problems you can try swapping them over. And to make it easy to get started consider using female-female jumper wires (i.e. sockets both ends) for the connections, like I used in the photo above, before committing yourself.

Circuit diagram for an example Bluetooth wireless connection
Hopefully now your Bluetooth module will flash an LED when the CNC is powered, to tell you it’s waiting for a connection. If not, check everything carefully, especially your positive and ground wiring. If that’s OK you should be ready to pair with your PC or Android device and have fun doing wireless CNC’ing.

Setting up a HC-05 Bluetooth module with an Arduino

If you know nothing about microcontrollers then now is probably a good time to find a friend who does, or even try to talk an online supplier into doing the setup when you buy. However, it isn’t really very difficult if you have an Arduino as you just need to wire the HC-05 to it as described for the GRBL board above (see www.arduino.cc for help on your particular board). The code below can then be used to set the Bluetooth module to be called ‘CNC’ (which you can change) with a speed of 115200 bits/second. Most modern GRBL boards communicate at that speed but if yours is quite old, and uses 9600 bits/second, you can change ‘BAUD8’ to ‘BAUD4’ or simply remove that line. And then, hopefully, your HC-05 module is good to go.

void setup()
{
  Serial.begin(9600);
  delay(1000);
  Serial.print("AT+NAMECNC");
  delay(1000);
  Serial.print("AT+BAUD8");
}

void loop(){}

Leave a Reply

Your email address will not be published. Required fields are marked *