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.
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.
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.
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