iceRadio SDR


From the Hackaday blog:

Ice, Ice, Radio Uses FPGA

Building a software defined radio (SDR) involves many trades offs. But one of the most fundamental is should you use an FPGA or a CPU to do the processing. Of course, if you are piping data to a PC, the answer is probably a CPU. But if you are doing the whole system, it is a vexing choice.


The FPGA can handle lots of data all at one time but is somewhat more difficult to develop and modify. CPUs using software are flexible–especially for coding user interfaces, networking connections, and the like) but don’t always have enough horsepower to cope with signal processing tasks (and, yes, it depends on the CPU).

Screenshot from 2017-01-23 18-49-55.png

[Eric Brombaugh] sidestepped that trade off. He used a board with both an ARM processor and an ICE FPGA at the heart of his SDR design. He uses three custom boards: one is the CPU/FPGA board, another is a 10-bit converter that can sample at 40 MSPS (sufficient to decode to 20 MHz), and an I2S DAC to produce audio. Each board has its own page linked from the main project.Z


The iceRadio project page has additional details:

Design files and source code are available on GitHub:


iceRadio SDR

SKiDL: Script Your Circuits in Python

skidl_featured (1).png

SKiDL: Script Your Circuits in Python

SKiDL is very, very cool. It’s a bit of Python code that outputs a circuit netlist for KiCAD. Why is this cool? If you design a PCB in KiCAD, you go through three steps: draw the schematic, assign footprints to the symbolic parts, and then place them. The netlist ties all of these phases together […]

The source code is available on GitHub:

images11 xesscorp/skidl

SKiDL: Script Your Circuits in Python

Surface-Mount Edge Connectors

FacelessTech designed this small board to act as a surface-mount edge connector:

SMD edge connectors

So you want to joint two boards together, You decide to use through hole female and male 2.54 pitch headers. Normally you would use through hole than ether have a 90 degree headers or just bend them over. For years this is how I did it, I would have to make sure I made sure the holes were just the right distance from the edge of the board.

The KiCad design files are available on GitHub:


Surface-Mount Edge Connectors

Tiny SCSI Emulator

David Kuder designed a SCSI device emulator with a Teensy 3.5 & NCR 5380:


Tiny SCSI Emulator

SCSI target emulator based on the Teensy 3.5 (Kinetis MK64FX MCU) and classic NCR 5380 SCSI PHY. Supports multiple targets (Device IDs), LUNs, and device types. 3.2″ x 1.6″ footprint, optionally uses or provides bus termination power. 64×48 pixel OLED status display.


The design files and source code are available on BitBucket:

screenshot-at-2017-01-09-20-07-15 tinyscsiemulator

Tiny SCSI Emulator

Friday Hack Chat: KiCad with Wayne Stambaugh

KiCad is the premiere open source electronics design automation suite. It’s used by professionals and amateurs alike to design circuits and layout out printed circuit boards. In recent years we’ve seen some incredible features added to KiCad like an improved 3D viewer and push-and-shove routing. This Friday at 10 am PST, join in a Hack…

via Friday Hack Chat: KiCad EDA Suite with Wayne Stambaugh — Hackaday

Friday Hack Chat: KiCad with Wayne Stambaugh

Tiny CW Capacitive Touch Paddle

Edgar implemented capacitive touch sensing using an ATTiny4 to create a touch paddle for Morse code:

Tiny CW Capacitive Touch Paddle


Like many no-code operators, after being on the air for a while, I developed an interest and appreciation for Morse Code [..] I purchased a cheap paddle, but I found the clicking noise a little bit annoying.


The goal of this project was to create a single PCB with an ATTiny4 AVR, a battery, transistors and a 3.5mm connector jack. The paddle is designed to have exposed conductive material in order to read the capacitive touch.

The under 1kB binary code worked well and without error. This made me wonder how small I could make this code. After optimizing the code, I managed to shrink it to under 512 bytes.

Tiny CW Capacitive Touch Paddle