=== If you are at ITWM HPC === If you work for the ITWM HPC department, you can use a machine specially prepared to allow Flukso updates. The machine is located at the corridor, close to the printer cpsG1a. Please, take the following steps. - Login as user "flukso", informing the mySmartGrid administrator's password. - Connect the device to the cables available on the desk, properly labeled as "Flukso Power" and "Flukso Network". - Wait until the device right-most blue led starts blinking. - Double click the shortcut named "Update Flukso" available at the Linux Desktop. A terminal window will open. Please, wait its execution to complete. Ignore any message requesting password. - When the terminal window is closed, disconnect the cables. The Flukso device is up-to-date now. - If you have more devices to be updated, simply repeat this procedure from step 2. - When you finish, please don't forget to logout. === Update your Flukso to the for mySmartGrid adjusted version === For this method you need a POSIX compliant shell, ssh and expect installed. The sourcecode is available at Mathias' github page: [[http://github.com/gonium/msg-flukso]]. Clone it to have your own local copy. The repository contains the three parts: Microcontroller firmware, Router board software (openwrt) and the code for the website. We're only interested in the openwrt part. The update script is located at openwrt/package/luci/applications/mysmartgrid/luasrc/tools/flukso_update.sh in git. To update your Flukso make sure that it has access to the internet. If you want the Flukso to use the internet connection of your computer, enable IP-forwarding and change the IP in the update script.: IP="192.168.255.254" # The IP of your computer Then set your password in openwrt/package/luci/applications/mysmartgrid/luasrc/tools/flukso_update.exp: set pass "yourpassword" Now run the script while your computer is connected to the Flukso. === Update your Flukso to run the development version === The sourcecode of the Flukso is available at Bart's github page: [[http://github.com/icarus75/flukso]]. Clone it to have your own local copy. The repository contains the three parts: Microcontroller firmware, Router board software (openwrt) and the code for the website. === Updating the Flukso === For the local interface to work you have to update the Lua scripts installed in "/usr/share/lua/flukso". I suggest that you make a backup copy. Then you simply scp the updated files from the github repository to the Flukso (At time of this writing it is located under flukso/mote/v1/openwrt/package/flukso/src in git). If you're using mySmartGrid, you have to adjust the logging location afterwards. Open flukso.lua and edit the xmlrpcaddress entry to look like this: xmlrpcaddress = 'http://dev2-logger.mysmartgrid.de/xmlrpc' Open heartbeat.lua and change the xmlrpcaddress and server entry to: server = 'dev2-logger.mysmartgrid.de', xmlrpcaddress = 'http://dev2-logger.mysmartgrid.de/xmlrpc', After restarting the flukso daemon, you should have a "/tmp/sensor" directory: root@flukso:/tmp/sensor# ls 21dbb8a1b3b27e51d9b8384d6daf6a20 acff964b2308069847f02222bb3a6fd1 The last 60 seconds of measurements are stored there in JSON format: root@flukso:/tmp/sensor# cat acff964b2308069847f02222bb3a6fd1 [[1279099535,0],[1279099536,0],[1279099537,0],[1279099538,0],[1279099539,0],[1279099540,0],[1279099541,0],[1279099542,0], [1279099543,0],[1279099544,0],[1279099545,0],[1279099546,0],[1279099547,0],[1279099548,0],[1279099549,0],[1279099550,0], [1279099551,0],[1279099552,0],[1279099553,0],[1279099554,0],[1279099555,0],[1279099556,0],[1279099557,0],[1279099558,0], [1279099559,0],[1279099560,0],[1279099561,0],[1279099562,0],[1279099563,0],[1279099564,0],[1279099565,0],[1279099566,0], [1279099567,0],[1279099568,0],[1279099569,0],[1279099570,0],[1279099571,0],[1279099572,0],[1279099573,0],[1279099574,0], [1279099575,0],[1279099576,0],[1279099577,0],[1279099578,0],[1279099579,0],[1279099580,0],[1279099581,0],[1279099582,0], [1279099583,0],[1279099584,0],[1279099585,0],[1279099586,0],[1279099587,0],[1279099588,0],[1279099589,0],[1279099590,0], [1279099591,0],[1279099592,0],[1279099593,0],[1279099594,0]] In order to export these values create a symlink for the webserver: # ln -s /tmp/sensor /www Then the sensor readings can be queried from another machine like this: $ curl http://192.168.2.102/sensor/acff964b2308069847f02222bb3a6fd1