A Deep Dive On Battery Life

There are all kinds of old wives’ tales surrounding proper battery use floating around in the popular culture. Things like needing to fully discharge a battery every so often, unplugging devices when they’re fully charged, or keeping batteries in the fridge are all examples that have some kernel of truth to them but often are improperly applied. If you really want to know the truth about a specific battery, its behavior, and its features, it helps to dig in and actually take some measurements directly like [Tyler] has done with a vast array of embedded batteries in IoT devices.

[Tyler] is a firmware engineer by trade, so he is deeply familiar with this type of small battery. Battery performance can change dramatically under all kinds of scenarios, most important among them being temperature. But even the same type of battery can behave differently to others that are otherwise identical, which is why it’s important to have metrics for the batteries themselves and be able to measure them to identify behaviors and possible problems. [Tyler] has a system of best practices in place for monitoring battery performance, especially after things like firmware upgrades since small software changes can often have a decent impact on battery performance.

While working with huge fleets of devices, [Tyler] outlines plenty of methods for working with batteries, deploying them, and making sure they’re working well for customers. A lot of it is extremely useful for other engineers looking to develop large-scale products like this but it’s also good knowledge to have for those of us rolling out our own one-off projects that will operate under battery power. After all, not caring for one’s lithium batteries can have disastrous consequences.

When Your Smart Light Switches Stop Working, Build Your Own

If you want smart light switches in your house, you can buy from any one of hundreds of manufacturers. [Brian Boyle] had kitted out his home with TP Link devices, but after a few years of use, he found they all suddenly failed within a few months of each other. Decrying the state of things, he set about building his own instead.

[Brian]’s switches use the ESP32 for its handy in-built WiFi hardware. His aim was to produce smart switches that would fit neatly into standard “Decor” style switch boxes. The design uses two PCBs. One is charged with handling the mains power side of things. It carries an SPDT relay for switching AC power, and a DC power supply to run the ESP32 itself. The controller board holds the microcontroller, a Neopixel as a status indicator, and a pair of buttons — one for switching the lights on and off, the other for resetting to default settings. The physical housing is 3D printed, and looks great with the glowing status indicator in the middle of the switch.

[Brian]’s switches are triggerable via MQTT, a web interface, and the physical button onboard the device itself. Having built the devices on his own, he’ll be well-placed to troubleshoot any usability or reliability issues that crop up in the future. That’s a lot more than we can say about most smart devices on the market!

Internet Of Washing Machines Solves An Annoyance

[Laurence Tratt]’s washing machine blew up, so he sprung for a brand new model with all the bells and whistles. Of course, these days, that means it has an Internet connection and an API. While we’re not quite convinced our washing machine actually needs such a thing, at least [Laurence] is making the most of it by creating an interface to the washer’s API that provides a handy countdown on the computer.

Honestly, there was one other option. The washer’s phone app — that sounds funny when you say it out loud — will notify you when the clothes are done. But it doesn’t provide a countdown, and it seems to regularly log you off, which means you don’t get the notifications anymore. You can see the minimal interface in the video below.

The exact combination of curl, jq, and pizauth probably won’t help you unless you have the same washer. On the other hand, it is a good example of how to hit some alien API and work out the details. Any API that uses OAuth2 and JSON won’t look too different. Speaking of OAuth2, that’s the purpose of the pizauth program — which, it turns out, [Laurence] is the author of.

Of course, you can refit an old washing machine to do this, too. We are more likely to steal the machine’s motor than to want to talk to it but to each their own!

Continue reading “Internet Of Washing Machines Solves An Annoyance”

A cat skull enclosed in a domed security camera enclosure with green LEDs illuminating the eye sockets, sitting on a table with other skulls and rocks.

Cat Skull For Internet Connection Divination

[Emily Velasco] has an internet provider that provides sub-par connectivity. Instead of repeatedly refreshing a browser tab to test if the network is up, [Emily] decided to create an internet status monitor by embedding indicator lights in a cat skull…for some reason.

The electronics are straightforward, with the complete parts list consisting of an Arduino Nano 33 IoT device connected to a pair of RGB LEDs and 50 Ohm resistors. The Nano attempts to connect to a known site (in this case, the Google landing page) every two seconds and sets the LEDs to green if it succeeds or red if it fails.

