FPC1500 Review, a Rohde & Schwarz Spectrum Analyzer

An entry level spec an with VNA features

R&S FPC1500 Review

Everyone’s first piece of test equipment should be a multimeter. Next is probably a power supply with current limiting. For many engineers, the next step is an oscilloscope. At least those working on digital electronics. Even if you are not working with RF, do not overlook a spectrum analyzer. The Rohde & Schwarz FPC1500 is three instruments in one: a Spectrum Analyzer, RF Signal Source, and a Vector Network Analyzer. In this post, I combine an FPC1500 review with an introduction to these frequency domain tools.

tl;dr; I recommend buying the FPC1500.

Continue Reading »

IoT: Intelligent Outsourcing

How to delegate when producing an IoT product

Whether you are developing a WiFi-enabled coffee maker, a sensor to detect rainfall, or a livestock tracking drone, an IoT device will follow the same product development cycle.

IoT Design Flow

A common mistake that engineers will make is trying to own the development at each stage, at least up until “deliver.” Who can blame us? The idea of delegating any part of our new product introduction can be daunting. Delegating, or outsourcing can be a powerful tool. It allows you to focus on the elements of your process that only you can do. Let others handle the rest. If your core contribution is the machine learning algorithm, then focus your effort there. Spending time designing the enclosure, or negotiating with suppliers, or even laying out the printed circuit board is a waste. Let the people who excel in each of those areas apply their expertise to your product.

Production, or making, is the prominent point for outsourcing. It is common to work with a contract manufacturer to build your product. Some offer complete services that allow them to source your components, produce the product, package it, and drop ship it to your customer. This next statement might sound recursive, but consider outsourcing the step of finding someone to outsource manufacturing.

Let’s look at the Idea, Design, and Source stages for a typical IoT device. At each of these steps, I give some pointers to help identify what you should focus on and what you can delegate to a third-party, as well as, introduce you to a partner to consider.

Continue Reading »

I have been soldering circuits for twenty-six years. Well, except for the last 6 weeks. I have had a Weller Zero Smog EL fume extraction unit in my lab. It has changed the way I solder. When I first used it, I thought “yes, this is nice. But not a necessity.” Then the other day I didn’t feel like moving the extractor to my secondary workbench. I was immediately irritated with myself for being lazy. The smoke was so annoying. I don’t know what else changed me so quickly.

The unit under test is the Weller Zero Smog EL Fume Extraction Kit. They sent it to me in partnership with element14 as a Roadtest review. (My previous review was on the 10 MHz Picoscope.)

Read Full Review on element14

Appearance:Weller Zero Smog EL Review on element14

DIY Arduino PCB Pryamiduino (Video)

Addohms video on making a KiCad Triangle.

Pyramiduino KiCad PCB Desgin

Continuing the DIY Arduino tutorial series, this AddOhms episode shows how to create a PCB in KiCad. I make a joke that the original design was a rectangle, which I found boring and pointless. So instead, I designed a triangle to give the board 3 points. Get it? Puns! I am calling it the Pryamiduino. To be honest, I found not having a constraint to be a problem. By forcing a specific board size and shape, many decisions were more manageable.

boring rectangular arduino nano clone

First design – Boring!

In the end, the video ended up more edited than I planned. KiCad is just so finicky and crashy that I could not make a coherent start to finish tutorial. At least, I could not work with a board at this level of complexity. Something simple like a 555 flasher would be easier to show from start to finish. I am planning some immediate follow-ups with quick tips on using KiCad. It is a frustrating suite of applications, but the results can be quite nice.

AddOhms Pyramiduino Show Notes

Continue Reading »

Debug SONOFF AC Relay with a Thermal Camera

Find the problem without a live measurement


My recent SONOFF WiFi Switch experience reminded me of something from high school. I attended an off-site electronics class with my best friend. As teenage boys, we were prone to doing stupid things. One of our favorite games was to see who could handle the highest voltage. Our bench had a variable AC supply that went from 0 to 120 volts. So we would grab the alligator clips while the other person slowly turned the knob up. John once made it to 50 volts. I seem to recall my tolerance around 30 volts. First, DO NOT do this. It was stupid. Second, I think this game is why handling AC makes me so uncomfortable.

While I am not an electrician, I do know the basics about wiring mains AC circuits. So when one of my studio lights needed a new switch, I was okay to replace it. Mains AC does not scare me when it is off. I did not have a mechanical switch available. Instead, I opted for a SONOFF WiFi Switch. I did not intend to connect WiFi, at least not yet. I just wanted to control the light with the manual push button.

The clever solution seemed to be clever, at least for a few minutes. Suddenly the light turned off. I thought maybe there was a timeout for the manual button. Annoying, but workable. The lamp remained off for about another 2 minutes when I started to smell that unmistakeable burning plastic odor. Touching the case of the SONOFF identified the culprit immediately.

Great. So I have an AC mains switch that isn’t working, but I do not want to go poking my multimeter into it. What do I do?

