Congratulations, you have just finished assembling your electronics project. After checking for obvious problems you apply power and… it didn’t do what you wanted. They almost never work on the first try, and thus we step into the world of electronics debugging with Daniel Samarin as our guide at Hackaday Superconference 2019. The newly published talk video embedded below.
Beginners venturing just beyond blinking LEDs and premade kits would benefit the most from information here, but there are tidbits useful for more experienced veterans as well. The emphasis is on understanding what is actually happening inside the circuit, which explains the title of the talk: Debugging Electronics: You Can’t Handle the Ground Truth! So we can compare observed behavior against designed intent. Without an accurate understanding, any attempted fix is doomed to failure.
To be come really good at this, you need to embrace the tools that are often found on a well stocked electronics bench. Daniel dives into the tricks of the trade that transcend printf and blinking LED to form a plan to approach any debugging task.
Erika’s origin story begins with an interest in electronics during her teenage years that led to work in recording studios. It seems nobody on staff there was interested in repairing anything. Every company needs a hacker to make sure everything continues to work and she decided to take on the role.
From there Erika found her way into the world of manufacturing and has never looked back. You may remember hearing some of her experiences in her 2016 Hackaday Supercon talk on turning your manufacturing mistakes in a learning experience. During this panel she recounts one particularly painful experience when over-torque on a six-layer PCB damaged traces and led to extensive manual rework; always include a torque-spec!
The idea of InspectAR is to use augmented reality to help work with and debug electronics. It’s a powerful suite of tools that enable the live overlay of graphics on a video feed of a circuit board, enabling the user to quickly and effectively trace signals, identify components, and get an idea of what’s what. Usable with a smartphone or a webcam, the aim is to improve collaboration and communication between engineers by giving everyone a tool that can easily show them what’s going on, without requiring everyone involved to run a fully-fledged and expensive electronics design package.
The Supercon talk served to demonstrate some of the capabilities of InspectAR with an Arduino Uno. With a few clicks, different pins and signals can be highlighted on the board as Mihir twirls it between his fingers. Using ground as an example, Mihir first highlights the entire signal. This looks a little messy, with the large ground plane making it difficult to see exactly what’s going on. Using an example of needing a point to attach to for an oscilloscope probe, [Mihir] instead switches to pad-only mode, clearly revealing places where the user can find the signal on bare pads on the PCB. This kind of attention to detail shows the strong usability ethos behind the development of InspectAR, and we can already imagine finding it invaluable when working with unfamiliar boards. There’s also the possibility to highlight different components and display metadata — which should make finding assembly errors a cinch. It could also be useful for quickly bringing up datasheets on relevant chips where necessary.
Some people like to do things the hard way. Maybe they drive a manual transmission, or they bust out the wire wrap tool instead of a soldering iron, or they code in assembly to stay close to the machine. Doing things the hard way certainly has its merits, and we are not here to argue about that. Scott Shawcroft — project lead for CircuitPython — on the other hand, makes a great case for doing things the easy way in his talk at the 2019 Hackaday Superconference.
In fact, he proved how easy it is right off the bat. There he stood at the podium, presenting in front of a room full of people, poised at an unfamiliar laptop with only the stock text editor. Yet with a single keystroke and a file save operation, Scott was able make the LEDs on his Adafruit Edge Badge — one of the other pieces of hackable hardware in the Supercon swag bag — go from off to battery-draining bright.
Last year’s Hackaday Superconference badge was an electronic tour de force, packing an ECP5 FPGA shoehorned into a Game Boy-like form factor and shipping with a RISC-V core installed that together gave an almost infinite badge hacking potential. It did not however run Linux, and that’s something [Greg Davill] has addressed, as he’s not only running Linux on his badge, but also a framebuffer that allows him to use the badge screen as the Linux terminal screen. Finally you can watch Linux boot on your Superconference badge itself, rather than over its serial port.
Now you can enjoy watching Linux boot while outside!! 😁
He’s achieved this by changing essentially everything: from the new VexRiscv CPU core, to new video drivers and a VGA terminal courtesy of Frank Buss, now part of the LiteVideo project. It’s not quite a fully fledged Linux powerhouse yet, but you can find it in a GitHub repository should you have a mind to try it yourself. Paging back through his Twitter feed reveals the effort he’s put into this work over the last few months, and shows that it’s been no easy task.
For those keeping score at home, this is an open hardware design, running an open CPU core, with community-designed open-source peripherals, compiled by an open-source toolchain, running an open-source operating system. And it’s simply a fantastic demo for the badge, showing off how flexible the entire system is. One of the best parts of writing for Hackaday is that our community is capable of a huge breadth of amazing pieces of work, and this is an exemplar of that energy. We can’t wait to see what Greg and any other readers tempted to try it will come up with.
For most people, a software defined radio is a device. An RTL-SDR dongle perhaps, or the HackRF that a popular multi-tool for working in the radio frequency realm. But as they explain, the SDR hardware can be considered merely as the analogue front end, being just the minimal analogue circuitry coupled with a digitiser. The real software-defined part comes — as you might expect — in the software
Kate and Mike introduce GNU Radio Companion — the graphical UI for GNU Radio — as their tool of choice and praise it’s use as a general purpose digital signal processing system whether or not that includes radio. Taking their own Great Scott Gadgets GreatFET One USB hackers toolkit peripheral as an input device they demonstrate this by analysing the output from a light sensor. Instantly they can analyse the mains frequency in a frequency-domain plot, and the pulse frequency of the LEDs. But their bag of tricks goes much deeper, exploring multiple “atypical use cases” that unlock a whole new world through creative digital signal processing (DSP).
Those of us who work with electronics will usually come to the art through a particular avenue that we master while imbibing what we need from those around it. For example, an interest in audio circuitry may branch into DSP and microcontrollers as projects become more complex. Some realms though retain an aura of impossibility, a reputation as a Dark Art, and chief among them for many people is radio frequency (RF). Radio circuitry is often surprisingly simple, yet that simplicity conceals a wealth of complexity because the medium does not behave in the orderly manner of a relatively static analogue voltage or a set of low-frequency logic levels.
Chris Gammell is a familiar face to many Hackaday readers for his mastery of much electronic trickery, so it comes as something of a surprise to find that RF has been one of the gaps in his knowledge. In his talk at the Hackaday Superconference he took us through his journey into RF work, and the result is a must-watch for anyone with a curiosity about radio circuitry who didn’t know where to start.
And finally, receiving the biggest applause was Linux-on-Badge: this team used all the badge hacking tricks in the book. The hardware component was a 32 MiB SDRAM cartridge by [Jacob Creedon]. The default badge SOC FPGA bitstream was entirely replaced in order to support a minimalist Linux. Much of the development was done on [Michael Welling]’s computer, guided by the precedence of a LiteX project putting Linux on the Radiona ULX3S. This is a true success story of Supercon collaboration as the team (including [Drew Fustini], [Tim Ansell], [Sean Cross], and many others) came together and worked late into nights, drawing from the massive body of collective expertise of the community.
If you hadn’t noticed, we had a bit of an FPGA theme running at this year’s Superconference. Why? Because the open-source FPGA toolchain is ripening, and because many of the problems that hackers (and academics) are tackling these days have become complex enough to warrant using them. A case in point: David Williams is a university professor who just wanted to build a quadruped robotics project. Each leg has a complex set of motors, motor drivers, sensors, and other feedback mechanisms. Centralizing all of this data put real strains on the robot’s network, and with so many devices the microcontrollers were running out of GPIOs. This lead him to become, in his words, “FPGA-curious”.
If you’re looking for a gentle introduction to the state of the art in open-source FPGAs, this is your talk. David covers everything, from a bird’s eye view of hardware description languages, through the entire Yosys-based open-source toolchain, and even through to embedding soft-CPUs into the FPGA fabric. And that’s just the first 18 minutes. (Slides for your enjoyment, and you can watch the talk embedded below the break.)
The second half of the talk is more about his personal experience and advice based on the last year or so of his experience going from FPGA newbie to master of his own robot. He highlights the versatility of a soft-CPU in an FPGA versus a pre-baked microcontroller solution. With the microcontroller you get all of the peripherals built into the silicon, but with the FPGA you get to write your own peripherals. Want a 10-wire SPI-like bus? Just code it up. Your peripherals are as simple or complex as you need them to be.
On the hardware side, David touts the PMOD standard (a man after our own heart!) and points out the large ecology of PMOD-compatible devices out there. Going for a plug-in solution also means that your engineering job is reduced to building a carrier board that can seat the FPGA brainboard of your choosing and interface it with a bunch of PMODs. It’s hard to get much simpler than that.
We are big fans Hackaday Supercon and several of the OSH Park team will be attending again this year from November 15 – 17. Here’s some of what to look forward to:
Four weeks from today the Hackaday Superconference comes alive for the fifth year. From engineering in challenging environments to elevating the art form of electronics, here are nine more talks that will make this a year to remember.
In addition to the slate of speakers below there are three other announcements, plus workshops. Jeroen Domburg (aka Sprite_TM) is designing this year’s badge based around a beefy FPGA running a RISC-V core and using open source synthesis tools. We’ll have more on that soon, but if you just can’t wait, check out the expansion board spec he just published, and join the conference chat room for the inside track. Badge hacking is sure to be the liveliest we’ve ever seen.
Tickets are sold out but you can still get on the waiting list and hope that one becomes available. If you are holding onto one of these hot commodities but are unable to use it, please return your ticket so that we can get it to someone waiting with their fingers crossed.