PCB design: connecting with Eagle

[Eagle vs KiCad part 4] In the last post in my Eagle vs KiCad series I’d got as far as using Eagle to place all the components for the HexMonitor project in a schematic. Now it’s time to join them together. Even before I begin, something tells me that perhaps this is too ambitious a project for my very first PCB…. Read more »

The perils of antistatic foam

      No Comments on The perils of antistatic foam

Not all foam is created equal. Let me explain. When you buy integrated circuits (ICs, or chips, if you prefer) they’ll sometimes be delivered with their cute little legs stuffed into black foam. That’s because many chips, and particularly CMOS-based ones, are rather sensitive to static electricity. If a static potential builds up between the legs (and if, like me,… Read more »

Altair-Duino – the low-cost Altair 8800

I’ve wanted an Altair 8800 for a long time now. It’s not that you can do much with it. But it is such an important part of computing history. Famously, the January 1975 edition of Popular Electronics featured the Altair 8800. Or rather, it featured a non-working prototype. The first working machine had gone missing in the post. The magazine… Read more »

Memory update

      No Comments on Memory update

A while back I wrote (here and here) about how I’d bought some old Russian memory. It’s a single memory plane from a Saratov-2 (Саратов-2), a Soviet-era Russian clone of the PDP-8 built in the 1960s. Well, I’ve finally given it the home it deserves. I’ve mounted the memory inside a deep frame and put a ribbon of LEDs around the… Read more »

PCB design: modifying a part with Eagle

[Eagle vs KiCad part 3] In the last post, I’d got as far as putting all the parts for my HexMonitor project into the schematic, albeit without actually connecting them. There was a good reason for that: while I (somewhat surprisingly) found the connector part I needed in Eagle’s default libraries, it wasn’t labelled the way I wanted. This was… Read more »

PCB design: first steps with Eagle

[Eagle vs KiCad part 2] Okay, so it’s time to start on the road of deciding whether I want to design PCBs in Eagle or KiCad. I’ve already talked about this a little, but here’s where I’m at. My natural inclination is towards KiCad. It’s open and it has none of the restrictions of the free version of Eagle (and… Read more »

Mechanical keyboards: Matias Mini Tactile Pro

Some mechanical keyboard enthusiasts talk about the ‘end game’ – finally reaching the perfect combination of layout, switches and key caps. Others say you never get there – that there is always another keycap set to buy, always another switch you haven’t tried, always a layout you hadn’t considered. I don’t care about any of that crap. I just want… Read more »

Apt-get and the curse of IPv6

      1 Comment on Apt-get and the curse of IPv6

Well that’s two hours of my life I’m never getting back. You know how sometimes you try to do a simple five-minute job and the damn thing just snowballs…? Well that was today. First a quick summary so you know what this is about – I was having problems with apt-get stalling when trying to use it on a Raspberry… Read more »

ESP8266 and MicroPython: first scripts

So I have MicroPython installed on an Adafruit Huzzah ESP8266 dev board. The next step is to get it to run something. MicroPython establishes a basic filesystem using the board’s flash memory. This is handy for storing configuration and data files. And it supports a directory structure. But there are two files in particular you need to get to grips… Read more »

Initial steps: MicroPython on ESP8266

Some time ago I witnessed people getting all kinds of excited about ESP8266 devices. Worth checking out, I thought, and promptly ordered about five boards – specifically the ESP8266 Huzzah boards from Adafruit. They’re not the cheapest, but with Adafruit you always know you’re getting quality and it has features like level-shifted (ie, 5V safe) RX pin and 3V3 output…. Read more »

AVR: Battling bizarre bugs

      1 Comment on AVR: Battling bizarre bugs

Do you ever get the feeling that a compiler is acting weird just to mess with your head? That’s how it felt yesterday. I was tinkering with the code for my HexMonitor. This uses an ATMEGA328P microcontroller to read values in from an eight-bit data bus or a 16-bit address bus (selectable via a switch) and display them on a… Read more »

Eagle vs KiCad: first thoughts

      No Comments on Eagle vs KiCad: first thoughts

[Eagle vs KiCad part 1] There’s a tough decision awaiting anyone who, like me, is about to get into designing their own printed circuit boards (PCBs) – what software to use. An Electronic Design Automation (EDA) package is pretty much essential for any serious PCB work, and quite a lot of non-serious work too (which is where I come in)…. Read more »

Debugging AVR ATMEGA code with Atmel Studio and ICE

One of the more challenging aspects of writing code for microcontrollers is not being able to liberally sprinkle your code with PRINT statements to show the state of variables and whatnot at particular moments. If you’re working with Arduino-type devices you can always fire up the Serial library and print stuff that way – back down the wire to a… Read more »

The joy of the scope

      No Comments on The joy of the scope

Most of the books about electronics for beginners in my library say something like this in the first chapter: ‘you don’t need an oscilloscope’. Yes you do. Well, maybe need isn’t the right word. Yes, you can laboriously chart voltage levels from a capacitor by measuring at regular intervals with a multimeter (at least two of the books have you do… Read more »

Fault finding: the aha! moment

      No Comments on Fault finding: the aha! moment

Well, maybe not so much aha! More like FFS. Weird as it sounds, debugging errors is one of the things I enjoy about both coding and electronics. I’m an amateur in both fields and waste little time on planning my projects. I prefer just to delve right in. Rather than sketch out a circuit first, for example, I just get… Read more »