ok, doesn't get older than that :)
Out Run, that used to be the game I thought was so cool and pretty back then
this is one of the things I found for my dad
let's not screw around here, there's some cooking to do :)
Pont Alexandre 3 and Grand Palais
Louvre and Jardin des Tuileries leading to l'obélixe
Centre Georges Pompidou and Tour St Jacques
the scooter had plenty of pull
#!/usr/bin/python # This is based off the Zeo Raw Data Library at the bottom of # http://zeorawdata.sourceforge.net/starting.html # This script is a much simpler version of how to log basic data than the cool # and pretty GUI_Viewer from http://zeorawdata.sourceforge.net/examples.html # This script is an easier example to steal from for simple logging/integration. # By Marc MERLIN <marc_soft@merlins.org> / 2011/12/17 # License: GPLv3. #gandalfthegrey [mc]$ ./logsleep.py # 2011-12-17 12:19:10: HeadbandDocked # 2011-12-17 12:19:15: HeadbandUnDocked # 2011-12-17 12:19:22: Sleep state: Undefined # 2011-12-17 12:19:52: Sleep state: Undefined # 2011-12-17 12:20:22: Sleep state: Undefined # 2011-12-17 12:20:52: Sleep state: Undefined # 2011-12-17 12:21:22: Sleep state: Undefined # 2011-12-17 12:21:52: Sleep state: Undefined # 2011-12-17 12:22:22: Sleep state: Undefined # 2011-12-17 12:22:52: Sleep state: Undefined # 2011-12-17 12:23:22: Sleep state: Undefined # 2011-12-17 12:23:52: NightStart # 2011-12-17 12:23:52: Sleep state: Awake # 2011-12-17 12:24:22: Sleep state: Awake # 2011-12-17 12:24:52: Sleep state: Awake # 2011-12-17 12:25:22: Sleep state: Awake # 2011-12-17 12:25:52: Sleep state: Awake # 2011-12-17 12:26:23: Sleep state: Awake # 2011-12-17 12:26:32: HeadbandDocked # System Libraries import time import sys # Zeo Libraries from ZeoRawData import BaseLink, Parser from ZeoRawData.Utility import * # User customizable variables port = '/dev/ttyUSB0' class Callbacks: def logtime(self): return time.strftime("%Y-%m-%d %H:%M:%S: ", time.localtime()) def SliceCallback(self, slice): if slice['SleepStage']: print self.logtime() + "Sleep state: " + slice['SleepStage'] def EventCallback(self, logtime, version, event): print self.logtime() + event if __name__ = "__main__": link = BaseLink.BaseLink(port) parser = Parser.Parser() callbacks = Callbacks() # Add Callbacks and Start the Link link.addCallback(parser.update) parser.addSliceCallback(callbacks.SliceCallback) parser.addEventCallback(callbacks.EventCallback) link.start() # Infinitely loop to allow the script to run continuously while(True): time.sleep(5)
My graph, first part of the night, with sleep appliance
My graph, second part of the night, without sleep appliance
My graph, first part of the night, with sleep appliance
My graph, second part of the night, without sleep appliance
#include <NewSoftSerial.h> const int XBEE_SLEEP = 8; // pin 14 NewSoftSerial mySerial = NewSoftSerial(2, 3); void setup(void) { Serial.begin(38400); mySerial.begin(38400); // Switch pin to digital mode with pullup. pinMode(XBEE_SLEEP, OUTPUT); digitalWrite(XBEE_SLEEP, LOW); while (1) { Serial.println("AB12"); mySerial.println("AB12"); delay(1000); } } void loop(void) { }Arduino IDE is 0.22ubuntu0.1 on ubuntu oneiric. I thought that maybe an update to the arduino IDE broke it when I went from ubuntu marverick/natty to oneiric, but that wasn't it. Then I thought that maybe I damaged my hardware (maybe the clock/crystal is messed up, but then I suppose serial over USB wouldn't work either, and it does work), or if upgrading ubuntu recently broke NewSoftSerial in some subtle way, but I verified I had NewSoftSerial 10, and upgrading to 11 beta did not help. This is where it got wild: if I listened to the serial traffic going to the xbee from NewSoftSerial (I had version 10), and if I used the RX UART decoding pin of my Xprotolab, it could see the traffic ok. If I used the TX pin on the Xprotolab, then the same traffic mostly looked like garbage (actually most characters were lost). Putting 2 stop bits did not help. I talked to Gabriel Anzziani who made the Xprotolab and he said 'The RX and TX decoding are done differently in the Xprotolab. The RX is done by the XMEGA hardware, and the TX is done in firmware.' So clearly, there was a timing issue in what NewSoftSerial was doing at 38400 even though it had worked with the same NewSoftSerial library for about a year and NewSoftSerial 11 did not help. So, out of desperation, I took the nfs backup from my laptop before I upgraded from ubuntu maverick to ubuntu oneiric. While it was a bit hard to get the arduino IDE to work over an NFS chroot, I eventually got it to run, compile and upload my same Hello world serial program. And it worked! From there, it took a binary search to pin this down to the gcc-avr upgrade.
gandalfthegrey:/var/local/src/arduino# dpkg -i gcc-avr-4.3.5-1.deb dpkg: warning: downgrading gcc-avr from 1:4.5.3-2 to 1:4.3.5-1.Yes, that really was the fix :( My guess is that the new gcc-avr changes some compilation timings/optimizations in a way that NewSoftSerial breaks :(