Mains Clocking A Microcontroller

[Lujji] is playing around with the STM8 microcontroller. In reviewing the official documentation for this chip, he read the external clock can be a sine wave, a triangle wave, or a square wave with a 50% duty cycle. The minimum CPU frequency is 0 Hz. [Lujji] doesn’t have a signal generator, and presumably, he’s all out of crystals. He does have mains AC, though, so why not clock a microcontroller with wall power?

Using mains power as a frequency standard is a concept a hundred years old. Synchronous motors turn at a rate proportional to the mains frequency, and this has been used in clocks for decades. If you’re really clever, you can clock digital circuits with mains AC, but we’ve never seen someone replace a tiny crystal in a microcontroller circuit with mains power.

After an experiment to prove the concept, [Lujji] went on to construct a circuit that wasn’t as dumb as connecting the microcontroller directly to a wall socket. The direct approach didn’t work that well anyway — the STM8 didn’t like low frequency clocks with slow edges. [Lujji] needed a clock with cleaner edges, and a 555 configured as a comparator fit the bill.

The completed circuit sends mains power through an optocoupler to drive a 555 configured as a comparator. The output is a clean 50Hz clock that is connected to the OSCIN pin on an STM8. This is now a chip running at 50Hz, and yes, it works. [Lujji] set up a circuit to write ‘Hello World’ on an old Nokia LCD. That took about three minutes. It works, though, even though it’s completely useless. Maybe this can be applied to some novel timekeeping similar to that one-instruction-per-day clock we looked earlier in the year.

Hacking on the Weirdest ESP Module

Sometimes I see a component that’s bizarre enough that I buy it just to see if I can actually do something with it. That’s the case with today’s example, the ESP-14. At first glance, you’d ask yourself what AI Thinker, the maker of many of the more popular ESP8266 modules, was thinking.

The ESP-14 takes the phenomenally powerful ESP8266 chip and buries it underneath one of the cheapest microcontrollers around: the 8-bit STM8S003 “value line” chip. Almost all of the pins of the ESP chip are locked inside the RF cage’s metal tomb — only the power, bootloader, and serial TX/RX pins see the light of day, and the TX/RX pins are shared with the STM8S. The rest of the module’s pins are dedicated to the STM8S. Slaving the ESP8266 to an STM8S is like taking a Ferrari and wrapping it inside a VW Beetle.

I had never touched an STM8 chip before, and just wanted to see what I could do with this strange beast. In the end, ironically, I ended up doing something that wouldn’t be too far out of place on Alibaba, but with a few very Hackaday twists: a monitor for our washer and dryer that reports power usage over MQTT, programmed in Forth with a transparent WiFi serial bridge into the chip for interactive debugging without schlepping down into the basement. Everything’s open, tweakable, and the Forth implementation for the STM8S was even developed here on Hackaday.io.

It’s a weird project for the weirdest of ESP modules. I thought I’d walk you through it and see if it sparks you to come up with any alternative uses for the ESP8266-and-STM8S odd couple that is the ESP-14.

Continue reading “Hacking on the Weirdest ESP Module”

Tripping Out: A Field Guide to Circuit Protection

My introduction to circuit protection came at the tender age of eight. Being a curious lad with an inventive – and apparently self-destructive – bent, I decided to make my mother a lamp. I put a hose clamp around the base of a small light bulb, stripped the insulation off an old extension cord, and jammed both ends of the wires under the clamp. When I plugged my invention into an outlet in the den, I saw the insulation flash off the cord just before the whole house went dark. Somehow the circuit breaker on the branch circuit failed and I tripped the main breaker on a 200 amp panel. My mother has never been anywhere near as impressed with this feat as I was, especially now that I know a little bit more about how electricity works and how close to I came to being a Darwin Award laureate.

To help you avoid a similar fate, I’d like to take you on a trip (tee-hee!) through the typical household power panel and look at some of the devices that stand at the ready every day, waiting for a chance to save us from ourselves. As a North American, I’ll be focusing on the residential power system standards most common around here. And although there is a lot of technology that’s designed to keep you safe as a last resort, the electricity in your wall can still kill you. Don’t become casual with mains current!

Continue reading “Tripping Out: A Field Guide to Circuit Protection”

