Largest post thus far and Happy New Year!

So this is the fifth attempt in getting this update online, if it’s not project progress that makes it outdated at time of almost posting its flaming Microsoft Word crashing when it tries to auto-save. I was going to use the excuse that with starting a new job there hasn’t been enough time to actually get stuck into any serious project work but that would be a bit of a lie. The truth is that the motivation to type out the update has grown less and less as the amount that needed to be updated grew and grew.

In the last update on the arcade machine the second controller panel had just been painted and was drying before the buttons were added and it was installed in the machine. A couple of days later this was done and the buttons were then wired up. One of the modifications that I made to the original design was the inclusion of a M8 threaded behind the front of the player controls, this helped to pull the wooden sides together tight against the metal panel.


This was a bit of a mission if I’m completely hones as I underestimated the length that the rearmost wire extended off the back of one of the joystick micro switches and ended up munching it pretty good when drilling one of the holes. This then meant that the control panel had to be removed which required the removal of the green trim and a bit of repainting of the wooden sides with the panel was reinstalled.

All that aside once both panels were installed and tested it was time to install the green acrylic behind the panel which will eventually be backlight. I had hoped to find some semi opaque green acrylic that allowed some light to show through but didn’t allow you to see inside the machine but all that I could find on TradeMe was green tinted acrylic. To solve this issue I doubled it up with a sheet of semi opaque white plastic similar to that used on lightboxes.


The first one of these went in pretty easily with the help of some 3D printed brackets


The second however fell victim to the old measure twice / drill once curse which then required the purchase of two more pieces of acrylic. The issue that I then faced was that the plastic was delivered approx. 1mm undersize which would have meant that light from inside the machine would spill through the gap left at the side. After stuffing around for a while with black tape and paper I settled on a 2 layer high 3D printed strip which fits perfectly down the side of the acrylic and is invisible enough.


The final modification that I made to the electronics was the hack of a remote control to turn on and off the stereo and change the input / volume when the cabinet is closed. One of the annoying things about the car stereo is that every time the power is cut and then restored the radio defaults to a powered off state. Secondly when you then turn the stereo back on it’s on the wrong input. I didn’t want to really open up the side of the arcade machine every time I turned it on to turn on the stereo, change the input and set the volume. To solve this I cracked open the remote that came with the stereo and wired it up to several relays which were then connected to one of the nRF24L01 nodes that I’ve been experimenting with.IMG_1028IMG_1030

As a result you are then able to “press” the buttons on the remote wirelessly using a computer / another node to turn on the stereo, switch the input and turn the volume up and down.

A piece of glass for the table top has now been sourced and cut to shape and is ready for install. First the wooden section of the top needs to be cleaned after sitting in the garage for a number of months and have its final coat of paint applied.

Last time on the mower I’d just installed the replacement petrol tap and gasket between the cylinder head and the exhaust with the next steps being the reinstall of the blade, wheels and the handle. This has all been completed with the lawnmower being used to mow lawns with good result several times since, it’s already beginning to collect a few scratches in the paint.

IMG_1034IMG_1032 IMG_1033

I didn’t go really go too far with the restoration of the wheels as they’ll soon be removed to convert it into a lawn robot, the height adjustment lever and rods received a clean and the removal of the old paint as its likely they will remain. I did have doubt around the mower running at the correct RPM but a test with a cheap TradeMe tachometer has confirmed that it’s within specification. I still do need to check however that the spring that acts on the governor is set right to allow the engine to respond correctly when the RPM drops as a result of long grass etc. For the moment this project is going to be classed as closed.

I’ve also been playing around recently with some of the WS2811 LEDS that are everywhere these days. The amount of information and libraries that have been written to interface with these makes it extremely easy to connect them to a computer, cell phone or lighting console which has resulted in people making some absolutely mind-blowing art pieces. The first step for me however was ordering a number of different strips and rings for the local supplier to play around with but after coming up with an interesting project using the 12 LED rings I was left with a 1m long strip that I wasn’t really using…

