RFM9x module held in an adapter board with flexipins

FlexyPins Might Help With Those Pesky Castellated Modules

[SolderParty] just announced FlexyPins (Twitter, alternative view) – bent springy clips that let you connect modules with castellated pins. With such clips, you can quickly connect and disconnect any castellated module, swapping them without soldering as you’re prototyping, testing things out, or pre-flashing modules before assembly. They’re reportedly gold-plated, and a pack of ~100 will set you back 6EUR, shipping not included.

Of course, this is basically “fancy pieces of wire”, purpose-shaped, gold-plated and, hopefully, made out of material that is springy enough and doesn’t snap easily after bending a few times. We’ve seen this concept used for prototyping before, with random pieces of wire doing a pretty good job of maintaining connectivity, but these clips bring it that much closer to production-grade. It also makes us wonder – just how hard it is to solder 30-40 of them into a circuit? Do they self-align enough with the footprints given, or do you have to hold them with tweezers at a peculiar angle as you solder them? Time will tell, of course.

Continue reading “FlexyPins Might Help With Those Pesky Castellated Modules”

An Off-Grid Makeshift Cell Network

When traveling into the wilderness with a group of people, it’s good to have a method of communications set up both for safety and practicality. In the past people often relied on radios like FRS, CB, or ham bands if they had licenses, but nowadays almost everyone has a built-in communications device in their pocket that’s ready to use. Rather than have all of his friends grab a CB to put in their vehicle for their adventures together, [Keegan] built an off-grid network which allows any Android phone to communicate with text even if a cell network isn’t available.

The communications system is built on the LoRa communications standard for increased range over other methods like WiFi using a SX1278 chip and an ESP8266. The hardware claims a 10 km radius using this method which is more than enough for [Keegan]’s needs. Actually connecting to the network is only half of the solution though; the devices will still need a method of communication. For that, a custom Android app was created which allows up to 8 devices to connect to the network and exchange text messages with each other similar to a group text message.

For off-grid adventures a solution like this is an elegant solution to a communications problem. It uses mostly existing hardware since everyone carries their own phones already, plus the LoRa standard means that even the ESP8266 base station and transmitter are using only a tiny bit of what is likely battery power. If you’re new to this wireless communications method, we recently featured a LoRa tutorial as well.

Belgian Railway Time For Your Home

Some of the 20th century’s most iconic design and typography came to us through public signage in the various national railways of Europe. Were you to think of a Modernist clock face for example, the chances are that the prototype for your image hangs somewhere in one of the continent’s great railway terminals. If you don’t fancy getting on a train to see your favourite public timepiece, then maybe [EBP Controller] has a treat for you, with a 3D-printed double-faced Belgian railway station clock.

Behind the scenes the mechanism is simpler than appearances might lead the observer to believe, with each set of hands driven through a single gear to a motor. Controlling it all is an ESP8266, which is able to synchronise the clock exactly to an NTP server. It appears at first sight to have an unnecessarily large quantity of motors, but considering that there are two faces each with three hands the six motors each have a use. So while the real thing might require a heist from the SNCB, at least modernist clock fans can now have their own.

ESP8266 Based WiFi Game Boy Cartridge Browses WikiPedia

[Sebastian Staacks] came across his old Game Boy and was wondering (as you do) what happened to recent attempts at getting a WiFi interface wedged into a standard cartridge. After a while the conclusion was that people had been scuppered by approaching the problem in a way that made it too hard. Obviously that meant it was necessary to follow through and build something, which is precisely what he did with his WiFi Game Boy Cartridge.

A trend lately has been to hook up a fast microcontroller to a bus, then move the whole interfacing shenanigans into software. This works fine in some circumstances, but for the GB interface, it’s not so easy. The GB is powered by the Sharp LR35902, running at a smidge over 4 MHz, but its machine cycle takes four clocks giving an instruction rate of only 1 MHz. The cartridge interface presents the raw CPU bus directly. This is both good and bad. It’s good, because it enables all kinds of expansion modules, like cameras, printers, and other custom peripherals, but it’s bad because the burden of interfacing with the CPU, at its full speed, lies squarely in the cartridge’s remit.

Rather than trying to hook this bus directly to a fast microcontroller, [Staacks] has taken a different approach; by decoding the address bus with discrete logic, it was easy to derive chip selects for an embedded ESP8266 as well as a socketed EEPROM. The clock for the former was also gated and sent into the ESP8266, generating an interrupt to wake it up. The EEPROM stores a simple application whose job is to present an OSD keyboard and send requests to Wikipedia, via the ESP8266 WiFi stack. The resulting text is then displayed on the 160×144 dot matrix display. The interrupt latency of the ESP8266 was mitigated by the application simply discarding the first data byte sent to it, and retrying the access. This way the ESP8266 could spend the majority of its time dealing with wireless duties, only pausing to swap a byte now-and-then with the application. A simple solution which appears to actually work! If you’re up for building one of these and writing your own applications, you can wander over to GitHub, clone yourself a copy and crack on!

