All articles tagged as:


Seven PCB Milling Tips

After a lot of weekends of trial and error I finally have my PCB milling process working. In this post I share some things I have learned along the way - hopefully it will make it easier for anyone else trying to develop the same process. 1. Be Consistent This is one of the most important factors to get repeatably reliable boards. It's very tempting to just tape a board down randomly and start milling - but the next board might not be in the same place and you wind up with very different results. Your goal should be to minimise the number of variables as much as possible - use the same size bl…

Read more »

Automating PCB Layout for Milling

This post describes pcbpack, a Python script that automates the process of laying out multiple PCBs on a single panel for CNC milling. The tool is part of my gctools package, a Python framework and set of tools for manipulating gcode available on GitHub. When I started learning how to mill PCBs with a CNC I was making a single board at a time which turned out to be time consuming and prone to error. Each board needed to be positioned and aligned, the blank PCB needed to be trimmed to size and every milling operation presented it's own unique set of issues. Given that blank boards come in stand…

Read more »

Massage Your Gcode With Python

Since I first acquired my CNC machine I started building a set of tools in Python to let me generate and manipulate gcode files. I have now released this code on GitHub under a Creative Commons Attribution-ShareAlike license in the hope it will be useful to others as well. Disclaimer: Please be careful before using any of the gcode generated by these tools on your actual machine. Although I use it successfully myself on a range of projects I cannot guarantee that it won't damage your machine or behave differently in your environment. A good check is to run the resulting code through OpenSCAM…

Read more »

Notifications With Pushbullet

This post looks at notification systems on Android, Chrome and Android Wear and provides a simple way to insert your own notifications in to the stream with Pushbullet. I presented this at the Google Developers Group in Brisbane this week, the post is a longer form of the presentation. The slide deck I used is available here, I've enabled commenting on the document so please feel free to leave your feedback. What are Notifications? Before we look at specific implementations we need to describe what a notification actually is, or more specifically what an idealised version of a notification is.…

Read more »

PCBWeb - Schematic and PCB Layout Software

This is my review of PCBweb, a relatively new schematic capture and PCB layout tool for Windows. I used it to design a simple ATtiny based project so I could test it's features in a real application. There seems to be a trend for component suppliers to provide a free schematic and PCB layout tool with instant access to their inventory and built in ordering - RS Components have DesignSpark and now DigiKey have PCBweb. After having this new tool pointed out to me I thought it would be worth doing a quick review of it and see how it stacks up. Rather than just randomly play with the features of t…

Read more »