One of the first world problems that I have at the moment is that there is no light switch next to the bed to turn on and off the main lights in the room. This means that there’s always a disagreement over who’s going to be the person that has to turn off the lights and then make their way across the room in the dark. To solve this the 1m strip was attached using the 3M tape provided to the bed end was connected to a Arduino clone and Bluetooth to serial module which was mounted on the side of the bed end in a 3D printed case.


An app was then whipped up using the ever useful MIT AppInventor software which allows you to control the strip with an Android phone.


When opened, the app immediately tries to connect to the Bluetooth module and then presents the user with buttons to select either the left hand side, the right hand side or the entire strip. Four sliders then allow you to set the Red, Green and Blue channels or all three at once using the white slider.

IMG_1038 IMG_1039 IMG_1040 IMG_1041 IMG_1042

There is also an “All Off” button to turn all of the LED’s off at once. In all the project only took a night to build and then program. Eventually the plan is to replace the Arduino and Bluetooth module with one of the nRF24L01 nodes to integrate it into the rest of the node network.

The second project that I’ve been working on with these LED’s uses the 12 LED 90 degree sections that can be soldered together to make a 60 LED ring. Quite a convenient number to be honest.


The first step was soldering the ring together, a flat surface really helps here to make sure that the ring isn’t twisted once soldered together. That being said there is enough give in the three solder joints between each section to straighten it out afterwards. To provide extra bracing to the ring and to eliminate having to use wires as such I built a bracing frame to connect to most of the 5V connections on the back of the ring and then another to connect to the GND points. The GND braces actually sit about 1.5mm further back than the 5V frame and are isolated with small pieces of heat shrink where required. I quite like using bare copper wires when possible for things like this as not only is it reasonably strong but also conducts (duh) and looks quite cool.

Once this was complete the five components (Arduino clone, RTC, capacitor and 2 x resistors) that were going to be used were positioned and then soldered to the bracing frames to mount them and provide the 5V and GND connections. The SDA and SCL connections were then made to the RTC as well as the DIN connection to the first segment on the ring.


After this it was time for testing. At this point I hadn’t put the power connectors on the clock yet but having a frame that was actually the 5V and GND rails made it extremely easy connect the power supply with the help of a couple of alligator leads. Success LED ring works with the demo sketch on the Arduino. I’d previously used this model RTC on another project and so was able to copy the code that interfaced with the RTC from that which saved some time however when trying to run it on the Arduino for some reason the RTC wasn’t running. Poking around with it mounted achieved little and so it needed to be removed from the frame without damaging either the RTC or the bracing frames. Once complete however temp headers were soldered on and it was tested with several different Arduino models. None worked.

At this point I was thinking that perhaps I’d received a dead model so I started tracing out the connection on the PCB. All were fine. I then replaced the backup battery and ran through them again to find 0V on the battery input pin on the RTC. After confirming that the battery did in fact have charge I had another fiddle and figured that perhaps the positive connection on the battery holder wasn’t making a proper connection. Scratching some of the surface off didn’t solve the problem but shoving a piece of tin foil in did. After testing that the clock was now working properly I replaced the tin foil with a pad / blob of solder and returned the RTC to the clock frame. Note: despite having power applied to the +5V input on the RTC the backup battery appears to need to be present for operation. Who figured?

A wee bit of further programming later and Voila, finished clock. Hours are represented in green, minutes in blue and seconds in red. After 6pm at night the clock display turns off and then turns on again at 6am in the morning.

(Sorry for the vertical video, I know I’m a bad person)

On the lathe a number of parts have been painted and installed to the point that there is one more part needing a second coat to reassemble the headstock. Both the front and back belt guards covering the longer of the two belts have been installed as well as the countershaft, swing arm and V cone pulley. Both of the bearing caps and the back gear eccentric assembly have also been painted. Once all the parts are ready the headstock will then be assembled, after that the next step will be to paint the other belt guard, back gear lever and tumbler gear lever…

