I've built tons of things. Most usefully, I built presence/motion/light/temperature sensors for my home, along with IR transmitter so I can control my TV/AC. They're about the size of two matchboxes, they cost about $10 each and they're amazing for my home automation:
I've built cat toys for my blind cat, toy planes, a CNC, a cat feeder, a back-scratching robot, and more stuff that I can't remember. I love the ESP8266.
I would be interested in hearing about what kind of "programming" you considered for the "Home". I have been over-ambitiously thinking about a project like this (been calling it my "Building X" project) using an RPi and small screen in the window. I was planning to basically run a soap opera, where the system would usually run idle loops (like a screensaver[1]) but elements of plot could play occasionally when a presence detector verified someone was around to watch. I was envisioning users being able to subscribe to the type of story they wanted to see; murder mystery, rom-com, scifi, etc. Unfortunately I'm a hardware guy, not a TV producer so I never got anywhere.
Oh, it's a simple state machine with the "person" having a probability to go from a room to the next every few seconds. I also compressed the first X minutes of some Disney movie to single pixels for the "TV" colors, and a fireplace video (I think) for the "fireplace" colors.
The source is linked in the video, I'm sure, so you can have a look if you want.
I've been thinking about creating some more interesting interactive cat toys like this -- wiring the hardware and doing the programming are pretty easy, but where I'm stuck is building the actual cat toy bits that the electronics control! How have you approached this in your projects?
It depends on what you want to do. In my case, I have a blind cat and I needed a toy that she could hear. I 3d printed a simple ball, and I made a very small circuit with a bare ESP8266, a speaker, a small battery, and a vibration sensor. The sensor resets the ESP, which plays a short song on the speaker and then goes into deep sleep.
Well, for example, my (sighted) cats have a toy that spins a wand in a circle, but does so at a constant speed for a few minutes then turns off. I'd like to build one that moves in less predictable patterns, sporadically, over a longer period of time, without using much battery while not moving.
The hardware components aren't that hard to assemble, the programming is easy, but I'm at a loss with where to begin for building a simple housing where a motor can attach with a wand mounted to it. I'm sure it's very basic fabrication stuff, I just don't know where to begin.
Can you not use the existing toy and modulate its motor how you like it? That's my first option, and my second option is to design and 3D print something. The latter isn't that hard to learn either, you could make something decent in a few hours.
Sure, have a look at the source in my repo. I bitbang the pulses in a naive way. I realized later that everyone uses the same protocol and reading about it first would have been better, but it wasn't hard to bitbang anyway.
https://gitlab.com/stavros/sensor-board/
I've built cat toys for my blind cat, toy planes, a CNC, a cat feeder, a back-scratching robot, and more stuff that I can't remember. I love the ESP8266.
Also, an e-ink display that shows my calendar:
https://www.stavros.io/posts/making-the-timeframe/
A house with a tiny person living in it:
https://www.youtube.com/watch?v=1RUqTN-7_gU
A way to project images in mid-air, for long exposure photography:
https://www.stavros.io/posts/behold-ledonardo/
A button that I can press to get food:
https://www.stavros.io/posts/emergency-food-button/
A drone that blows bubbles:
https://www.youtube.com/watch?v=xk99zrlAp9U
A toy bus that shows you when the next actual bus will come:
https://www.stavros.io/posts/bus-stop-bus/
A rotary mobile phone:
https://www.youtube.com/watch?v=fSkdWQswpc8
An alarm clock with the weather so I know whether it's worth waking up for tennis:
https://www.stavros.io/posts/do-not-be-alarmed-clock/