Categories
Fun iOS Projects

SpriteKit SnowFlakes

From the seasonal hacks department, here’s my toy app to make it snow on macOS. ❄️

https://github.com/twstokes/snowflakes

How it works:

When the app is told to make it snow it adds full-screen non-interactive windows on each display and inside those windows adds a SpriteKit view with a scene inside that contains emitters.

That’s basically it!

Categories
AI Fun Projects

Do you hear what I hear?

Thanks to Whisper and this awesome port, the tree is responding to spoken words. 🗣🎄

Since the tree itself only has a low-powered MCU, we need another machine to act as a listener.

The architecture is:

  1. A machine in my office runs the Whisper model and listens for words.
  2. If certain keywords are found it finds a corresponding command to run (e.g. do a theater chase sequence in a green color).
  3. It sends that command to the tree over the network.

For now I’m running it from iOS and macOS, so I wrote the current implementation in Swift. The code is currently still in “hack” status, but working well!

Now it’s time to test it when talking to coworkers at Automattic.

Categories
Arduino Projects

Tree OTA updates

Something I should’ve done long ago – enabling OTA (Over The Air) firmware updates so I don’t have to disassemble the project box and move the tree every time I want to change its code.

To add a touch of UX, the pixels represent the upload progress. 😎

NeoPixel tree being updated via OTA firmware update.
Categories
Fun Projects

The tree is smarter!

I’m finally taking the time to make the NeoPixel Christmas tree smarter this year.

My current plan is to:

  1. Connect it wirelessly to the network (it has an ESP8266, after all)
  2. Run a UDP server on it
  3. Respond to various commands
  4. Write a client that sends UDP packets to it

It’s fun to design UX for limited hardware. In this case, the tree starts with an orange pattern that rotates until a WiFi connection is successful. If it fails the tree will go red, otherwise the tree briefly goes green to let the end user know all is well before starting its first sequence.

Nifty! 🎄

Categories
Arduino Fun Projects Raspberry Pi

Domo Arigato

If the objective was to make the robot less creepy, I’ve failed miserably.

Categories
Fun Projects

Hello, computer-1

Much like the first time I laid eyes on flip dots, when I learned of the computer-1 Mini-ITX case by Teenage Engineering I knew I had to get my hands on it. Maybe I have a thing for bright orange objects.

It’s been a few years since I built my previous PC and the Mini-ITX form factor has always been appealing to me for a workstation, so the hankering to do a new build was strong.

Though I’m a long time nerd it may be surprising that I’ve really only built one custom PC until now. This is mostly due to living in Mac-land and not being a hardcore gamer. My Linux servers have either been in the cloud or a leftover prebuilt that was “good enough” because Linux will pretty much run on anything (and that’s part of the fun).

Specs

The parts I went with are modest and didn’t need to be the latest and greatest. The goal for this build was a dependable workbench machine that won’t be my daily driver (iOS development pays the bills), nor replacing my gaming PC.

Categories
Projects

Augmented Airality

Categories
Arduino Fun Projects

A not-quite-Retina external screen

Categories
iOS Projects Thoughts

Happy New Year!

Categories
Projects Raspberry Pi

Snake Eyes + Servos