Arduino announced several new products at the 2018 Bay Area Maker Faire. One of those products is the Uno WiFi Rev 2. (Check out this post for an introduction to the MKR Vidor 4000, an FPGA-based board. You can read their official announcement here. This new Uno board represents a significant upgrade for the 8-bit family of Arduino boards. However, I do have a few reservations.
Arduino Uno WiFi Rev 2
Starting off, I am not happy with the name. It is too long. For that reason, I am going to keep using the full name in this post to demonstrate why I don’t like it. Another reason I’m grumpy it that new microprocessor makes it incompatible with 328p code. That said,sketches (and libraries) using only the Arduino library will (likely) work fine. Anything that uses registers, like direct port manipulation, will have issues. Just like moving to any other architecture supported by the IDE. However, because it has the name “Uno,” many users will be tripped up by incompatibilities.
Keeping the name “Uno” was only there for marketing reasons. The form factor is the traditional Arduino Uno style. Which begs the question, can we retire that massive USB connector yet?
Arduino announced several new products at the 2018 Bay Area Maker Faire. One of those products is the MKR Vidor 4000, an FPGA-based board. You can read their official announcement here. (Over here is a write-up on the new Uno WiFi Rev 2.) The goal of the MKR Vidor is to make FPGA accessible to makers and innovators. It represents a new shift in hardware focus for the Arduino team.
An FPGA is a Field Programmable Gate Array. In other words, it is reconfigurable hardware. Unlike a microcontroller, an FPGA is not running software. Instead, its gate array changes configurations for a specific task.
The example I like to think about is a rotary encoder. You might find one on the spindle of a motor. As the motor spins, an IR sensor detects slits in the encoder to track speed and direction. In a microcontroller based system, you might use an interrupt to monitor the IR sensor. Even though interrupts can respond quickly, there is still a chance of missing a pulse. Plus, the rest of the microcontroller has to wait while the interrupt is handled. In an FPGA, however, you would build a hardware counter with the pulse driving the counter’s clock input. This counting happens independently of whatever else the FPGA is doing.
Continue Reading »
Common question that comes up about pull-up resistors: what value do you pick and why not just use a piece of wire? In this follow-up electronics tutorial, the bald engineer looks at how to pick a pull-up resistor value. Note that while focused on pull-up everything said in this video would apply to pull-down as well.
Unless you have a BNC or SMA connector your board, you will need a probe to get signals into an oscilloscope. Understanding what kind of oscilloscope probes are out there, which ones should you have for your scope and which ones to use for different measurements can be daunting. In this post, I look at some common scope probe types and offer some suggested measurements for each.
This post is not a comprehensive guide of oscilloscope probes. I am covering the types I have used. I do think this information should be enough to least form questions to ask your vendor before purchasing. Asking questions is important. If you have never bought specialized oscilloscope probes, you might not realize they can cost more than the scope itself. Maybe not an individual probe, but get one for each channel, and the cost rises. So picking the correct probe type is essential.
Continue Reading »
Autodesk released EAGLE 9. This new version continues the improvement that Autodesk has been providing since acquiring the infamous ECAD tool. There are three areas I look at in this AddOhms Livestream.
How I looked at EAGLE 9
In the beginning, I use an old training class I wrote about five years ago when I was using EAGLE daily. It shows how to design a 555 flashing circuit from schematic to PCB. A follow-on class taught how to mill the PCB on a Shopbot. I might update the course and release it if I have time. The exercise class helps me find some surprises with EAGLE’s incremental improvements.
After that, I check out three new features. I also looked at the “Design Blocks” stuff which is a way to incorporate completed schematics like the Adafruit PowerBoost circuit. I need to come back and look at that function again later. Also, I am not positive, but I think that feature was introduced before 9.
1. Quick Routing
The quick routing reminds of the old “follow me” option. You can select individual airwires, entire nets, or multiple signals to route interactively. Unlike the Autorouter, which routes the board as the whole. In the video, I build a simple 555-based PCB. I couldn’t try out routing multiple signals, like address and data for DDR memory. The value I see most from this feature is selectively routing your critical signals and then quick routing the remaining non-critical nets.
2. Device Manager
This informational window provides a clean break-down of many pieces of data. Need to know what layers a footprint use? How about the length of an entire net? In the video, I show that you can use this feature to verify all of your passive components have the same package style. The information is all there, Device Manager brings it to your attention.
Spoiler Alert: I really like the Breakout Feature. (For those that say I don’t smile in videos, I did this time.) Long story short, this is a shortcut to expand all of the pins for an IC. A great example is in the AddOhms Pyramiduino DIY PCB episode. In the beginning, you can see my time lapse as I break out each of the GPIO pins. That can happen in EAGLE now with a single click.
Check it out
Have you had a chance to check out EAGLE 9 yet? If so, what are your thoughts?
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.
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.
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.
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.
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.
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?
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.