Friday Hack Chat: The State Of KiCad

KiCad is twenty-five years old — like most PCB design software — and right now it’s the best Open Source tool to lay out your circuits, plop down a few resistors, and create a PCB from scratch. Over the last few years, a lot of people have been turning to KiCad to design some very impressive boards, something no doubt related to the fact that KiCad is free in both the beer and speech senses.

Join us this Friday for Hack Chat, we’re talking all about KiCad. If you have grievances or praise to heave onto the developers, this is the place to do it. Our guest for this week’s Hack Chat will be Wayne Stambaugh, project lead for KiCad. Among other things, Wayne is responsible for leading the KiCad product roadmap and he’s also one of the authors of the CvPcb Reference Manual

During this Hack Chat, we’ll discuss current and future features in everyone’s favorite Open Source EDA suite. This is a great chance to make suggestions and put forth wish list items. Wondering if KiCad is pronounced ‘Kai-CAD’ or ‘Key-CAD’? It’s the latter, but don’t let that stop you from asking Wayne to change that.

Items up for discussion include:

  • The new features on the 2018 roadmap
  • What’s happened in KiCad since the last KiCad Hack Chat
  • What goes on under the hood, and why should you never trust the autorouter?
  • Where do you turn when you’re just starting out in KiCad?

If you have something you’d like to ask the KiCad devs, make sure to add it to our discussion sheet. To do that, just leave a comment on the Hack Chat Event Page.

join-hack-chat

Our Hack Chats are live community events on the Hackaday.io Hack Chat group messaging. This Hack Chat is going down Friday, January 5th at noon, Pacific time. Time Zones got you down? Here’s a handy countdown timer!

Click that speech bubble to the left, and you’ll be taken directly to the Hack Chat group on Hackaday.io.

You don’t have to wait until Friday; join whenever you want and you can see what the community is talking about.

Exporting Eagle Libraries To FOSS Tools

Since Autodesk’s acquisition, Eagle has been making waves in the community. The de facto standard for Open Hardware PCB design is now getting push-and-shove routing, a button that flips the board over to the back (genius!), integration with Fusion360, automated 3D renderings of components, and a bunch of other neat tools. However, Eagle is not without its warts, and there is a desire to port those innumerable Eagle board layouts and libraries to other PCB design packages. This tool does just that.

The tool is an extension of pcb-rnd, a FOSS tool for circuit board editing, and this update massively extends support for Eagle boards and libraries. As an example, [VK5HSE] loaded up an Eagle .brd file of a transceiver, selected a pin header, and exported that component to a KiCad library. It worked the first time. For another experiment, the ever popular TV-B-Gone .brd file was exported directly to pcb-rnd. This is a mostly complete solution for Eagle to KiCad, Eagle to Autotrax, and Eagle to gEDA PCB, with a few minimal caveats relating to copper pours and silkscreen — nothing that can’t be dealt with if you’re not mindlessly using the tool.

While it must be noted that most Open Hardware projects fit inside a 80 cm2 board area, and can therefore be opened and modified with the free-to-use version of Autodesk’s Eagle, this is a very capable tool to turn Eagle boards and libraries into designs that can be built with FOSS tools.

Thanks [Erich] for the tip.

Prototyping, Making A Board For, And Coding An ARM Neural Net Robot

[Sean Hodgins]’s calls his three-part video series an Arduino Neural Network Robot but we’d rather call it an enjoyable series on prototyping, designing a board with surface mount parts, assembling it, and oh yeah, putting a neural network on it, all the while offering plenty of useful tips.

In part one, prototype and design, he starts us out with a prototype using a breadboard. The final robot isn’t on an Arduino, but instead is on a custom-made board built around an ARM Cortex-M0+ processor. However, for the prototype, he uses a SparkFun SAM21 Arduino-sized board, a Pololu DRV8835 dual motor driver board, four photoresistors, two motors, a battery, and sundry other parts.

Once he’s proven the prototype works, he creates the schematic for his custom board. Rather than start from scratch, he goes to SparkFun’s and Pololu’s websites for the schematics of their boards and incorporates those into his design. From there he talks about how and why he starts out in a CAD program, then moves on to KiCad where he talks about his approach to layout.

Part two is about soldering and assembly, from how he sorts the components while still in their shipping packages, to tips on doing the reflow in a toaster oven, and fixing bridges and parts that aren’t on all their pads, including the microprocessor.

In Part three he writes the code. The robot’s objective is simple, run away from the light. He first tests the photoresistors without the motors and then writes a procedural program to make the robot afraid of the light, this time with the motors. Finally, he writes the neural network code, but not before first giving a decent explanation of how the neural network works. He admits that you don’t really need a neural network to make the robot run away from the light. But from his comparisons of the robot running using the procedural approach and then the neural network approach, we think the neural network one responds better to what would be the in-between cases for the procedural approach. Admittedly, it could be that a better procedural version could be written, but having the neural network saved him the trouble and he’s shown us a lot that can be reused from the effort.

