Nail, Meet KiCad

You know the old saying. When all you have open is KiCad, everything looks like a PCB. That was certainly true for [Evan], who needed to replace a small part recently and turned to PCBs to get the job done.

The part in question was a sheered apart detent cam from a retractable cord reel. Glue and epoxy might have worked, and [Evan] was worried about how a 3D printed PLA part would have held up. The part is an extruded 2D shape, making PCBs a non-traditional but viable choice. Using the old scanner trick, he traced the outline in KiCad 7 (which adds image references). Then with the five boards stacked up, solid core wire, solder, and a propane torch worth of heat fused it. Ultimately, this machine’s tolerances are generous, so it worked wonderfully.

Was it the “right” tool for the job? Right or wrong, it is hard to argue that in terms of durability and ease per dollar, this doesn’t come out on top. PCB files are on GitHub if you have a 5020TF-4c retractable cord reel that needs a new cam. PCBs have a fun way of adopting different use cases like enclosures, but perhaps the idea of PCBs as a mechanical part could be applied elsewhere.

Importing EAGLE Projects Into KiCad 7, And How To Fix Them

Migrating a PCB design from one CAD software package to another is no one’s favorite task. It almost never works cleanly. Often there are missing schematic symbols, scrambled PCB footprints, and plenty of other problems. Thankfully [shabaz] shows how to import EAGLE projects into KiCad 7 and fix the most common problems one is likely to encounter in the process. Frankly, the information couldn’t come at a better time.

This is very timely now that EAGLE has gone the way of the dodo. CadSoft EAGLE used to be a big shot when it came to PCB design for small organizations or individual designers, but six years after being purchased by Autodesk they are no more. KiCad 7 is a staggeringly capable open-source software package containing some fantastic features for beginner and advanced designers alike.

Of course, these kinds of tutorials tend to be perishable because software changes over time. So if you’re staring down a migration from EAGLE to KiCad and could use some guidance, there’s no better time than the present. [shabaz]’s video showing the process is embedded below.

Thanks to [problemchild68] for the tip!

Continue reading “Importing EAGLE Projects Into KiCad 7, And How To Fix Them”

Hackaday Links Column Banner

Hackaday Links: April 16, 2023

The dystopian future you’ve been expecting is here now, at least if you live in New York City, which unveiled a trio of technology solutions to the city’s crime woes this week. Surprisingly, the least terrifying one is “DigiDog,” which seems to be more or less an off-the-shelf Spot robot from Boston Dynamics. DigiDog’s job is to de-escalate hostage negotiation situations, and unarmed though it may be, we suspect that the mission will fail spectacularly if either the hostage or hostage-taker has seen Black Mirror. Also likely to terrify the public is the totally-not-a-Dalek-looking K5 Autonomous Security Robot, which is apparently already wandering around Times Square using AI and other buzzwords to snitch on people. And finally, there’s StarChase, which is based on an AR-15 lower receiver and shoots GPS trackers that stick to cars so they can be tracked remotely. We’re not sure about that last one either; besides the fact that it looks like a grenade launcher, the GPS tracker isn’t exactly covert. Plus it’s only attached with adhesive, so it seems easy enough to pop it off the target vehicle and throw it in a sewer, or even attach it to another car.

Continue reading “Hackaday Links: April 16, 2023”

Kicad Autorouting Made Easy

One of the most laborious tasks in PCB layout is the routing. Autorouting isn’t always perfect, but it is nice to have the option, even if you only use it to get started and then hand-tune the resulting board. Unfortunately, recent versions of Kicad have dropped support for autorouting. You can, however, still use Freerouting and the video from [Mr. T] below shows you how to get started.

There are three ways to get the autorouting support. You can install Java and a plugin, you can isntall using a ZIP file, or you can simply export a Specctra DSN file and use Freerouting as a standalone program. Then you import the output DSN file, and you are done.

Continue reading “Kicad Autorouting Made Easy”

Physics-Controlled Component Auto-Placer

[Jarrett] recently stumbled upon a class of drawing algorithms called force-directed graphs, which artificially apply forces to the elements. The final graph is then generated by applying the laws of physics and letting the system reach equilibrium. This can often result in a pleasing presentation of things like mind maps and other diagrams without having to hand-place everything. He realized that this approach almost mimics the way he places components when doing a PCB layout. Out of curiosity or intense boredom, we’re not sure which, he decided to implement this in a tool that interacts with KiCad ( see animated GIF below the break ).

He has to ignore certain nets such as power and ground rails, because they distort the result. This simulation treats the nets as springs, and the center of each footprint behaves a charged particle. [Jarrett] added a twist, literally, to the usual implementations — each net pulls on its pin, not the part center, and therefore the chips will both rotate and be pushed around as the system stabilizes.

The results are sometimes quite striking. Useful? Dubious, but maybe!

The project code is up on GitHub, but is very experimental and he is unlikely to carry it further. Among the missing features, the Python code must be tweaked for each different netlist files and other parameters, and there is no way to feed the result back into KiCad. But this is enough for [Jarrett], who only set out to see if the concept was possible. The code is available if anyone wants to try their hand at taking this to the next level.

Continue reading “Physics-Controlled Component Auto-Placer”

Screenshot of KiCad 7 feature that lets you overlay a PCB bitmap image and draw traces over it, being used for board reverse-engineering purposes

KiCad 7.0.0 Is Here, Brings Trove Of Improvements

Yesterday, the KiCad team has released KiCad 7.0.0 – a surprise for those of us who have only gotten used to the wonders of KiCad 6, and it’s undoubtedly a welcome one! Some of these features, you might’ve seen mentioned in the KiCad 2022 end-of-year recap, and now, we get to play with them in a more stable configuration. There’s a trove of features and fixes for all levels of KiCad users, beginners, hobbyists and professionals alike – let’s start with some that everyone can appreciate! Continue reading “KiCad 7.0.0 Is Here, Brings Trove Of Improvements”

Create Your RTL Simulations With KiCAD

[Bob Alexander] is in the process of designing a homebrew discrete TTL CPU, and wanted a way to enter schematics for digital simulations via a Verilog RTL flow. Since KiCAD is pretty good at handling hierarchical schematics, why not use that? [Bob] created a KiCAD plugin, KiCadVerilog allowing one to instantiate and wire up the circuits under consideration, and then throw the resulting Verilog file at your logic simulator of choice.

KiCadVerilog doesn’t do all the hard work though, as it only provides the structure and the wiring of the circuit. The actual guts of each TTL instance needs to be provided, and a reference to it is manually added to the schematic object fields. That’s a one-time deal, as you can re-use the component library once generated. Since TTL logic has been around for a little while, locating a suitable Verilog library for this is easy. Here’s ice-chips-verilog by [TimRudy] on GitHub for starters. It’s intended as a collection for Icestudio (which is also worth a look). Still, the Verilog code for many TTL series devices is presented ready for the taking, complete with individual test benches in case you need them.

Check out the project GitHub page for the module source code, and some more documentation about the design process.

We’ve seen many RTL hacks over the years, here’s an interesting way to generate a PCB layout with discrete logic, direct from the RTL.