IMG_0901 IMG_0902

(Leap forward in time two weeks) Since typing all that out the headstock got its second top coat and was installed on the bed. It was a relief to finally get this done and remove the masking tape that has been on some of these parts for the better part of three months. Now that the weathers warmed up a bit it’s so much easier to get paint to dry which has vastly sped up progress. A few days after the headstock was installed the drip feed oilers were cleaned out and attached to the bearing caps. The backgear eccentric assembly has also been installed and loosely connected to the lever on the outside of the headstock. Once the spindle has been shimmed up and the correct position of the backgear has been determined then the lever will be tightened up onto the backgear eccentric assembly. IMG_0904IMG_0906IMG_0916

Leap forward yet again…. The headstock has now been finished with the spindle installed and shimmed up. The back gear has been positioned and tightened and tested and runs pretty nice. The lathe is at the point where it can be used to an extent again and so as opposed to having to polish the hand wheels in the drill press I’ve been able to do them in a proper chuck without having to mount them on a piece of metal rod to mount them in the drill.


Unfortunately I discovered some time ago that the same colour paint from the same manufacturer differs depending on whether it has come out of a tin or a spray can. Normally I guess you’d use one or the other however at the start of the project I used a couple of cans on the first few parts before switching to a tin to do the bed. Since then I’ve stayed with the tin as the finish is actually better and it’s a lot more economical. The problem (to me) that this created was that the tailstock was a slightly different shade of grey to the rest of the lathe and due to its position (all the other sprayed parts aren’t readily apparent) a bit of an eyesore. To fix the tailstock was disassembled and wiped down with IPA before receiving a coat of paint from the tin before being reassembled and reinstalled. The oil nipple on the top has also finally been screwed on (small job but never seemed to get done) with the hand wheel for the tailstock receiving two light topcoats.


When painting the first hand wheel I went with a mask and paint approach, masking off the outer polished section prior to painting the inner. The tailstock hand wheel has a slightly different profile between the polished and painted parts which made the masking attempts less than ideal. In the end I abandoned masking and used model brushes to paint the border between the painted and polished sections. This is probably the same approach that I’ll use for the remaining hand wheel as well.

The tumbler gear assembly has also been painted and reinstalled along with the leadscrew bracket assembly at the headstock end as well as the change wheel quadrant. I know that the bracket assembly is a different colour, this is because it’s new and I can’t bring myself to pull off the factory paint and repaint it in a matching colour. I realise that this may sound hypocritical in light of the tailstock repainting requirement however I’m justifying it as an homage to the original colour.


The leadscrew has also been reinstalled but is hanging off a section of wire at the tailstock end whilst the bracket at this end receives its coats of paint. This will then be reinstalled with the associated spacers and nuts etc on the leadscrew to the complete this section of the lathe.

IMG_1013 IMG_1019

This has now been done, the bracket install went pretty easily although the top coats were a pain in the butt. Its been stupidly hot here recently and so the paint has been drying too quickly for it to flow out and make a smooth surface. Eventually a passable finish was achieved. The full geartrain was run today for the first time with most pleasing results.

Moving onto the carriage assembly, the topslide has been installed on the topslide base with the gib strip adjusted to remove slop, this has then been installed on the crosslide with the crosslide endplate receiving its first coat of paint two days ago. The carriage proper has been stripped of paint completely and will be cleaned of the protective oil layer, masked and painted probably this weekend.


For the last couple of weeks the amount of work that still needed to be completed (read repainting) still seemed to be an obscene amount. After making inroads on the carriage however the end seems to be a lot closer somehow. Both the belt guard that sits between the swing arm and spindle and change gear cover still need to be painted however I’m hoping to bead blast these which should speed things up a bit.

The final project that I’ve been working on is the construction of a Shapeoko2 which is mostly complete aside form a number of modifications that are required for the end stops to work properly.

