====== Connect or Not: Pavilhao CIVIL, IST, Lisbon, September 2014 ====== {{http://emperors.kucjica.org/wp-content/uploads/2014/09/frontview-passingby-web-1024x708.jpg?400}} ===== interaction scheme ===== {{http://emperors.kucjica.org/wp-content/uploads/2014/09/interaction-scheme-1024x471.png?600}} ===== technical details ===== Stretchable fabric + motors + custom designed LED RGBW boards + 2 Arduinos + laptop + Connect or Not Android app [[connectornot-lisbon-development|development]] ==== hardware ==== * stretchable fabric, 2.25x7m * 2 wooden bars, 5x5cm, 2.25m long * 2 wire cables, 7m long * hooks, screws, staples… * Arduino Uno board * Arduino Mega(ATMEGA1280) board * custom made shield with connectors for the motors and independent power * 24W Universal AC Power Adapter, on 6v * 4 HiTEC ultra torque servo motors, [[http://www.servocity.com/html/hs-645mg_ultra_torque.html|HS-645MG]] * modified the servos for continuous rotation, using this procedure [[servo-continuous-modify]] * plexiglass wheels on motors * 4 custom made RGBW LED light boards * 3 [[http://estimote.com|estimote beacons]] * laptop (Debian Wheezy) with built in wireless adapter Intel® Centrino® Advanced-N 6205 with Intel(R) Wireless WiFi driver for Linux, 3.11-2-amd64 (iwlwifi) * smartphone (tested with Samsung Galaxy S3, Android 4.0.4) ==== software ==== * Arduino [[shiftpwm-led-controls|ShiftPWM library]] * Arduino [[diskoLEDron-ino|diskoLEDron.ino]] firmware for LED control * Arduino [[multiple-serial-servo-control|Arduino-Python 4-Axis Servo Control]] firmware for motors control * python script, [[connectornot-lisbon-py|get-values.py]] interfacitng the incomiong values with systems reaction * python libraries [[servoclass-py|servoclass.py]] and [[ledclass-py|ledclass.py]]; put them in the same folder with the main .py file and verify USB addresses before running ===== HOWTO ===== phone side: * download and install [[https://play.google.com/store/apps/details?id=net.lmag.connectornot|Connect or Not app from Google Playstore]] * press the PLAY button to start counting and sending data laptop/beaglebone side: * download all necessary scripts and libraries [[shiftpwm-led-controls|ShiftPWM library]],[[diskoLEDron-ino|diskoLEDron.ino]], [[multiple-serial-servo-control|Arduino-Python 4-Axis Servo Control]], [[connectornot-lisbon-py|get-values.py]], [[servoclass-py|servoclass.py]], [[ledclass-py|ledclass.py]]; put them in the same folder with the main .py file * connect both arduinos to the laptop, verify USB addresses before running * optionally, you can write udev rules for your machine so that the naming of USB serial addresses is persistent http://hintshop.ludvig.co.nz/show/persistent-names-usb-serial-devices/ or http://hackaday.com/2009/09/18/how-to-write-udev-rules/ * start get-values.py python get-values.py browse, talk, send sms's and upload data over the network. observe changes in the movement and lights ==== HOWTO analyse position tracking ==== get the database file from the server; read it using *sqlitebrowser*