Turns out, that SONOFF module was defective. I wanted to debug it, but I did not want to measure anything while connected to AC. Here’s how I used a thermal camera to debug my SONOFF.

What is a SONOFF?

SONOFF Board Backside 1600px

See the ESP8266 and Antenna?

The SONOFF WiFi switch is an inexpensive AC relay. Internally it has an ESP12 chip, which became popular with the ESP8266. There is even an unpopulatd serial header which can be used to reflash the firmware. Among hackers, these modules are a popular way to get an AC relay that is easily programmed.

Continue Reading »

Circuit Python adds Python to Microcontrollers

Add rapid prototyping to your rapid prototyping board with Circuit Python or MicroPython

CircuitPython Matrix

Back in 2013, a Kickstarter ran for a project to put a python interpreter on a microcontroller. At the time I could not see the benefit. Cool project, but I asked myself: “why?” On my last Adafruit order, I received a free Circuit Playground Express. The board comes with CircuitPython pre-installed. After playing with Circuit Python, or CP, I finally “get it.”

For Valentine’s Day, I made an animated LED heart for a new love in my life, Circuit Python. Well, love is a bit of a strong word. The past couple of weeks I have been learning Circuit Python, and I am excited by what it offers.

What is Circuit Python?

It is a Python implementation that runs on microcontrollers. The code exists on the microcontroller as text. The interpreter runs the code from that text file. Circuit Python is built on, or based on, MicroPython. Adafruit is designing it to teach programming. It is easy to get started, just open up the code.py file from the auto-mounted drive and start typing. When you hit save, the code runs. That’s it.

Continue Reading »

Hologram.io connects Adafruit FONA

Send MQTT over cellular to an IoT Dashboard

adafruint fona hologram mqtt

While the buzzword “IoT “is relatively new, there has been a long time “internet of things” in operation. Those devices are called the far less sexy term “M2M” or machine-to-machine. These devices, around since the 90s, contain a microprocessor, some sensors, sometimes electromechanical hardware, and a cellular radio. These M2M devices were (and still are!) the early “Internet of Things.” Thanks to Hologram.io, you can join this new/old trend for free.

I decided it was time to up my IoT game with a GPRS, or 2G, data radio. In this post, I show the hardware I am using to create a 2G-based GPS tracker. It includes a Teensy 3.2 (Arduino) connected to a SIM808 Module (FONA) using a Hologram.io Developer SIM. It transmits GPS coordinates to an Adafruit.io Dashboard, which displays them on a map.

This post is not going to be a tidy tutorial. Instead, it is all the steps (and notes) I went through. I will cover:

  1. Hardware pieces I am using
  2. How to verify SIM808 (FONA) module is connected through Hologram via Serial Commands
  3. How to send HTTP/POST requests (including SSL) with the SIM808 (FONA)
  4. My (brute force) changes to the Adafruit FONA Library
  5. Code for sending MQTT payload (GPS Coords) to a dafruit.io dashboard

When done, you will be able to build something like a battery powered GPS Tracker, that updates over cellular. If you are in a rush, grab all the code from the FONA GPS Tracker Github Project.

Continue Reading »

Signetics Write Only Memory 25120 Datasheet


Signetics 25120 Page 1-torn

Signetics started as an IC manufacturer. In 1975 they were bought by Philips Semiconductors, which is now NXP. Interestingly the address in the datasheet, I think, was the original site. Today, it’s home to a Lowe’s Home Improvement Store. According to this Wikipedia article, it was created by John “Jack” Curtis. Apparently, it was included in a real Signetics catalog as a joke! Imagine that happening today. Additional information about the joke is available on sigwom.com. (Which may be written by Jack himself, not entirely sure.)

Download Signetics 25120 WOM Datasheet


When it is time to move away from delay(), it’s time to learn how to properly use millis(). If you’ve had trouble following my millis() examples, maybe a live tutorial will help.

In this AddOhms Livestream, I go through 4 code examples:

1. Blink, the one with delay(), as a starting point.

2. Blink Without Delay, line by line, what is it doing

3. PWM Fading without delay() (and with buttons)

4. Binary counter that uses buttons to speed up and slow down.

Appearance:Live millis() tutorial: AddOhms Live #5
Outlet:AddOhms Voideo Tutorials

Adafruit Feather Review and Selection Guide

Project with a battery? Consider these handy boards.

Adafruit Feather Banner

Four days ago, I found out I needed to make a piece of a costume. The idea was to combine a TFT LCD with a microcontroller and Bluetooth Low Energy. I checked my microcontroller bin and found some Adafruit Feather Boards. In this post, I will introduce the feather family and provide a decision chart for choosing the right one for your project.

The Feather board have a standard footprint and pinout. Most(All?) have a USB connector, a microcontroller, two rows of pins, and a battery charger. They measure 50.80 by 22.86 mm, which is 2.0 by 0.9 inches.

Continue Reading »