KiCad Action Plugins

The last two years has been a particularly exciting time for KiCad, for users, casual contributors, and for the core developers too. Even so, there are many cool new features that are still in process. One bottleneck with open-source development of complex tools like KiCad is the limited amount of time that developers can devote for the project. Action plugins stand to both reduce developer load and increase the pace of development by making it easier to add your own functionality to the already extensible tool.

Sometime around version 4.0.7 (correct us if we’re wrong), it was decided to introduce “action plugins” for KiCad, with the intention that the larger community of contributors can add features that were not on the immediate road map or the core developers were not working on. The plugin system is a framework for extending the capabilities of KiCad using shared libraries. If you’re interested in creating action plugins, check out documentation at KiCad Plugin System and Python Plugin Development for Pcbnew. Then head over to this forum post for a roundup of Tutorials on python scripting in pcbnew, and figure out how to Register a python plugin inside pcbnew Tools menu. Continue reading “KiCad Action Plugins”

A Newbie Takes The SMD Challenge At Supercon

First-time visitors to Disneyworld often naively think they’re going to “do” the park in three days: one day for the Magic Kingdom, one day for Epcot, and one day for everything else. It’s easy to spot such people, collapsed on a bench or dragging exhausted kids around while trying to make their way to the next must-see attraction. Supercon is something like that — a Disney-esque theme park for hackers that will exhaust you if you don’t have a plan, and if you don’t set reasonable expectations. Which is why I was glad that I set only one real goal for my first Supercon: take the SMD Soldering Challenge.

Now, while I’m pretty handy with a soldering iron, I was under no illusion that I would be at all competitive. All my soldering experience has been with through-hole components, and while I also used to doing some production soldering on fine-pitch connectors, the whole surface-mount thing is new to me. I entered mainly because I wanted to see what was possible coming in raw. At best I’d learn what my limits are, and at worst I’d fail spectacularly and provide grist for a “Fail of the Supercon” post. It’s a win either way.

Continue reading “A Newbie Takes The SMD Challenge At Supercon”

Optical Keyboards Have Us Examining Typing At Light Speed-ish

There’s a newish development in the world of keyboards; the optical switch. It’s been around for a couple years in desktop keyboards, and recently became available on a laptop keyboard as well. These are not replacements for your standard $7 keyboard with rubber membrane switches intended for puttering around on your raspberry pi. Their goal is the gamer market.

The question, though, is are these the equivalent of Monster Cables for audiophiles: overpriced status symbols? Betteridge would be proud; the short answer is that no, there is a legitimate advantage, and for certain types of use, it makes a lot of sense.

Continue reading “Optical Keyboards Have Us Examining Typing At Light Speed-ish”

FieldKit Is The Grand Prize Winner Of The 2019 Hackaday Prize

FieldKit, an open-source, modular sensor system for conducting research in harsh environments has just been named the Grand Prize winner of the 2019 Hackaday Prize. The award for claiming the top place and title of “Best Product” in this nine-month global engineering initiative is $125,000. Five other top winners and five honorable mentions were also named during this evening’s Hackaday Prize Ceremony, held during the Hackaday Superconference in Pasadena, California.

This year’s Hackaday Prize focused on product development. From one good idea and a working prototype, entrants were encouraged to iterate on their UX, industrial design, ergonomics, software, and mechanical plans as they worked toward a product that is both manufacturable and meets the needs of the user it has been designed for. Out of twenty finalists, the top eleven are covered below. Over $200,000 in cash prizes have been distributed as part of this year’s initiative where thousands of hardware hackers, makers, and artists compete to build a better future. Continue reading “FieldKit Is The Grand Prize Winner Of The 2019 Hackaday Prize”

Behind The Scenes Of The 2019 Superconference Badge

If you count yourself among the several hundred of our closest friends that have joined us at Supplyframe HQ for the 2019 Hackaday Superconference, then by now you’ll have your hands on one of this year’s incredible FPGA badges. It should come as no surprise that an incredible amount of time and effort went into developing and manufacturing this exceptionally unique piece of hardware; the slick gadget in your hands today took nearly an entire year to develop, and work continued on it until very literally the last possible moment.

Badge designer Jeroen Domburg (aka Sprite_TM), Hackaday staff, and a team of dedicated volunteers were still putting the final touches on these ambitious devices less than 24 hours before they were distributed to the first wave of Superconference attendees. Naturally, that’s not exactly how things were supposed to go. But when you’ve got a group of people that want to push the envelope and build something truly incredible, convincing them to actually stop working can be a challenge in itself.

In fact, development of the badge is still ongoing. Fixes and improvements are being made to the software even as you read this, and if you haven’t already, you should upgrade your badge to make sure you’ve got the latest and greatest from our international team of wizards. We all know that conference badges have an unfortunate habit of languishing on the shelf and collecting dust, but the 2019 Superconference badge was built to challenge you for longer than just one weekend. Consider yourself warned: for every Supercon badge that gets tossed in a drawer come Monday, Sprite_TM will shed a single tear.

After the break, come along as we turn back the clock and take a look at the last minute dash to get 500+ badges programmed and ready to go before the doors opened for the 2019 Hackaday Superconference.

Continue reading “Behind The Scenes Of The 2019 Superconference Badge”

DSP Spreadsheet: IQ Diagrams

In previous installments of DSP Spreadsheet, we’ve looked at generating signals, mixing them, and filtering them. If you start trying to work with DSP, though, you’ll find a topic that always rears its head: IQ signals. It turns out, these aren’t as hard as they appear at first and, as usual, we’ll tackle them in a spreadsheet.

What does IQ stand for? The I stands for “in phase” and the Q stands for quadrature. By convention, the I signal is a cosine wave and the Q signal is a sine wave. Another way to say that is that the I and Q signals are 90 degrees out of phase. By manipulating the amplitude of I and Q, you can create complex modulation or, conversely, demodulate signals. We’ll see a spreadsheet that shows that completely next time.

Continue reading “DSP Spreadsheet: IQ Diagrams”

This Week In Security: Fuzzing Fixes, Foul Fonts, TPM Timing Attacks, And More!

An issue was discovered in libarchive through Google’s ClusterFuzz project. Libarchive is a compression and decompression library, widely used in utilities. The issue here is how the library recovers from a malformed archive. Hitting an invalid header causes the memory in use to be freed. The problem is that it’s possible for file processing to continue even after that working memory has been freed, leading to all kinds of problems. So far an actual exploit hasn’t been revealed, but it’s likely that one is possible. The problem was fixed back in May, but the issue was just announced to give time for that update to percolate down to users.

Of note is the fact that this issue was found through Google’s fuzzing efforts. Google runs the oss-fuzz project, which automatically ingests nightly builds from around 200 open source projects and runs ClusterFuzz against them. This process of throwing random data at programs and functions has revealed over 14,000 bugs.
Continue reading “This Week In Security: Fuzzing Fixes, Foul Fonts, TPM Timing Attacks, And More!”