Animated wall art
Go to file
Neale Pickett caeb06eea7 Reset pin, quicker transitions 2023-09-04 16:30:21 -06:00
.gitignore Daylight Saving Time support 2023-04-09 12:42:02 -06:00
LICENSE.md Now it's network-aware 2022-07-17 22:22:16 -06:00
README.md Reset pin, quicker transitions 2023-09-04 16:30:21 -06:00
durations.h Daylight Saving Time support 2023-04-09 12:42:02 -06:00
network.cpp Reset pin, quicker transitions 2023-09-04 16:30:21 -06:00
network.h Reset pin, quicker transitions 2023-09-04 16:30:21 -06:00
picker.cpp Make it less visually busy, for living on our wall 2022-01-01 09:35:06 -07:00
picker.h Make it less visually busy, for living on our wall 2022-01-01 09:35:06 -07:00
timezones.h Daylight Saving Time support 2023-04-09 12:42:02 -06:00
wallart.ino Reset pin, quicker transitions 2023-09-04 16:30:21 -06:00
xlat.py Fix URL and a few other display tweaks 2023-01-06 12:50:46 -07:00

README.md

Wall Art

This project's primary home is https://git.woozle.org/neale/wallart/

This an art piece I have hanging in the wall of my house, with pixels crammed into a cardboard box. Newer versions use an 8x8 grid, in a 3D-printed enclosure.

It doesn't display anything significant. The idea is to have something to look at if you're idle, without it being a distraction from more pressing issues. If you're familiar with the album "music for airports", it's that.

Most people, after watching it for a bit, form different ideas about what it's displaying. That's cool.

Reset

Plug the device in, connect GND to pin A0, and briefly press the reboot button. It will flash orange and blue a few times to let you know it has reset.

WiFi

If the red light on the board is lit, that means it doesn't know how to connect to the WiFi.

Get your phone or computer to connect to an access point called "Wall Art xxxxxxxxx". The password is "artsy fartsy", unless you changed it in the source code. Once connected, you should get a browser window that lets you connect. If not, try going to http://neverssl.com/.

You can clear the wifi information with a reset.

Network Server

If you #define a wallart server, the program will periodically fetch an image/animation from it, and display that image/animation. I added this so we could send little pictures to my daughter in college.

Because the fetch takes some time, one of the animation patterns actually shows progress of the fetch. It's the one with the four lights of the same color. After it's either succeeded or failed, it stays on that color for a while, so you can tell how everything is going. Here's what the colors indicate:

Color it stays on Status
Blue Unable to connect to access point
Aqua Some sort of problem initiating the HTTPS request (DNS?)
Green HTTPS server request failed (404 or similar)
Yellow Image download failed
Orange Everything worked!

A happy setup will cycle through each color once, and then display orange for a while.

Clock

At night, and sometimes during the day, it displays something like a clock. You will need to tell it your time zone. It doesn't do daylight saving time, sorry. I suggest you set it to standard time and pretend it's in sync with the sun.

  • Each pixel in the top row is 1 hour (3600 seconds)
  • Each pixel in the middle row is 5 minutes (300 seconds)
  • Each pixel in the bottom row is 25 seconds
  • There are four pixels around the bottom that move every 5 seconds

Update

You can upload a new version of the firmware. Reset the device, and select the "Update" button instead of configuring WiFi. Then you can upload the new .bin firmware file.

You will have to reconfigure networking after this.

Philosophy

I was trying to make pixels fade in and out, and got the math wrong. But what I wound up with looked more interesting than what I was trying to make, so I kept it.

After many trips to Meow Wolf's House of Eternal Return, I realized that the presentation of the piece is more important than how complicated the algorithm is.

It's hard to encapsulate in a git repository, but if you want to make NeoPixel art, think hard about what the end result should look like. It's not enough to make a cool light show; it has to make people wonder "what is that for?"