Skip to content

95lux/reimagine

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Reimagine

12 channel light installation by Ólafur Elíasson

Hardware

Maximum usage time of the installation is determined by the max unsigned long value an Arduino can process, which is 232-1 seconds = 4,294,967,295 seconds = 138.08 years (Assuming the installation runs 24/7. The timer is stopped when installation is not powered).

The installation utilizes two redundant Arduino Uno microcontrollers, each with a DMX shield.
The Arduinos are powered by a 5V Meanwell PSU. 5V VIN can be toggled with a flip switch on the front of the panel.

For saving the current state of the installation to the internal EEPROM on power loss, a simple supercapacitor circuit is wired to the power circuit, which powers the microcontroller after power loss for the amount of time needed to save the state to EEPROM. The saving function is called via PIN 13 (Which is active low, and directly connected to the 5V VIN).

Software

Program is written in the Platform.io environment, which allows C++ usage and better code/library management for arduinoesque microcontrollers.

To upload code to the microcontroller, put jumper EN to !EN on DMX shield. This disables usage of the serial port by the dmx shield, thus preventing USB serial connection. After successfull upload revert the position of the jumper back to EN.

 

DMX signals are ouptut on channel 1-12. Receiving end is a 12 channel DMX dimmer.

Because of the usage of the serial port by the Conceptinetics library, any usage of the serial port (Such as debugging via Serial.println() is disabled when the library is integrated.) For successfull build including the Conceptinetics library, delete or comment all code containing Serial.

For debugging purposes uncomment the MACRO definition DEBUG in ./include/define.h. This will reenable The usage of Serial monitor.

 

Timings for divisions and fadetimes are changed in the int[] array in ./src/variables.cpp (in seconds).

default timings

Light # 1 2 3 4 5 6 7 8 9 10 11 12
Pause Time (in sec) 34 27 44 38 23 28 30 22 29 42 43 36
Fade Time (in sec) 22 21 27 24 19 27 29 29 32 25 26 22

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published