someguynamedross.com

Various ramblings – Electronics, radio, old computers, cars & other junk…

Monthly Archives: August 2013

Milled PCB Test

A few pictures of a test run trying out isolation PCB routing. GCode was generated using the PCB-Gcode script for Eagle, using the backplane board from my 6502 project as input.

Part way through the run I noticed that the mill was slightly out of alignment on the X-axis, this was causing shallow track cuts which got progressively worse the further along the X-axis the program went. A quick adjustment of the gantry seems to have fixed this but some further testing is required. I also need to tweak feed rates and cut depths, but the test went very well!

Completed Mill

Some pictures of the finished mill and the first cuts of my own design. Prior to this I had done some test cuts using the default “LinuxCNC” logo, the very first cut was actually flipped on the Y-axis… Configuration fail!

Mill Build

Another one of those cool “toys” I thought I would never be able to afford but lusted after all the same. With the availability of cheap stepper motors, driver circuits and free software (LinuxCNC), CNC mills are starting to become quiet affordable for home use.

Of course there are limitations. Just like my lathe this mill is only a baby, limited in its capabilities as far as speed, power and accuracy, there is no fair comparision to “real” CNC mills. But for most tasks that I will be using it for it is more than good enough.

This mill was built from a kit, purchased from Zen Tool Works. They sell pretty much everything you need to get a small CNC mill up and running, are quick to respond to emails and have a very handy Wiki style help area and forum.

PIC Development & Sublime Text 2

While working on a small PIC project as an addition to a larger project (a JUMA RX1 DDS LSB/CW receiver) I had the displeasure of using Microchip’s IDE MPLAB. MPLAB looks like it was designed in the mid-90’s, and while it does let you piece together code and compile it into PIC compatible hex, it’s not the most user friendly program.

While I was battling with MPLAB a friend re-tweeted a link about a new theme for Sublime Text 2, I had a look at the link and the editor looked pretty good! After doing a bit of reading I found out that Sublime Text has the handy ability to call user defined build systems with a hotkey, and as I read on I thought I’d have a crack at getting it working with the XC8 compiler in an attempt to ditch MPLAB.

Linked below is a small project I put together, based very heavily on a set of guides located at Gooligum Electronics. The main requirements to use Sublime to replace MPLAB are a Build System script, and a project specific build file that is launched by the Sublime build system script. This build file specifies various settings (chip type, project name, build options etc…), and is used by the XC8 compiler.

toggle-switch-led-1.0.zip – The most basic of programs, one step above a “Hello World” example. A momentary push-button is used to toggle 2 indicator LED’s along with another output pin that will be connected to the PIC chip in a JUMA RX1 radio (to switch between and display which of the two VFO’s is in use). Alongside the source files are the Sublime project files, one for Mac and one for Windows.

XC8.sublime-build – This is a multi platform version of the XC8 build-system file I am using with Sublime Text. This file will need to be loaded into the correct folder depending on your platform…
Mac: /Library/Application Support/Sublime Text 2/Packages/User/
Windows: C:\Users\<username here>\AppData\Roaming\Sublime Text 2\Packages\User\

Notes:

– The build-system above will need to be tweaked to point at your XC8 install, the project file will need to be pointed at the location of the project. Watch out for back-slashes on Windows, they need to be doubled up (escaped) to be treated as literal in the path.

– You can download the XC8 installer for various platforms here.

– This method can be used to run pretty much anything, you could substitute any build programs/scripts or even flash a microcontroller with this.