-
Notifications
You must be signed in to change notification settings - Fork 3
Volcano Show
This is all very much a WIP. I need to go back and document stuff I've already done.
- 2016-05-11 Technical demonstration video
- Raspberry Pi 3 Model B V1.2 (Originally Raspberry Pi 2 Model B V1.1, but upgraded on 2016-05-10, to see if it improves my animation frame rates.)
- Adafruit NeoPixel Digital RGB LED Strip - Black 60 LED
- 4.066 meters, 244 LEDs total
- Cut in five strips of 41px + one strip of 39 (because I killed two pixels when first soldering them), each on a top or bottom of a shelf
- SanDisk Ultra Micro SD HC I — 16 GB
- Edimax USB Wi-fi adapter
- Adafruit 12mm Diffused Thin Digital RGB LED Pixels (Strand of 25) - WS2801
- (2) strands, 50 LEDs total
- I'm calling these PaleoPixels
- Install Raspbian:
- Installing with NOOBS
- Download the NOOBS Installer. I used V1.9.0, released 2016-03-18.
- Unzip the NOOBS package.
- Download and use SD Formatter to format the SD card as FAT. I named it
TIKINOOK
. - Copy all files from the
NOOBS_v1_9_0
folder into the root of the SD card. - Eject the SD card and insert in the Raspberry Pi. Hook up the Pi to Ethernet, an HDMI display, and a USB keyboard and mouse, then connect the Micro USB power.
- When NOOBS boots, check the box for Raspbian, and click Install. Confirm you want to overwrite the SD card.
- Note: The full Raspbian install probably contains a lot of unnecessary stuff, but I haven't whittled down to exactly what I need for the Tiki Nook. Still, should be OK.
- Go get a cup of coffee while Raspbian installs.
- Click OK when done; the Pi will reboot.
- Use the Adafruit Raspberry Pi Finder to connect to the headless Pi over the network and set up the bootstrap process.
- Launch PiFinder.app (I'm on OS X)
- Click Find My Pi!
- Once it finds the Pi, change the Hostname (I use
tikinook
) and enter the Wi-fi SSID and password, and click Bootstrap! - As far as I can tell, PiFinder's Bootstrap did not change the hostname (the Pi remains at raspberrypi.local), and I'm not sure about the Wi-fi either. the other bootstrap stuff seemed to work though? its hard to tell, since the bootstrap terminal window disappears as soon as it finishes, so I cant see if there are any error messages.
- On the Pi itself:
- Menu > Preferences > Raspberry Pi Configuration
- Change the password to something other than the default
raspberry
- Change the Hostname here to
tikinook
, because the PiFinder method didn't stick. - Interfaces > SPI > Enabled
- Localization > Locale > Country > US
- Timezone > Areas: US, Location: Pacific
- Click OK and when it asks you to reboot, say Yes
- Set up reserved LAN IP address
- Find the Wi-fi MAC address of the RPi by running
ifconfig wlan0
. The MAC address is reported asHWaddr
. - In AirPort Utility, click on the AirPort and then click Edit. Click on the Network tab, and under DHCP Reservations, click the
+
.- Description: Tiki Nook
- Reserve Address By: MAC Address
- MAC Address:
ab:cd:ef:01:23:45
(the address fromwlan0
) - IPv4 Address: 192.168.10.14 (or whatever IP address you'd like it to have)
- This way, every time your RPi connects to the LAN, the AirPort will give it the same IP address.
- Find the Wi-fi MAC address of the RPi by running
- Set up port forwarding for
ssh
- Not necessary, but I like to be able to get to
ssh
from outside of my home network. - In AirPort Utility, click on the AirPort and then click Edit. Click on the Network tab, and under Port Settings, click the
+
.- Firewall Entry Type: IPv4 Port Mapping
- Description: Tiki Nook SSH
- Public TCP Ports: 8123 (or whatever port you prefer)
- Private IP Address: 192.168.10.14 (the reserved IP address for your RPi)
- Private TCP Ports: 22
- Then you can connect from the outside by using
ssh -p 8123 [email protected]
(or whatever your WAN-facing IP address is)
- Not necessary, but I like to be able to get to
- Install VNC
- Not strictly necessary, but I like being able to see the desktop sometimes.
- Adafruit's Raspberry Pi Lesson 7. Remote Control with VNC
- Here is a local copy of commands that I ran, condensed from above: VNC and File Sharing
- Installing OpenCV on the Raspberry Pi
- How to install OpenCV 3 on Raspbian Jessie
- Here's my local copy of commands that I ran to install OpenCV 3.1.0, as there was an update since those instructions were written: Installing OpenCV 3.1.0
- Installing the rpi_ws281x Library for NeoPixels
- 2016-04-03 — more to come
- 2016-03-06 - Distributing power along one side of the nook shelves, so that we get better voltage and truer colors to more pixels
- I don't really think this is working. According to Adafruit "Powering NeoPixels", I need 60 / pixel for max brightness on 294 pixels, which is ~18A. My current power supply is only 10A -- fine for most color work, but for bright white, it's not gonna work. (HAHAHA and my mains circuit is only 15A, so obviously this will work perfectly.)
Upgrading to use python-osc
for communication between TouchOSC on an iOS device, a Mac mini, and the Raspberry Pi, which means I have to use Python 3.4 or later.
That also means I need to run the script with python3
at boot, instead of python
, so I need to change the service that launches the script on boot.
Only, I forgot how I set it up in the first place! See here for the detective work.
To change it, edit the current crontab
(don't forget to use sudo
!):
$ sudo crontab -e
# everything in the above file
# ...
@reboot sudo python /home/pi/tikinook/nook_controller.py
That line should now be:
@reboot sudo python3 /home/pi/tikinook/nook_controller.py &
2018-08-14 pm, I've commented it out, for now, so I can develop the new scripts without having to kill the boot-launched one.
$ python3 --version
Python 3.4.2
If I'm going to use Python 3, let's upgrade to the latest, so I don't have to do this again soon.
TODO: instructions for upgrading to Python 3.7