Upcycle An Isolation Transformer

There are several reasons you should have an isolation transformer. They can prevent ground loops and also prevent a device under test from having a DC path to ground (or isolate an oscilloscope from DC ground, which can be dangerous in its own right, but that’s another discussion). [Tanner_tech] noticed that finding ballast transformers for sodium vapor street lights is getting easier as more street lights move to LED technology. What to do with these transformers? Build an isolation transformer, of course.

Of course, your dumpster transformer might be a little different than the one shown in the post (and the video, below). [Tanner] shows how to work out the leads you need. A little wood work and a PC power supply case finished the project.

Judging from the comments, some people take [Tanner’s] talk about safety as an implication that a transformer makes working on mains safe. It doesn’t. It makes it safer if you know what you are doing. Working with high voltage isn’t a place to learn by doing.

If you want some practical advice, [Jenny List] has a good read for you. You probably also ought to invest an hour in watching this video that has a lot of practical advice.

Continue reading “Upcycle An Isolation Transformer”

EPROM Timer

[glitch] had a cheap EPROM eraser with very few features. Actually, that might be giving it too much credit: it’s barely more than a UV light that turns on when it’s plugged in and turns off when it’s plugged out unplugged. Of course it would be nice to implement some safety features, so he decided he’d hook it up to a software-controlled power outlet.

Of course, controlling a relay that’s wired to mains is old hat around here, and in fact, we’ve covered [glitch]’s optoisolated mains switch already. He’s gone a little beyond the normal mains relay project with this one, though. Rather than use a microcontroller to run the relay, [glitch] wrote a simple Ruby script on his computer to turn the EPROM eraser on for the precise amount of time that is required to erase the memory.The Ruby script drives the relay control directly over a USB to serial adapter’s RTS handshake pin.

[glitch]’s hack reminds us that if you just need a quick couple bits of slow output, a USB-serial converter might be just the ticket. You could imagine driving everything from standard lamps to your 3D printer’s bed heater (provided you use similar hardware), but it’s especially helpful for [glitch] who claims to forget to turn off the eraser when it’s done its job, which leaves a potentially dangerous UV source just lying about. It’s always a good idea to add safety features to a dangerous piece of equipment!

Controlling Mains Power Rube Goldberg Style

[g3gg0] has some nice radio equipment including an AOR AR-5000 receiver and a HiQ SDR. They are so nice that it appears they lack an on/off switch. [g3gg0] grew tired of unplugging the things, and decided to nerdify his desk with a switch that would turn his setup on and off for him. He decided to accomplish this task by emulating the Scroll, Number and Caps Lock LEDs on his keyboard via a Digispark board. He uses the LEDs to issue commands to the Digispark allowing him to control a 5V relay, which sits between it and the AC.

Starting off with some USB keyboard emulation code on the Digispark, he tweaked it so he could use the Scroll Lock LED as sort of a Chip Select. Once this is pressed, he can use the Caps Lock and the Number Lock LED to issue commands to the Digispark.

It’s programmed to only stay on for a total of 5 hours in case he forgets to turn it off. Let us know what you think about this interesting approach.

Non-Invasive Smart Electricity Meter

There are a lot of ways to measure energy usage in the home, but most of them involve handling mains voltage. Not only that, but sometimes they require handling mains voltage before it gets through a breaker panel or fuse box, meaning that if you make a mistake there are a lot of bad things that can happen. [Yonas] has been working on this problem, and has come up with a non-invasive, safer way to monitor electricity consumption without having to work directly on live wires.

Please note that you should still not be working on mains voltage without proper training, but if you have the required know-how then the installation should be pretty straightforward. The project is based on the Spark Core, and uses clamp-on current sensors to measure energy use. The sensors wrap around the mains cable, meaning you don’t have to disconnect anything to hook them up. The backend runs on a LAMP server which could be a Raspberry Pi if you have one. [Yonas] runs it on a hosted server as a matter of preference.

All of the source code for this is available, and assuming you can get your hands on the current sensors this could be a great way to get started monitoring your energy usage in the house. Be sure to check out the video below for a demonstration of the operation of this device. Of course, if you have a gas line you’ll need this energy monitoring setup too.

Continue reading “Non-Invasive Smart Electricity Meter”