Additional Documentation for Parklights

Additional Documentation

Code for "Parklights"

Memory Issues Associated With "Parklights"
The memory implemented in the Arduino platform is limited. Because of this, storage of mass quantities of data was the most difficult problem faced in this project.
In the case of "Parklights," 5 arrays were implemented for the storage of data (4 for the light states, 1 for the time). For some reason, we could not create an array longer than 42 values (43 would cause the program to freeze up). This proved problematic in the case of storing values during a long period of time.
The use of EEPROM could have remedied this problem, but accessing EEPROM proved to be a difficult task and the documentation how to do this was poor. Some other type of external storage (EEPROM or Flash memory) would be the most effective direction to eliminate this problem.
Additionally, we chose to use an incrementer in a while loop as opposed to the millis() function. When using the millis() function, the Arduino board acted sluggish as the time values were recorded in the array. Having a simple incrementer to store time worked better and did not affect the function of the program since time values used are relative.

Data Filtration vs. Interactivity
The attempt to filter data not created by human motion handicapped the interactivity of this project. As an individual played with the system, an unpredictable pattern of trigger events can be created. We felt to take these events and interpret them as bogus data created a less interesting and less interactive system for an audience to experiment with.
Instead we felt that having a system which stored a specific number of trigger events and replayed them without filtration would be a more effective way of engaging the audience's attention.