Building a Connected Cuckoo Clock

I’ve been building up my smart home setup for the last couple of years, and it generates a lot of data – from the cat’s weight, to the humidity in each room, and like any Smart Project full of sensors, the question becomes what do we do with all that data? Graphs and dashboards? Push notifications? Disembodied vocal announcements using the Sonos?

While cuckoo clock on a yellow wall. The clock has a ring of light around the dial and a red light shining onto the pendulum.

In the early 2000’s a company called Violet, released the Nabaztag – an internet connected Rabbit, with extremely expressive ears and lights on its belly. It wasn’t something I could afford at the time, but ever since, I’ve been interested in the idea of ambient or glanceable devices – devices that fit into our environment and let us know important information without directly calling for our attention.

I decided to try to use a cuckoo clock as the foundation for an ambient device project.  I had this plan that I could add a light to the bottom of the clock that would create a nice glow on the wall behind it. I also planned to take control of the cuckoo mechanism, so rather than chiming on the hour, it could chime whenever I wanted (if I wanted a somewhat less passive notification). While putting together an order of the components I would need, I came across a ring of 20 RGB LEDS that would fit nicely behind the clockface, so I added that to the plan too.

Now, I have far too much respect for mechanical clocks to go tearing into beautifully made mechanical clock, so I started on eBay with a battery powered, plastic quartz clock. I was actually pretty impressed by this clock in its default state, it was reasonably attractive (if you’re into modern minimalist cuckoo clock styles) and the cuckoo sound was decent. My only real complaint was that the hands were a really long way forward of the clock face, which didn’t look so great if you weren’t looking at the clock directly from the front.

The Teardown

I started pulling the clock apart to see what I would find, and it was pretty interesting. The chime & cuckoo are in their own module, connected to a clock & pendulum module. I was amused to find that when I further dismantled that clock module, it contained a standard clock unit inside it – complete with normally inaccessible AAA battery connecter. Because sometimes, even in mass production, its easier to repurpose an existing item then built it from scratch.

The quartz clock module, showing the AAA battery connector

Continue reading

State of the (IoT) Union 2022: Smart Home Year in Review

Hello again! It’s almost the end of the year, and I think it’s a good moment once again to run through the various smart home things I shared and how they’ve panned out after the post were published.

A pot noodle surrounded by tools including a soldering iron, wire cutters and a multi meater.

Bathroom Fan

Last year, I shared how had used a Shelly Relay, Home assistant and some humidity sensors to add some smarts to my bathroom fan. Since then, the system has been running un-modified and I am very impressed with its reliability. The only issue I’ve encountered is that as the fan switches on, sometimes the relay will reboot, and the fan would stop again. It was very irritating. This is caused because the fan cam sometimes causes electromagnetic interference as it starts and can be fixed with the installation of an RC snubber.

Smart Heating

One of the first things I wrote about here was how I built a smart heating system without damaging my property. Last year I mentioned that I was going to upgrade the system to also use Shelly relays.

I did, indeed, complete this project but didn’t really write about it. I’m really pleased with this upgrade, as it allows me to switch on an off individual heaters, rather than the entire properly at once. I created some somewhat elaborate Home Assistant automations to switch on only the rooms I need when I am working from home. Hopefully this should help me save some energy.

Cat Litter

In June, I wrote about my connected cat litter project, which I could use to track my cat’s health over time by automatically weighing her whenever she uses it. While getting it working at first was a little bit of a struggle – requiring me to film the litter tray to figure out how Ellie was using it that was causing issue – this has been incredibly reliable and a great success. I’m very happy with it.

A notification reading Ellie (3.65Kg) has left you a present in the litter box (20g)

Unfortunately, Ellie was a little ill early this year and lost a lost some weight. I’m pleased to say that she has made a full recovery now, and the smart litter was fantastic for tracking her recovery as she gained back a healthy weight.

Misc Smart Stuff

  • Automatic Blind – While renovating my bedroom, I added a very basic blackout blind, to stop the morning some from shining around the curtains and waking me up. In an Amazon sale I picked up an automated blind opener. I integrated this into Home Assistant, and I was really happy during the summer heatwave, that I could leave both the window and curtains open, for the best cooling, but have the blind shut itself just before sunrise.

  • The lights in both my bathroom and kitchen are both Ikea Tradfri GU10 spotlights. Initially I was pretty impressed with these as a cost effective solution to adding smart lights to rooms that require a lot of individual bulbs. However, during use, they’ve proven to be really fickle. I have one set connected to my Hue Bridge, and the other to a Zigbee card connected to my Home Assistant Pi. Both sets of lights exhibit odd behaviour where they will turn on really dull and then 30 seconds or so later, go to full brightness. This stopped for a while during summer, while they worked perfectly, but came back again – given they are installed in the roof space, I wonder if this is temperature related somehow?

  • Living in an older property, keeping an eye out for damp in cold weather is a way of life, I recently added a dehumidifier to keep a handle on the indoor humidity when cooking. To keep running costs down, I made use of the humidity & temperature sensors in each room to detect when it needs to be turned on and when it can be turned off again.

