Raspberry Pi GUI Tutorial

Use Qt and Python to make an easy to use Pi App

Raspberry Pi GUI Tutorial

My favorite Raspberry Pi add-on is the PiTFT from Adafruit. With it, you easily get a Raspberry Pi GUI interface and touch screen. The PiTFT software install is just a few things and it is good to go.

Adafruit PiTFT - Click for more info

Image from adafruit.com

This screen is what I needed in my IoT project. The Pi+Screen will act as the primary controller for all of my things. The problem is I didn’t know much about writing GUI applications in Linux. So what could I do to create a Raspberry Pi GUI?

Python is popular in Pi projects, so I decided to stick with it and find out what GUI toolkits are ready to go. “Ready to go” means they install easily on Raspian and work well on the Pi.

Here is how I got Qt5 for Python up and running to create a Raspberry Pi GUI.

Continue Reading »

Quick timelapse video of Bright Bricks building a life-size BB-8 unit. Surprising to me was that I always imagined these builds solid with LEGO pieces. Turns out, they are built an internal structure, which makes more sense really. Either way, watching this short LEGO BB-8 build is fun.

baldengineer's IoT Internet Of Nothing

IoT (n): Internet of Things

  1. Things that connect with the internet, to share information.
  2. Devices that communicate with each other.
    1. No wait. Nothing does. It’s the Internet Of Nothing!

It continues to amaze me how few Internet of Things (IoT) devices actually communicate with each other. Isn’t Internet connectivity suppose to make it EASIER for things to talk? Computers have been communicating with the Internet for 45 years. Why can’t Light Bulbs from two manufacturers do it?

At some point someone has to come along to “fix” this situation. What is that solution going to look like and how much longer do we have to wait? Let’s get out of the HealthKit era of things talking to each other.

Use Arduino millis() with buttons to delay events

Create delayed actions without using delay()

One of the common questions related to using the millis() function in Arduino, is around timed events. After an event occurs, you want the code to wait for some time before doing the next step. But you don’t want to stop the program with delay().

Delayed Actions with Millis

In this example, we will use millis() to wait a few seconds after a pushbutton press to turn on an LED. Then a few seconds later, we will turn it off.  All without using delay().

Understanding millis()

The Arduino millis() function will let you accomplish this delayed action relatively easily. First, read through my multitasking with millis() tutorial and then look at some of my millis() cookbook examples I’ve already posted. Getting used to seeing this kind of code will make this line by line tutorial on timed events using millis() easier to follow.

Continue Reading »

Hackaday Omnibus Vol 2 Review

Is a reprint of Hackaday.com articles worth it?

hackaday omnibus vol2 review

As 2015 wrapped up, I finally got around to flipping through the Hackaday Omnibus Vol #2. Before getting into what I think about this issue, I want to address an interesting point.

In our increasingly digital lives, the value of high-quality prints continues to rise. Hackaday Omnibus helps to maintain and set the standards for published works.

You might be thinking, “what’s the point of buying a paper version of their website?” That’s what I hope to address in this review: is Hackaday Omnibus worth buying?

What is the Hackaday Omnibus?

If you aren’t familiar with the word “omnibus”, it is a compilation of previously published works. (It’s also Latin “for all”, according to Wikipedia.)

The Omnibus is 8.5in x 11in x 0.33in (216mm x 279mm x 8.5mm) in size. The 128 pages contain 31 articles featuring 21 authors, from hackaday.com’s 2015 posts. Oh, and there are no ads.

Continue Reading »

Bald Engineer’s Top 2015 Stuff

A look at what you read the most from James

baldengineer's top 2015 posts

As 2015 wraps up, I took a look at baldengineer.com’s traffic for the past year. Here’s some of the most popular stuff from my blog, in case you missed it.

Everyone with a blog looks at their traffic numbers. For me, traffic data provides feedback on what tutorials or posts are helping people most. Each year, the traffic to my blog grows at ridiculous numbers. As someone with both an engineering and marketing background, I find the numbers impossible to believe.

