DIY Six Channel Arduino RC Transmitter

It’s wasn’t so long ago that RC transmitters, at least ones worth owning, were expensive pieces of gear. Even more recently than that, the idea of an RC transmitter running an open source firmware would have been considered a pipe dream. Yet today buying cheap imported transmitters and flashing a community developed firmware (if it didn’t come with it pre-installed to begin with) is common place. It’s not much of a stretch to say we’re currently in the “Golden Age” of hobby RC transmitters.

But what if even cheap hardware running customizable software isn’t enough? What if you want to take it to the next level? In that case, [Electronoobs] has an Arduino powered RC transmitter with your name on it. But this is no scrap of protoboard with a couple of cheap joysticks on it, though he has made one of those too. The goal of this build was for it to look and perform as professional as possible while remaining within the hobbyist’s capabilities. The final product probably won’t be winning any design awards, but it’s still an impressive demonstration of what the individual hacker and maker can pull off today with the incredible technology we have access to.

So what goes into this homebrew radio control system? Inside the back panel [Electronoobs] mounted the batteries, charging module, and the voltage regulator which steps the battery voltage down to the 3.3 V required to drive the rest of the transmitter’s electronics. On the flip side there’s an Arduino Nano, an NRF24 module, and an OLED display. Finally we have an assortment of switches, buttons, potentiometers, and two very nice looking JH-D202X-R2 joysticks for user input.

As you might have guessed, building your own transmitter means building your own receiver as well. Unfortunately you won’t be able to bind your existing RC vehicles to this radio, but since the receiver side is no more complicated than another Arduino Nano and NRF24 module, it shouldn’t be hard to adapt them if you were so inclined.

Low-cost consumer RC transmitters can be something of a mixed bag. There are some surprisingly decent options out there, but it’s not a huge surprise that hackers are interested in just spinning up their own versions either.
Continue reading “DIY Six Channel Arduino RC Transmitter”

Custom Calculator Rolls D20 So You Don’t Have To

There are a number of sticking points that can keep new players away from complex tabletop games such as Dungeons & Dragons. Some people are intimidated by the math involved, and of course others just can’t find enough friends who are willing to sit down and play D&D with them in 2019. While this gadget created by [Caleb Everett] won’t help you get more open minded friends, it will take some of the mental gymnastics out of adding up dice rolls.

In its current form the device saves you from the hassle of not only having to roll various combinations of physical dice, but adding up all the faces after the fact as well. In the future [Caleb] plans on adding more advanced software features which will allow for tricks not possible with real dice, such as increasing the likelihood of rolling numbers which haven’t been seen in awhile. Now that the hardware is put together, he’s free to dig into the software side of things and really get creative.

Inside the 3D printed case of his calculator there’s a Adafruit Feather M0 Express, a 128 x 32 OLED display, and a 2200 mAh lithium ion battery that lets him go mobile. The keys, which are Cherry MX clones, are wired directly to the digital pins of the Feather board as [Caleb] found that easier to wrap his head around than doing a matrix. This ended up working out as he had enough pins, but does stifle future expansion a bit.

Even if you aren’t into the sort of tabletop gaming which would benefit from an automatic dice roller and tabulator, we think [Caleb] has come up with a very neat form factor for similar pocket sized gadgets. It reminds us of the Handlink from Quantum Leap; before the prop department swapped it out for a jumble of gummy bears later on in the series, anyway. Since he’s shared the link to the OnShape project, you can even tweak the design a bit without having to suffer through modifying the STLs.

Many of the electronic dice we’ve seen in the past have tried to emulate the size and appearance of traditional dice, so it’s interesting to see this approach which goes in the opposite direction entirely. Critics might say that at some point you’d be better off just using a software application for your smartphone, but we’re not in the business of complaining when people produce interesting pieces of hardware.

Multiple OLEDs? Save Pins By Sharing the I2C Clock

Inexpensive OLED displays with I2C interfaces abound, but there is a catch: they tend to be stuck on I2C address 0x3C. Some have a jumper or solder pads to select an alternate (usually 0x3D), but they lack any other method. Since an I2C bus expects every device to have a unique address, this limits the number of displays per bus to one (or two, at best.) That is all still true, but what [Larry Bank] discovered is a way to get multiple OLED displays working with considerably fewer microcontroller pins than usually needed.

While bit-banging I2C to host one display per bus on the same microcontroller, an idea occurred to him. The I2C start signal requires both clock (SCL) and data (SDA) to be brought low together, but what would happen if the displays shared a single clock line? To be clear, each OLED would — logically speaking — still be on its own I2C bus with its own data line, but they would share a clock signal. Would a shared clock cause attached devices to activate unintentionally?

A quick test consisting of four OLED displays (all with address 0x3C) showed that it was indeed possible to address each display with no interference if they shared a clock. Those four individually controlled displays needed only five I/O lines (four SDA, one shared SCL) instead of eight. The Multi_OLED library is available on GitHub, and in case it is useful for devices other than OLED displays, bit-banged I2C with support for shared clock lines is available separately.

There’s more to do with OLEDs than get clever with signals: check out these slick number-change animations, and that even looks to be a project that could benefit from a few saved GPIO pins, since it uses one small display per digit.

A Coin Cell Powers This Tiny ESP32 Dev Board

Just for the challenge, just for fun, just for bragging rights, and just to do a little showing off – all perfectly valid reasons to take on a project. It seems like one or more of those are behind this tiny ESP32 board that’s barely larger than the coin cell that powers it.