The cat skull is thankfully a replica, 3D printed by one of [Emily]’s Twitter acquaintances, and the whole project was housed in a domed security camera enclosure. [Emily] mounts the LEDs into the skull to create a “brain in a jar” effect.

The source is available on GitHub for those wanting to take a look. We’ve featured internet connectivity status indicators in the form of traffic lights here before, as well as various network status monitors and videoconferencing indicator lights.

IOT Message Board Puts Fourteen-Segment Displays To Work

We’re not sure, but the number of recognizable alphanumeric characters that a seven-segment display can manage seems to have more to do with human pattern recognition than engineering. It takes some imagination, and perhaps a little squinting, to discern some characters, though. Arguably better is the fourteen-segment display, which has been pressed into service in this just-for-funsies IOT message board.

As [Steve] tells the story, this is one of those “boredom-buster” projects that start with a look through the junk bin to see what presents itself. In his case, some fourteen-segment common-cathode LEDs presented themselves, and the result was a simple but fun build. [Steve] used some clever methods to get the display stuffed onto two protoboards, including mounting the current-limiting resistors cordwood-style between the boards. A Raspberry Pi drives the display through a very neatly routed ribbon cable, and the whole thing lives in a tidy wooden box.

The IOT part of the build allows the display to show messages entered on [Steve]’s web page, with a webcam live stream to close the loop. Strangely, the display seems stuck on the “HI HACKADAY!” we entered as a test after [Steve] tipped us off, so we’re not sure if we busted it or what. Apologies if we did, [Steve]. And by the way, if your cats are named [Nibble] and [Pixel], well done!

No matter what you do with them, multi-segment displays are pretty cool. But if you think they’re something new, you’ve got another think coming.

The ARPANET Of Things And CMU’s History Of Networked Soda Machines

When the computer science department of Carnegie Mellon University expanded in the 1970s, this created a massive issue for certain individuals who now found that they had to walk quite a distance to the one single Coke machine. To their dismay, they’d now find that after braving a few flights of stairs, they’d find that the Coke machine (refilled randomly by grad students) was empty, or worse, had still warm Coke bottles inside. What happened next is detailed by the Coke machine itself, straight from the CMU’s servers.

A follow-up by the IBM Industrious blog adds more feedback from those responsible for we now refer to as an IoT device, though technically it was an AoT at the time, being a pre-Internet era. For the bottle-based, 1970s machine, microswitches were installed by students in the machine to keep track of the fill state of each column and for how long the bottles had been inside. After about 3 hours newly added bottles were registered as being ‘COLD’, which could be queried from the PDP-10’s mainframe (CMUA) or via ARPANET using the finger command on the special ‘coke’ user account with finger coke@cmua.

As time moved on and the coke machine was replaced  in the early 90s with a newer (and very much non-IoT) model, students would once again attempt to modify it, much to the chagrin of the Coke company’s maintenance people, resulting in the students reverting modifications prior to a maintenance appointment. This tracking system used the empty column lights on the machine, leading to a similar tracking system as on the 1970s machine, except now running on a PC-XT class computer that also tracked the status of the M&M snack machine nearby.

Whether CMU CS students can still query such highly relevant information today is not mentioned, but we presume it is an issue of paramount importance that has been addressed in an expedient fashion over the intervening years.

(Thanks to [Daniel T Erickson] for the tip)

Smart Ovens Are Doing Dumb Checks For Internet Connectivity

If you’ve ever worked in IT support, you’ll be familiar with users calling in to check if the Internet is up every few hours or so. Often a quick refresh of the browser is enough to see if a machine is actually online. Alternatively, a simple ping or browsing to a known-working website will tell you what you need to know. The one I use is koi.com, incidentally.

When it comes to engineers coding firmware for smart devices, you would assume they have more straightforward and rigorous ways of determining connectivity. In the case of certain smart ovens, it turns out they’re making the same dumb checks as everyone else.

Continue reading “Smart Ovens Are Doing Dumb Checks For Internet Connectivity”