Thank you to everyone who reads, shares, and comments the stuff I create. Those of you on the mailing list, I appreciate the interaction we have there, please keep writing in!

Check out these posts if you didn’t catch them the first time.

Continue Reading »

Is the Raspberry Pi Zero worth $5?

I cannot figure who the Pi Zero is targeting.


What makes the Raspberry Pi so attractive? At $35 it is an unbelievable value for a single board computer. Since its introduction, a price race to the bottom has begun.

The C.H.I.P. claims to have started shipping the $9 computer. Which, many pointed out, doesn’t cost $9 once you add things like support for display. I would like to point out, I was an early backer and have yet to receive one.

The Raspberry Pi B and B+ were fantastic additions to the Raspberry Pi family. Each extended the capabilities while keeping the cost low. The most recent addition is the Raspberry Pi Zero.

The Raspberry Pi Zero has the same processing capabilities as its predecessors and only costs $5! Does that make it a slam dunk? Well, here’s a few applications to help decide if the size-reduced bare board is worth $5.

Continue Reading »

Getting PCBs from KiCad to X-Carve

Milling printed circuit boards with open source tools from start to finish.

KiCad to X-Carve Workflow

The last time I looked at using an X-Carve for Printed Circuit Boards (PCBs), I created a demo board with EAGLE. Since then, I have learned more about using KiCad, the open source electronics CAD suite. While not a step-by-step tutorial, here is my rough KiCad to X-Carve PCB workflow. These are just the high-level steps, the tools necessary, and the settings I’ve discovered for each—so far.

Eventually, I will make this a more detailed KiCad to X-Carve PCB tutorial, so make sure you subscribe to my RSS feed for updates.

Here’s the Basic Steps:

  1. KiCad: Draw Board
  2. KiCad: Plot Gerbers
  3. KiCad: Generate Drills
  4. pcb2gcode: Generate G-code
  5. Text Editor: Clean Up G-code Files
  6. Camotics: Simulate G-code
  7. ChiliPeppr: Send G-code and control X-Carve
  8. X-Carve: Make the boards!

Continue Reading »

Need a G-code Viewer? Check out this Open Source CAM Simulator


gCode Viewer: Camotics

A gCode viewer is essential when doing anything with a CNC. Knowing where the tools is going to run can mean the different between a failed cut and a broken bit. Or let’s say you’re trying to debug some gCode scripting, no need to wait an hour to find out you messed something up. That’s where a GCode Viewer can help.

There are several on-line options that let you upload files and see them in a 3D view. However, if your CNC is setup like mine, there isn’t a good internet connection available. Camotics, formerly the unfortunately named OpenSCAM, is a cross-platform open source gCode viewer / simulator.

Most recently I used it to debug some gCode that pcb2gcode generated from a Kicad board I am working on.

Check out more about Camotics on their site: http://camotics.org


Four ESP8266 Gotchas and a tip for a first time users

Learn about the ESP8266 before adding to your project

introduction to esp8266

Adding WiFi to any project can be difficult. There are a few off the shelf options that make it easier. One option is the official Arduino WiFi shield. This full-featured shield uses its integrated microcontroller to handle the WiFi protocol, security, and the TCP/IP stack for you. From “plug it in and go” perspective, this is an awesome option for Arduino-based projects. Plenty of example code supports the nicely designed hardware. The main downside to some people is the price.

The more popular option these days is the ESP8266, typically advertised around $5US. They are about the size of a TO-220 packaged transistor. How do they get so small? Using a technology known as “System On a Chip”, or SOC, these tiny modules pack everything on the Arduino WiFi shield inside of a single chip! SOCs are great when space is limited. If production volumes are high enough, there can even be a cost advantage.

After spending some time with an ESP8266 I bought on eBay (which I don’t recommend..), I’ve found some things you need to know before building your ESP8266 based project.

Continue Reading »