From the video below, [Mike Rankin] has been working down the scale in terms of powering and sizing his ESP32 builds. He recently completed a project with an ESP32 Pico D4 and an OLED display that fits exactly on an AA battery holder, which he populated with a rechargeable 14550. Not satisfied with that form factor, he designed another board, this time barely larger than the LIR2450 rechargeable coin cell in its battery holder. In addition to the Pico D4, the board sports a USB charging and programming socket, a low drop-out (LDO) voltage regulator, an accelerometer, a tiny RGB LED, and a 96×16 OLED display. Rather than claim real estate for switches, [Mike] chose to add a pair of pads to the back of the board and use them as capacitive touch sensors. We found that bit very clever.

Sadly, the board doesn’t do much – yet – but that doesn’t mean we’re not impressed. And [Mike]’s no stranger to miniaturization projects, of course; last year’s Open Hardware Summit badge was his brainchild.

Continue reading “A Coin Cell Powers This Tiny ESP32 Dev Board”

Many Uses For A Single Button

When building projects with a simple goal in mind, it’s not unheard of for us to add more and more switches, buttons, and complexity as the project goes through its initial prototyping stages. Feature creep like this tends to result in a tangled mess rather than a usable project. With enough focus, though, it’s possible to recognize when it’s happening and keep to the original plans. On the other hand, this single-button project with more than one use seems to be the opposite of feature creep. (YouTube, embedded below.)

[Danko]’s project has one goal: be as useful as possible while only using a single button and a tiny screen. Right now the small handheld device can be used as a stopwatch, a counter, and can even play a rudimentary version of flappy bird. It uses an Arduino Pro Mini, a 64×48 OLED screen running on I2C, and has a miniscule 100 mAh 3.7V battery to power everything. The video is worth watching if you’ve never worked with this small of a screen before, too.

Getting three functions out of a device with only one button is a pretty impressive feat, and if you can think of any other ways of getting more usefulness out of something like this be sure to leave it in the comments below. [Danko] is no stranger to simple projects with tiny screens, either. We recently featured his homebrew Arduino calculator that uses an even smaller screen.

Continue reading “Many Uses For A Single Button”

An Arduino Wrapped In An OLED Wrapped Inside An Enigma Pocket Watch

A pocket watch, tucked into a waistcoat pocket and trailing a long chain, is a retro-hip accessory. A pocket watch gutted of its mechanical innards and updated as a smart appliance might be a horological abomination, but would still be a cool hack. A pocket watch converted to a digital Enigma machine is in a class all by itself.

[Simon] admits that he has a thing for pocket timepieces, having a sizable collection of old and not-so-old watches, some that even serve for everyday carry. Trouble is, they eventually break, and qualified watchmakers are getting hard to come by. So refitting defunct watches has become a hobby for him, and this example is a doozy. It uses an Enigma emulator running on an Arduino, similar to one that he stuffed into a somewhat oversized wristwatch a few years ago. Fitting it into a pocket watch case required a bit of finagling, including a 0.5-mm thick main PCB that flexes a bit to fit the contours of the case. A small OLED screen peeks through the front bezel, which is done up in an attractive black crinkle finish with brass buttons for a nice retro look. There’s even an acid-etched brass badge on the front cover with his special logo, complete with a profile of the original Enigma rotors.

Very impressive workmanship, and we don’t even care that it doesn’t tell time. Need a little background on the original Enigma? [Steve Dufresne] did a great job going through the basics a while back.

Continue reading “An Arduino Wrapped In An OLED Wrapped Inside An Enigma Pocket Watch”

ESP8266 Wi-Fi Instant Camera is a Simple Shooter

If a camera that combines the immediate gratification of a Polaroid with cloud hosting sounds like something that tickles your fancy, look no farther than this ESP-powered point and shoot camera created by [Martin Fasani]. There’s no screen or complicated configuration on this camera; just press the button and the raw picture pops up on the online gallery. Somehow it’s simultaneously one of the most simplistic and complex implementations of the classic “instant camera” concept, and we love it.

The electronics in the camera itself, which [Martin] calls the FS2, is quite simple. At the core, it’s nothing more than the ESP board, an ArduCAM camera module, and a momentary button for the shutter. To make it portable he added a 2000 mAh Li-ion battery and an Adafruit Micro Micro USB charger. [Martin] added support for an optional 128×64 OLED display for user feedback. Everything is housed in a relatively spacious 3D printed enclosure, leaving some room for possible future hardware.

There are firmware versions for both the ESP8266 and ESP32, so fans of either generation of the popular microcontroller are invited to the party. Processing images is obviously a bit faster if you go with the more powerful 32-bit chip, but on the flip side the ESP8266 uses 3MB of SPI flash as a local buffer for the images during upload, which helps prevent lost images if there’s a problem pushing them to the cloud. The camera is intended to be as simple as possible so right now the only option other than taking still images is a time-lapse mode. [Martin] hopes to implement some additional filters and effects in the future. He’s also hoping others might lend a hand with his firmware. He’s specifically looking for assistance getting autofocus working and implementing more robust error correction for image uploads.

We’ve seen some impressive DIY camera builds using everything from a salvaged thermal sensor to film and molten aluminum. But the quaint simplicity of what [Martin] has put together here really puts his project in a whole new category.

Continue reading “ESP8266 Wi-Fi Instant Camera is a Simple Shooter”