We’ve seen a few attempts at doing this before, [davedarko] tried with this project, and if you search hackaday.io you’ll get loads of GB hacks to browse. Finally a recent twitter thread also points to another effort to do something similar with Wi-Fi, but development is still ongoing. We’ll check back later!

Continue reading “ESP8266 Based WiFi Game Boy Cartridge Browses WikiPedia”

A nixie tube next to a screenshot of a to-do list

Nixie Tube Indicator Tells You How Many Tasks You’ve Got Left To Do

For busy people, keeping track of all the tasks on your to-do list can be a daunting task in itself. Luckily there’s software to help you keep organized, but it’s always nice to have a physical artifact as well. Inspired by some beautiful nixie clock designs, [Bertrand Fan] decided to build a nixie indicator that tells him how many open items are on his to-do list, giving a shot of instant gratification as it counts down with each finished task.

The task-management part of this project is a on-line tool called Todoist. This program comes with a useful Web API that allows you to connect it your own software projects and exchange data. [Bert] wrote some code to extract the number of outstanding tasks from his to-do list and send it to an ESP8266 D1 Mini that drives the nixie tube. Mindful of the security implications of letting such a device connect directly to the internet, he set up a Mac Mini to act as a gateway, connecting to the ESP8266 through WiFi and to the Todoist servers through a VPN.

The little ESP board is sitting in a 3D-printed case, together with the nixie driver circuits and a socket to hold the tube. A ceramic tile glued to the front gives it a bit more of a sturdy, luxury feel to match the shiny glass and metal display device. The limitations of the nixie tube restrict the number of tasks indicated to nine, but we imagine this might actually be useful to help prevent [Bert] from overloading himself with too many tasks. After all, what’s the point of having this device if you can’t reach that satisfying “zero” at the end of the day?

Although nowadays nixie tubes are mostly associated with fancy clocks, we’ve seen them used in a variety of other uses, such as keeping track of 3D-printer filament, adding a display to a 1940s radio, or simply displaying nothing useful at all.

Continue reading “Nixie Tube Indicator Tells You How Many Tasks You’ve Got Left To Do”

Arduino Library Makes Digital Rain Like It’s 1999

There’s going to be a new Matrix movie in theaters next month, and you know what that means: we’re about to see a whole new generation get obsessed with the franchise’s iconic “Digital Rain” effect. Thanks to modern advertisement technology, expect to see lines of glittering text pouring down the displays of everything from billboards to gas pumps pretty soon.

Doesn’t get much easier than that.

For those of us who’ve just been looking for an excuse to break out the old Matrix screensavers, you might as well get a jump on things using this handy Arduino library for the ESP8266 and ESP32. Developed by [Eric Nam], it lets you start up a digital rainstorm on displays supported by the TFT_eSPI library as easily as running digitalRainAnim.loop().

You can even install the library through the Arduino IDE, just open the Library Manager and search for “Digital Rain” to get started. You’ve still got to hook the display up to your microcontroller, but come on, [Eric] can’t do it all for you.

Looking at the examples, it seems like various aspects of the animation like color and speed can be configured by initializing the library with different values. Unfortunately we’re not seeing much in the way of documentation for this project, but by comparing the different examples, you should be able to get the high points.

While our first choice would certainly be a wall of green alphanumeric LED displays, we can’t help but be impressed with how easy this project makes it to spin up your own little slice of the Matrix on the workbench.

Continue reading “Arduino Library Makes Digital Rain Like It’s 1999”

Liberating The ESP8266 From Its Development Board

While the ESP32 is clearly a superior piece of hardware, we think you’ll agree that the ESP8266 is just too useful not to have a dozen or so kicking around the parts bin at any given time. Cheap, easy to use, and just enough capabilities to bring your projects into the wonderful world of IoT. But if you really want to get the most out of it, you’ll eventually have to skip the development board and start working with the bare module itself.

It can be a scary transition, but luckily, [Ray] has collected some notes that should prove helpful for anyone looking use modules like the ESP-12F in their own custom PCBs. From different tips on making sure the power-hungry modules get enough juice, to cost cutting measures that help reduce the ancillary parts needed in your circuit design, it’s a worthwhile read for new and experienced ESP8266 wranglers alike.

An auto-reset circuit with the CH340C

For example, [Ray] talks a bit about using the infamous GPIO10 pin. This pin is on the rear of the ESP8266 module, and on many development boards, it isn’t even connected. That’s because its internally hooked up to the ESP8266’s SPI flash chip, and using it can cause problems if you’re not careful. But as explained in the blog post, as long as you make sure the flash mode is set to “dual IO” (DIO), then GPIO10 can be used just like any other free pin.

We also really liked the tip [Ray] shares at the end for making your boards more easily programmable. Sure you can leave an unpopulated header on the board, or fiddle with some pogo pin setup, but his edge connector approach is quite clever. Just slip the programmer on for the initial burn, and then after that you can update over the air.

There’s no denying how easy it is to throw something together with an ESP8266 development board, but we’ve covered so many incredible projects that have made use of the bare module’s diminutive dimensions that you’ll ultimately be missing out if you don’t cut out the middle-man.