Looking Forward

I’ve got a few projects planned for 2023, some big and some small, but I’m going to keep them as a surprise for you. I also want to take a look at energy monitoring, possibly making use of the Home Assistant Glow project.

I hope you have a happy new year, and I’ll see you in 2023!

Internet of Poop: How (and Why) I Built a Smart Litter Tray

Naturally, we want our pets to be as healthy and happy as possible, and just as with humans, one valuable metric to know is their weight. Knowing the weight of our four-legged friends, not only helps us to verify that they have a healthy amount of body fat, but can also can be used to detect things early on that may need medical attention. As they cannot speak to us and tell us when don’t feel well, it is our duty to listen to all of the different signals we have to understand their wellbeing.

Photo of a black shorthair cat sitting.

That’s why I wanted to know the weight of my cat, Ellie. Unfortunately, she really dislikes being picked up or handled, even by people she trusts. This means, it’s not possible to weigh her on a bathroom scale, and the only datapoint I have is her yearly examination at the vets. 

I wanted to build something that would fit into her life to track her weight automatically, without any intervention. I decided to modify her litter box, so that on each visit it records her weight.

But WHY, Andy?

Okay I get it; you think it’s weird. So here are the main goals of the project: 

  • Track Ellie’s weight because I want to know how heavy she is without going to the vet
  • Learn something about how load cells work
  • Have fun building a new project
  • (Hopefully) Inspire others to try out new ideas and projects by sharing what I learned. 
  • Track the weight of poops because I thought that was funny. 

The Hardware

Rather than build the whole litter tray from scratch, I decided to build a platform that her existing litter tray would rest on. This platform would contain all the equipment necessary to detect when Ellie was using the litter and start taking measurements.

Continue reading

How I Made My Bathroom Fan Smart

When I moved into my house, it came with this and old fan in the bathroom to keep the moisture down when you’ve had a shower, the bathroom itself is in the inside of the building and doesn’t have any external walls / windows, so the fan is really important to keeping it dry and non-moldy.

The original extractor worked well enough, but I’ve never really been that happy with it; it’s kind of noisy when running at full speed and has a trickle mode that runs it at low speed all the time – ostensibly this is to keep the room fresh, but in reality, means that the room Is always cold in the winter. It’s also not very well installed – is the case not fully closed on the fan focusing, and when I tried to close it up tightly the fan scraped the inside of the case and made an awful noise.

More recently the humidistat that makes it speed up automatically stopped working, meaning that after a shower the room would stay damp for hours afterwards. I’ve tried taking the fan apart and cleaning it in case it was just dust and grime of the sensor. But that didn’t help, so I set about replacing it. This being 2021 with nothing better to do, I decided to make it smart and control it from software.

After some research, I used a Manrose MF 100T inline fan, looking down the spec sheets, it is quieter, more electricity efferent and moves more air than the existing solution so seems like a great fit.

Photo of installed extractor fan in attic with inlet and outlet tubes.

To control the fan, I used a Shelly 1 relay – I’ve used some Shelly 1 PM relays in a couple of other places that I’ll write about soon, and I’ve so far been super happy with their ease of use and reliability.

Continue reading

How I Made My Heating Smart Without Damaging Or Replacing Anything

I’ve previously mentioned that I wanted to upgrade my heating system so I could program it with more complex timings or control it form my phone. But there’s a catch: The house is rented, so the whole system must do no damage, be made only of removable parts and be installed without modifying any of the existing infrastructure.

In this post, I’ll talk about how I managed it, how it works and what the current state of the project is.

Background

My electric heating is controlled by a Timeguard RTS113 mechanical timer located awkwardly in a kitchen cupboard; it consists of a large outer ring that rotates once every 24 hours. On this ring, you push in red (on) or blue (off) plastic pegs (called tappets in the user manual) at the time you want the heating to turn on or off. As the peg passes a control spindle (representing the current time in the bottom right) it pushes it around approximately one eighth of a turn. Each eighth of a turn of the control spindle, toggles the heating on or off.

A second inner ring allows you to suppress the morning or afternoon schedule for a given day in the week. For example, you can have the heating come on at 6:00am and 7:00pm every day, except on Saturdays where it does not come on at 6:00am because the morning schedule is suppressed.

This works reasonably well, but it’s not very flexible – you pretty much a to live your life on the same schedule every day – if you deviate from it the heating is either wasting power while you’re out, or you’re freezing and have to reach into the cupboard to press the override button.

I’d love to have a smart thermostat such as Nest or Hive but they don’t support my electric heating and as this is a rental house, I’m not able to modify anything to support them.

What I Wanted To Do

The control spindle that is rotated by the pegs has a small slot on the top that can be turned manually using a screw driver to toggle the heating on an off. I can remove all of the pegs and use a stepper motor to very gently turn the spindle each time I want to change the heating state. I could then connect this to a controller that receives instructions from the internet, and write whatever software I wanted to run the schedule.

The Motor

Continue reading