Nessie, the Educational Robot

At the Lifelong Learning Robotics Laboratory at the Erasmo Da Rotterdam in Italy, robots are (not surprisingly) used to teach all of the fundamentals of robotics. [Alessandro Rossetti] and the students at the lab have been at it for years now, and have finally finished their fifth generation of a robot called Nessie. The big idea is to help teach fundamentals of programming and electronics by building something that actually uses these principles.

The robot is largely 3D printed and uses an FPGA to interact with the physical world through a set of motors and sensors. The robot also uses a Raspberry Pi to hold the robot’s framework. The robot manages the sensors in hardware with readers attached to the CPU AXI bus. The CPU reads their values from memory space, though, so the robot is reported to be quite quick.

The lab is hoping to take their robot to a robotics competition in Bari, Italy. We hope that they perform well there, since we are big fans of any robot that’s designed to teach anyone about robotics and programming. After all, there are robots that help teach STEM in Africa, robots that teach teen girls about robots, and robots that teach everyone.

A Better Way to Plug a CPLD into a Breadboard

If you read my first post about a simple CPLD do-it-yourself project you may remember that I seriously wiffed when I made the footprint 1” wide, which was a bit too wide for common solderless breadboards. Since then I started over, having fixed the width problem, and ended up with a module that looks decidedly… cuter.

To back up a little bit, a Complex Programmable Logic Device (CPLD) is a cool piece of hardware to have in your repertoire and it can be used to learn logic or a high level design language or replace obsolete functions or chips. But a CPLD needs a little bit of support infrastructure to become usable, and that’s what I’ll be walking you through here. So if you’re interested in learning CPLDs, or just designing boards for them, read on!

Continue reading “A Better Way to Plug a CPLD into a Breadboard”

Rory Aronson on Documenting Open Source Projects

Every project starts off with an idea. Sometimes those ideas are bigger than one person, or even a small group of people. That was the position [Rory Aronson] found himself in with Farmbot, his finalist entry in the 2015 Hackaday Prize. Documentation was key for [Rory]. Farmbot first came into the world in the form of a white paper. The paper included a request for collaborators, making this an open source project from day 0. Documentation has been important throughout the Farmbot project, so it was naturally the topic of [Rory’s] talk at the 2015 Hackaday SuperConference.

Continue reading “Rory Aronson on Documenting Open Source Projects”

Embed with Elliot: Debounce your Noisy Buttons, Part I

“Psst…hey buddy! Wanna see the sweetest little debouncing routine this side of Spokane? C’mon over here. Step right over those bit-shift operators, they don’t bite. Now look at this beauty right here: I call her The Ultimate Debouncer(tm)!”

Everybody who works with microcontrollers eventually runs into the issue of switch bounce or “chatter”, and nearly everyone has their own favorite solution. Some fix it in hardware, others fix it in software. Some hackers understand chatter, and others just cut-and-paste the classic routines. Some folks even try to ignore it, and they might even get lucky, but everyone’s luck runs out sometimes.

In the next two “Embed with Elliot” installments, I’ll look a little bit at bouncing, look into doing hardware debouncing both the simple way and the right way, and build up a basic software routine that demonstrates some of the principles and which works just fine, though it’s not optimized. We’ll be laying the groundwork.

In the next installment, I’ll let you in on my personal favorite debounce routine. It’s a minor tweak on a standard, but with some special sauce that’s worth spreading around. I’ll call it the Ultimate Debouncer(tm), but will it stand up to the scrutiny of the Hackaday commenteers? (How’s that for a cliffhanger?!?)

For now, though, let’s look into switch bounce and the standard ways to fix it in hardware and software.

Continue reading “Embed with Elliot: Debounce your Noisy Buttons, Part I”

How to Be the Hardware Engineer at a Startup

For those who prefer the smell of solder smoke to lines of code then you may be a hardware engineer. What you should consider is how to land a job at a startup, how to work fast, be a team player, keep an open mind, and be organized. Joining a startup will be the greatest challenge of your career. You can do it! Be a hardware engineer at a startup and change the world.

Continue reading “How to Be the Hardware Engineer at a Startup”

Programmable Logic: Build Yourself a CPLD Module

A Complex Programmable Logic Device (CPLD) is a great piece of hardware to have in your repertoire. As its name implies, you can program these chips to serve the logic functions you need. This might be replacing an obsolete chip, or maybe just a way to learn and try different techniques. What better way to learn than to get your hands on a CPLD and give it a try?

I created a CPLD module with the intent of being able to plug it into lots of things including solderless breadboards, but I screwed up. It seems that the plugin space available on a solderless breadboard is 1.1”, I had made the footprint 1” wide leaving no room for a row of wires on both sides. Duh.

But let me back up and show more about what I’m doing , I wanted to make a programmable piece of logic that could be built as a kit one could easily solder at home, could be programmed in-circuit, and could work at 3.3 or 5 volts.

Image5bTo implement an easily solderable kit I went with an older CPLD part that also has 3.3v and 5v versions that will maintain its programming regardless of power. The logic itself is a CPLD IC from the Altera Max family with two versions that fit the board with either 32 or 64 macrocells. A macrocell is the basic logic building block and it is programmed with logic “terms” and then interconnected to other macrocells through a programmable interconnect.

Continue reading “Programmable Logic: Build Yourself a CPLD Module”

Why You Need to Be at the Hackaday SuperConference

Hackaday’s first ever SuperConference is November 14th and 15th. Imagine a hardware conference that’s actually about hardware creation, packed with the most talented people – both as attendees and presenters. We are taking over Dogpatch Studios in San Francisco for the event that’s sure to change your engineering life. Apply Now for your tickets.

This isn’t hype. Our excitement is well founded, and especially so in this case. Here’s why:

Continue reading “Why You Need to Be at the Hackaday SuperConference”