In case you want to replicate this, [Sean]’s provided a GitHub page with BOM, code and so on. Check out all three parts below, or watch just the parts that interest you.

Continue reading “Prototyping, Making A Board For, And Coding An ARM Neural Net Robot”

Push Buttons, Create Music With A MIDI Fighter

Musicians have an array of electronic tools at their disposal to help make music these days. Some of these are instruments in and of themselves, and [Wai Lun] — inspired by the likes of Choke and Shawn Wasabi — built himself a midi fighter

Midi fighters are programmable instruments where each button can be either a note, sound byte, effect, or anything else which can be triggered by a button. [Lun]’s is controlled by an ATmega32u4 running Arduino libraries — flashed to be recognized as a Leonardo — and is compatible with a number of music production programs. He opted for anodized aluminum PCBs to eliminate flex when plugging away and give the device a more refined look. Check it out in action after the break!

Continue reading “Push Buttons, Create Music With A MIDI Fighter”

Hackaday Prize Entry: Retrofit A Nokia

The Nokia 3210 is the greatest cell phone ever made. The battery lasted for days, custom color covers were available at every mall kiosk, it had the Snake game, and the chassis for this phone was finely crafted out of the crust of neutron stars. It was indestructible; it is the reason we now appreciate technology over more impermanent concepts like relationships and love.

For his Hackaday Prize entry, [Bastian] is bringing the Nokia 3210 into this century. He’s designing a circuit board with the same footprint, the same button layout, and a better screen that drops right into the lovely plastic enclosure of the 3210.

Also known as, ‘a fun time’

The current BOM for the upgraded 3210 includes an STM32 F7 microcontroller, which is more or less the current top of the line ARM micro you can get. For wireless, [Bastian] is using an A7 GSM/GPRS module and an ESP8266 for a little bit of WiFi. For a dumbphone, this is ludicrously overpowered. Provided [Bastian] gets a prototype up and running, there will be some interesting applications for a device this powerful in a package this indestructible.

One of the things [Bastian] has been butting his head against with this project is KiCad. Microvias don’t work like they should in KiCad — they’re restricted to the outer layers only. This is a problem for routing a complex board like this, so [Bastian] wrote a patch that gives KiCad an ‘I know what I’m doing mode’ for microvias everywhere.

This is truly the spirit of The Hackaday Prize: not only is [Bastian] building something ridiculous, he’s also creating the tools to do it.

Open Source High Power EV Motor Controller

For anyone with interest in electric vehicles, especially drives and control systems for EV’s, the Endless-Sphere forum is the place to frequent. It’s full of some amazing projects covering electric skateboards to cars and everything in between. [Marcos Chaparro] recently posted details of his controller project — the VESC-controller, an open source controller capable of driving motors up to 200 hp.

[Marcos]’s controller is a fork of the VESC by [Benjamin Vedder] who has an almost cult following among the forum for “creating something that all DIY electric skateboard builders have been longing for, an open source, highly programmable, high voltage, reliable speed controller to use in DIY eboard projects”. We’ve covered several VESC projects here at Hackaday.

While [Vedder]’s controller is aimed at low power applications such as skate board motors, [Marcos]’s version amps it up several notches. It uses 600 V 600 A IGBT modules and 460 A current sensors capable of powering BLDC motors up to 150 kW. Since the control logic is seperated from the gate drivers and IGBT’s, it’s possible to adapt it for high power applications. All design files are available on the Github repository. The feature list of this amazing build is so long, it’s best to head over to the forum to check out the nitty-gritty details. And [Marcos] is already thinking about removing all the analog sensing in favour of using voltage and current sensors with digital outputs for the next revision. He reckons using a FPGA plus flash memory can replace a big chunk of the analog parts from the bill of materials. This would eliminate tolerance, drift and noise issues associated with the analog parts.

[Marcos] is also working on refining a reference design for a power interface board that includes gate drivers, power mosfets, DC link and differential voltage/current sensing. Design files for this interface board are available from his GitHub repo too. According to [Marcos], with better sensors and a beefier power stage, the same control board should work for motors in excess of 500 hp. Check out the video after the break showing the VESC-controller being put through its paces for an initial trial.

Continue reading “Open Source High Power EV Motor Controller”

How To Build Your Own Google AIY Without The Kit

Google’s voice assistant has been around for a while now and when Amazon released its Alexa API and ported the PaaS Cloud code to the Raspberry Pi 2 it was just a matter of time before everyone else jumped on the fast train to maker kingdom. Google just did it in style.

Few know that the Google Assistant API for the Raspberry Pi 3 has been out there for some time now but when they decided to give away a free kit with the May 2017 issues of MagPi magazine, they made an impression on everyone. Unfortunately the world has more makers and hackers and the number of copies of the magazine are limited.

In this writeup, I layout the DIY version of the AIY kit for everyone else who wants to talk to a cardboard box. I take a closer look at the free kit, take it apart, put it together and replace it with DIY magic. To make things more convenient, I also designed an enclosure that you can 3D print to complete the kit. Lets get started.

Continue reading “How To Build Your Own Google AIY Without The Kit”