Different Hardware

A project log for Propeller Based CNC Router Controller

A relatively simple controller for my CNC router using a Propeller Microcontroller.

Duane DegnDuane Degn 04/26/2015 at 07:590 Comments

I couldn't get the original stepper driver to work even when using level shifters to convert the 3.3V logic to 5V logic.

Someone on the Parallax forum mentioned the DRV8711 stepper driver so I decided to give the DRV8711 a try.

I knew programming the CNC controller wouldn't be simple but dang it, it's downright hard. I find myself taking detours as I write the program. I think "wouldn't it be nice if I could display bitmaps as well as text on the OLED screen?" So I add a way to insert a bitmap into the display buffer. (I've tried to do this in the past and failed. This time I succeeded. ) Then I think "wouldn't it be nice if the dark areas of the bitmap could be transparent?" So I add a way to OR the two images. (IMO this looks pretty cool.) I also added code to invert a section of the bitmap. I'll likely inverted a line of text as a way to indicate it has been selected.

Another sidetrack was making a mount for a joystick I saw in a Hackaday article. I then needed to incorporate the joystick into the CNC interface.

Here are a couple of pictures of the joystick. This first one shows the PVC cap I used prior to cutting the holes. I added the Dr. Pepper can to provide scale.

This next photo shows the joystick mounted to the PVC cap.

I confess to not really needing another joystick, but I thought this one looked really cool. Here's a link to the Aliexpress seller.

I made a video showing the OLED displaying both text and graphics. The video also shows how I was able to invert a section of the screen.

Since I'm not using the original stepper driver hardware, I decided to switch the rest of the electronics hardware too. I'm using a different Propeller control board and a different display than I previous used for this project. This current configuration of hardware is easier to modify than my previous hardware.

The NTSC video display I previously used required my using a second Propeller chip as a graphics slave. The smaller OLED display can be driven from same Propeller chip as the one I'm using to control the stepper motors so I'm now just using one Propeller microcontroller.