First thing to do when Cupcake CNC has been built? Making it wireless!
I had a few BlueSMiRF Gold modems lying around and i was thinking of using them for Cupcake before I received the kit. Now that the kit is completed I immediately checked the Sanguino board if bluetooth module would fit it without modifications. Sadly it did not. FTDI USB-TTL cables have different pinout than BlueSMiRF module has.
I saw an article on the makerbot wiki about BT communication but it suggested a solution which was way too complicated. I came up with more simple and cheaper solution.
Looking at the Reprap motherboard it is easy to see that only RX and TX and GND are properly connected to the pin header used by FTDI cable and by checking the Bluesmirf PCB and FTDI datasheet it was clear that only VCC and GND need to be in different pins.
Solution
I took a 6-pin female pin header with long pins (same ones that Arduino shields use) and used pliers to twist the GND and VCC pins in proper positions. I also moved the CTS pin for completeness. Then I soldered the pin header to BlueSMiRF.

BlueSMiRF module and modified pin header. Note that in this picture the pin header is upside down, the most twisted pin should go to GND.
Since Reprap motherboard does not provide VCC to the FTDI pins, I also needed to add a jumper wire in order to provide power to the module.
I plugged all the cables in, attached the bluesmirf module, hit the power switch and voilá, everything started blinking like they supposed to be.
Configuration
Only thing to do was to configure the BT module to use proper baudrate as BlueSMiRF has a default of 115200BPS and reprap motherboard uses 38400BPS.
I paired the BT module to my computer and opened a serial terminal (I am using OSX so i used screen: screen /dev/tty.FireFly-SPP 115200) . Configuration mode can be entered by typing $$$.
Baudrate can be set with command SU,38. I also set the BT module name to more fancier (SN,CUPCAKE) and enabled low latency mode (SQ,16). I exited the terminal and launched ReplicatorG, selected the correct port and was greeted with firmware versions. yey!
Update May 25th: Today after rebuilding my machine (I took it apart and varnished all the wooden parts) I experimented more with the bluetooth and it didn’t really work well with for example round corners in the single wall test object. Latency seems really to be a big issue for this. I need to test more.
Update July 12th: Bluesmirf module doesn’t work well if auto-reset is enabled in the motherboard. The reason for this is that Bluesmirf triggers RTS signal when it powers up, which causes the motherboard to reset. Solution for this is to cut the RTS pin from the header or disable auto-reset.


What OS are you using? Would you post the contents of your command line session? I don’t understand the described procedure.
I am using OSX. By terminal in this case i mean serial terminal, for example screen. I will edit the post to make it easier to understand.
Once you added the jumper does the regular USB still work?
Yes, it works. Only problem is that because 5V is connected to the pin header, the usb-serial cable will also power the board so board reset does not work properly and the cable has to be disconnected. I think I can fix that by submitting a patch to the firmware code.
Thanks. I followed your process, and now my board keeps resetting every few seconds whenever I plug in the bluetooth module. Any thoughts?
Thanks Again
I think it happens only if you have auto-reset enabled on the motherboard. I guess Bluesmirf module sets RTS on when powering up which causes the reset.
Another option would be to cut the RTS pin from the pin header. Then auto-reset would work when FTDI cable is connected without touching the jumper.
Thanks, I cut the RTS pin from the blutsmirf, and that seems to be working!
Sorry to keep bugging you about this. But I got the bluetooth to connect and changed the bit rate, and all that, but now I’m getting this weird “Could not use most recently selected serial port (COM6)” I cut the auto-reset jumper and reconnected the RTS pin, but I still get the same error. Not really sure what to do…
Thanks for any help, and all the help you’ve offered so far.
It takes some time for the computer to establish connection to Bluesmirf. The time it takes to connect might exceed the timeout in ReplicatorG. Just try to reconnect immediately few times and it might work. Also ReplicatorG serial port stuff changing is not working very well if you change the port you are using (between cable and bluetooth). It takes few tries to get it to try the new port instead of the old one.
Still having issues with repG recognizing the bot, everything else is showing up fine, but it keeps going to COM8 when my bluetooth is on COM6 (COM3 is my normal usb connection). I keep trying to change to com6, but each time I restart repG it is back to com8, I tried modifying the machines.xml file to change COM1 to COM6 as well. Not really sure what else I can do.
I also added some switches to toggle autoreset and the 5V to the bluesmirf, it helps when i switch back and forth between trying my usb and the bluetooth. That way i don’t have to disable autoreset permanently.