Lumatron is a LED sculpture system. You are free to play with this code, but as per the license you may not make money from it.
Contributions are encouraged! The easiest ways to contribute:
- New idle patterns — See idlepatterns/README.md for details.
- New games — See games/README.md for details.
- Clarifications or other improvements to any READMEs
- General optimizations or improvements
- If you have never connected a piece before the following instructions can be viewed by visiting
https://my.lumatron.art- Plug in the Lumatron box into the power source and the box into the piece (do not plug the piece directly into the usb-c wall plug)
- Wait for a few minutes for the box to boot up (until pink light is flashing)
- Join the wifi named Lumatron
- Once on that wifi, the visit url http://10.42.0.1
- Enter the wifi name (SSID) and password in the page that loads
- Refresh the page once the first pixel turns off
- Visit
https://my.lumatron.art - Turn into a progressive web app by following the instructions at the bottom
- Clone this repo (
git clone https://github.com/adrianmarple/orbitron) on your local machine (Windows not supported) - Run
utility_scripts/admin_install.shfrom the repo directory (should be named "orbitron") - Start the emulator by running
sudo ./startscript.sh - Open
http://localhost:1337/viewfor the emulator - Open
http://<localhost or your IP address>:1337to open one or more controllers on either your desktop or your phone
- In terminal
cdtocreationfolder - Install node dependencies
npm install - Run
node pixelserver.js - Visit url
http://localhost:8080/?local - More details in the creation folder README
- Same as above, replacing
my.lumatron.artwith your server
See the idlepatterns folder README
- Create an ubuntu server, for instance the lumatron.art is currently hosted through Digital Ocean
- Open a console into root of your new server
- Clone this repo:
git clone https://github.com/adrianmarple/orbitron - Run
utility_scripts/admin_install.shfrom the repo directory (should be named "orbitron")
- Request an unlocked SD along with a piece, email adrian@marplebot.com an request it be unlocked remotely, or follow the Micro SD card setup instructions below
- Get local IP address
sudo nmap -sn 192.168.1.0/24(once the admin console is set up, you'll be able to get the ip address directly from there) ssh pi@<IP address>(passwordlumatron) into the piece and change the password- Edit
config.jsto add the lineRELAY_HOST: "your-domain-or-ip", - Run
sudo pm2 restart all
- Same as with a local admin console, in terminal
cdtocreationfolder - Install node dependencies
npm install - Run
node pixelserver.js - Visit url
http://localhost:8080/(without the?local) - If in creation mode, click the "LUMATRON CREATION" button at the bottom to switch to admin mode
- I recommend hitting the "Set ORB_KEY" button followed by the "Save config.js" button for all connected orbs (including the server itself - default named "demo")
- Note: if this button is not visible hit the "config" button first
- Again see the creation folder README for more details
- Download an unlocked SD card image from dropbox
- Burn to SD card using
ddor Balena Etcher - Using
dd- Update
/dev/disk4or/dev/sdabelow with the correct drive as determined fromdiskutil listorlsblkon Linux diskutil unmountDisk /dev/disk4orsudo umount /dev/sda1 && sudo umount /dev/sda2on Linux- go to Download directory or wherever the SD image download is
sudo dd if=lumatron.img of=/dev/disk4 status=progress- On MacOS use
gddinstead- Install with
brew install coreutils sudo gdd if=lumatron.img of=/dev/disk4 status=progress
- Install with
- Update
- Insert SD card into raspberry pi and power on
- Connect via
ssh pi@<<IP_ADDRESS>>passwordlumatron - Change to your own password
- Download Raspberry Pi Imager: https://www.raspberrypi.org/software/
- Select the latest 64-bit Raspberry PI OS
- Click the gear icon to change the settings of the install
- Set hostname to
orbitron - Enable SSH with password authentication
- enter pi as the username and enter a password
- Configure wireless LAN to connect to your local wifi
- Set timezone and select us Keyboard layout
- Save and click
WRITEto burn the image - Plug SD Card into PI
- Connect PI to monitor/TV via HDMI cable
- Connect USB keyboard to PI as well
- Power on the PI
- Wait for some time, it may need to reboot 2 or more times
- You should see
orbitron login:when it is ready - Login with the username and password you set
sudo apt install git
git clone https://github.com/adrianmarple/orbitron~/orbitron/utility_scripts/pi_install.sh
- Update
/dev/disk4below with the correct drive as determined fromdiskutil listorlsblk sudo dd if=/dev/disk4 of=lumatron.img bs=8M count=820 status=progress- On MacOS use
gddinstead- Install with
brew install coreutils sudo gdd if=/dev/disk4 of=lumatron.img bs=8M count=820 status=progress
- Install with