Recently I received three packages from Elegoo Industries. They are a company based in Shenzhen China. Before those packages, I noticed there name several times on various electronics kits on Amazon. They asked me if I’d help them with a video that shows how to assemble their latest creation: Penguin Bot.
There is not much point in sharing that video with you unless you’ve purchased one. So instead, here is my review, or hands-on, of the kit. I will, however, show you a short Instagram video I made to show off Penguin Bot’s cuteness
Learning to use a new oscilloscope can be daunting. In this video, I show 5 measurements you can make using just an Arduino as your DUT. Learn how to offset voltage, setup measurements, enable infinite persistence, save reference waveforms, AND trigger (and decode) serial signals. For this video, Rohde & Schwarz was kind enough to send me an RTM3004. This video is a follow-up from an ealier blog post which featured 6 scope measurements you can make with an Arduino.
Making tutorial videos and project videos is a very different process. It is very easy to script a tutorial. In fact, I think it is a necessary step. Project videos, on the other hand, are more organic. In this project, I build a capacitive activated coin bank, based on this Coin Acceptor from Adafruit. It uses an MSP430 to do capacitive sensing and then a Pryamiduino to control the rest of the electronics. In the end, I do some classic AddOhms special effects to demonstrate how the project works. For detailed notes and design files, hit the button below for the element14 project page.
In this post, I briefly touch on the difference between an FPGA and a microcontroller. Then I walk you around the MKR Vidor 4000’s board. Using one of the examples, I talk a bit about how the various chips communicate with each other. This section also highlights what makes the Arduino FPGA board different from other development boards. Lastly, I answer “should you buy an Arduino MKR Vidor 4000?”
Continue Reading »
As promised, the Arduino team shipped the MKR 4000 VIDOR by the end of July. The graphical editor is still missing in action, but you can check out the board now. I received mine. In this AddOhms Live Stream, I turned it on and checked it out.
This video is a “working” live stream. Generally, I try to set up some demos and run through some canned actions. Not this time. I used the board once, on another computer. You get to watch how I attack a new board…live! Warts and all.
Key things I check out:
How do you program the FPGA? (what does that even mean for the VIDOR.)
The VidorTestSketch (communicate between the SAMD21 and the Cyclone FPGA)
LogoDraw (the VIDOR draws the Arduino logo over HDMI)
The include files for each of the VIDOR libraries
I’m writing up my experience so far, along with what I’ve learned. Until then, click below to see the 1-hour live stream.
This AddOhms episode is part 3 of the “design your own Arduino” series. In this one I populate a bare PCB, reflow solder it, debug a few issues, and load the Uno bootloader. Originally, I designed 2 versions of the board. One version contained an error that I planned to fix in the episode. Well, turns out, the “correct” board had two issues which were more interesting.
Check out the #27 show notes for links to a bunch of stuff in the episode, including the design files.
While the Arduino library does an excellent job of hiding some of C/C++’s warts, at the end of the day, it is still just C/C++. This fact causes a few non-intuitive issues for inexperienced programmers. When it looks like Arduino math is wrong, it is probably one of these reasons.
When people ask me for help with their programming, I check each of these Arduino math mistakes. If your code seems to be hitting a bug, check to make sure it is not how the compiler handles math.
Funny how a simple idea can spider out into multiple paths. Arduino EEPROM seemed like a straightforward concept. A few a years ago it was as easy as having either 512 or 1024 bytes of flash memory. The Arduino IDE offered an EEPROM library which let you read and write a single byte. Today, however, with many different processor architectures saving data to EEPROM varies. It is now possible to save any datatype to EEPROM but not on all boards and not all using the same method.
While programming an coin accepter sold by Adafruit on an AddOhms live stream, I discovered two “new” methods in the Arduino library. At least, these functions are new to me! A couple of years ago EEPROM.get() and EEPROM.put() appeared. Using these functions, you can store any datatype in EEPROM.
This post covers tidgets related to using Arduino EEPROM to store any value across multiple boards, or platforms. Specifically boards such as the Uno, Nano, Mega, and Zero are covered. Additionally Arduino-compatible boards from Espressif, PRJC, and Adafruit are covered as well.
One of the best ways to learn how to use a new piece of test equipment is to use it. Sounds easy, right? The problem is, sometimes when you are in the middle of troubleshooting your circuit, figuring out what the knobs on your scope do is an immense frustration. Use these 6 oscilloscope measurements, and just an Arduino Uno, to learn how to use a new or unfamiliar digital scope.
This tutorial is not a step-by-step guide on how to make each of these measurements on a particular scope. Instead, it is a general explanation on how to setup the Arduino and a screenshot to help identify if you set up your scope correctly. I reference the R&S RTM3004. However, practically any two (or more) digital channel oscilloscope should work.
Between each measurement, I highly recommend using your scope’s default setup (or autoscale) before proceeding to the next one!