Ive only got three pics of this sorry, one of it in the box,


one of it out of the box,


and one with piles of junk gathering on it because my Dremel has crapped itself


In general the construction of the frame went fairly smoothly and was completed in a couple of nights although tapping all the aluminium extrusion got very old very quickly. From first inspection it looks to be a fairly well designed machine with the following comments.

  1. The screws that attach the gantry to the Y motor mounts could be longer. Compared to the rest of the screws that went into the ends of the aluminium extrusions these were oddly short. This combined with the fact that the holes are tapped into aluminium didn’t offer too much strength (note only in my opinion). I ended up replacing these with longer screws for peace of mind.
  2. Some form of indication as to how to beset attach end stops wouldn’t go amiss. In the end I had to print a number of different brackets (6 in total of 5 different designs) in order to mount all the end stops.
  3. Make the end stops NC by default. This I think would solve a lot of the issues that people have with the end stops triggering from motor noise and would certainly be a lot more fail safe
  4. Someone really needs to have a look at software such as Repetier Host or Pronterface and come up with a solution for the Shapeoko (or if you know of one then let me know please!!)

These last two points have been a real pain in the ass…

Firstly it’s interesting to see the difference in maturity between the PC software for 3D printers and for CNC machines running GRBL. Taking Repetier Host or Pronterface for example you have two pretty polished pieces of software that works with a number of different firmwares and offer a lot of functionality. Looking at similar software but for CRBL based CNC machines the pickings are a lot thinner with it seems to be greater “width” but not as much “depth”. What I mean by this is that it appears that there seem to be a wider range of PC side programs but at the expense of functionality and usability. Issues demonstrated by this approach have been identified as follows

  1. The “$#” ordering of the settings seems to change between the different versions of GRBL with new settings displacing current settings in the numbering plan. This caused issues with a number of programs that had the settings numbering coded into the program which then didn’t match the different versions of GRBL. These programs at time of writing have not been updated yet.
  2. The requirements for a federate to be included in move commands changed within different versions of GRBL as a result the jog functions on some of the software didn’t work.
  3. Not all software provided button access to commands such as “Home” and “Unlock” Whilst I accept that you are able to issue these commands using “$H” and “$X” it seems odd that these were omitted considering how central they are to operation.
  4. No one bit of software seemed to offer good machine jog controls, visualisation and easy access to the settings in GRBL
  5. Half the software had the machine moving in negative space as it moved away from the home positions, the other half had it moving in positive space with no apparent setting in any of the software to change this. I accept that this isn’t functionality provided by the majority of the 3D printing software but at least the approach is consistent.

I think that there is massive potential with GRBL to have a stable low cost platform to run homemade CNC machines off but at the moment this shotgun approach to PC side software hasn’t resulted in the full potential to be realized in my opinion. I’ll keep looking however and update below as this changes.

Secondly the decision to go with NO end stops for the GRBL shield is interesting and seems to cause a lot more issues compared to NC end stops as well as being less fail safe. Numerous blogs, forums and my own experience with NC and NO end stops on 3D printers have indicated a greater number of issues with noise and false triggers with NO end stops over NC end stops so I’m really sure why at the expense of the above the design choice was made to go with the NO option. It seems from what people are having to do to fix the issues with the NO end stops that it would have been a lot easier to have NC ones in the first place.

In my instance I wasn’t able to easily modify the GRBL shield I had to run with NC end stops so I had to resort to adding extra resistors and capacitors to pull-up the end stop properly and remove enough noise from the end stops for the machine to run reliably without the end stops triggering all the time. I haven’t yet run an extended job on the machine yet so it’ll be interesting to see whether these modifications will be enough or whether more work will be required to get it to function properly.

In conclusion with the Shapeoko I kind of get the impressions that it’s less of an “Out of the box” product than it claims to be with some obvious shortfalls in the software and end stop department. Despite that the design works well and has promise. In all, for the price it’s a pretty good option.