Sat 27 March 2010

Med-o-Mat

Da soll bitte noch einmal jemand die Nase rümpfen über die seltsamen Automaten in Japan:

`med-o-mat

Med-o-Mat: Für den schnellen Prostatakrebstest zwischendurch...

Read more...


Sun 21 March 2010

Ixus Remote Control Cable

The alternate CHDK firmware I am running on my Ixus 55 gives you the possibility to remote trigger the camera with a modified USB cable.

By attaching this cable to an Arduino board you can control your digital camera in all kinds of projects.

The aim

The camera should take pictures when the arduino "tells" it to do so. Since this is only a proof of concept right now, I will be using a button that is attached to the arduino as a trigger.

Basic layout

The button and the USB cable are wired up like this to the arduino:

schematics

The following code will make the arduino power the USB cable for 10ms when the button is pushed.

/*

*/

const int camPin =  13;    // USB pin 1 connected to digital pin 13
const int buttonPin = 7;   // vcc of button
static int pressed = 0;    // variable to remember button state
int buttonState = 0;       // initialize button state

void setup()   {
  pinMode(camPin, OUTPUT);          // initialize camPin as output
  pinMode(buttonPin, INPUT);        // initialize buttonPin input
  digitalWrite(buttonPin, HIGH);    // set buttonPin to high 
}

void loop()
{
  buttonState = digitalRead(buttonPin);

  if (buttonState == LOW && pressed == 0) {     // as soon as the button is pressed
    pressed = 1;                    // pressed state is set to "1".
                            // This way the following commands will only executed once,
                            // regardless how long the button is pressed.
    digitalWrite(camPin, HIGH);             // set camPin to high
    delay(100);                             // wait for a 1/10 of a second  
    digitalWrite(camPin, LOW);              // set the Cam off  
  }

  if (pressed == 1 && buttonState == HIGH) {            // reset pressed state, as soon as the button is released
    pressed = 0;
  }
}

The camera script

Now the camera has to take a photo as soon as the arduino powers up the USB port. This is archieved by activating the remote capabilities in the cameras CHDK menu at Main Menu > Miscellaneous Stuff > Remote Parameters > Enable Remote and loading this simple remote script.

Read more...


Tue 09 March 2010

New Cam

After my beloved Canon Ixus 55 was stolen with my backpack a couple weeks ago, I have bought a now photo camera. This time I did not get a Canon again but chose a Panasonic with the cryptic name DMC-FT2. Although this cameras functionality can not be extended with firmware hacks like Canon cameras with CHDK (yet) it features another nice trait: The tough housing is supposed be watertight up to a depth of 10m, drop, cold and pressure resistant.

I took some nice underwater/semiunderwater pics already and they look really good:

`isar mit enten

Read more...


Thu 04 March 2010

Easterhegg 2010

Nach zwei Tagen Vorbereitestress und 5 Minuten vor Beginn auf der Bühne fertig gestellten Folien hat der RepRap-Vortrag wie am Schnürchen geklappt. Sogar der RepMan hat trotz massivem Gezicke beim Testen nach dem Umzug in den Vortragsraum brav gedruckt, als es darauf ankam.

ehasenschnitzel

Das hasenförmiges Schnitzel gabs dann danach in der Weltwirtschaft :)

Read more...


Mon 15 February 2010

Osram crashed

`osram crashed

Die LED-Installation vorm Osramhaus läuft also (nicht gescheit) mit Windows. %)

Interessanterweise ist nur eine Seite der Tafeln ausgefallen...

Read more...


Sat 28 November 2009

Upgrading to CyanogenMod 4.2

CyanogenMod has just released his latest stable build featuring the newest Android 1.6 "donut" and many other improvements.

Detailed HowTos are available covering the upgrade procedure, but in most cases a factory reset including a wipe of your user date will be required for 4.2 to work. Luckily it is possible to transfer your call logs, messages, phonebook and application settings to the build without syncing your data with google.

You will need:

  • HTC-recovery-Image and CyanogenMod-ROM as detailed in the wiki
  • unyaffs
  • adb from the android SDK
  • CM Recovery 1.4 Image already installed on your phone
  • hard disk space to backup your sdcard (optional but recommended)
  • SD card reader
  • \~1h of free time
  • and of course a phone supported by CyanogenMod.

I upgraded from CyanogenMod 4.0.4 on a G1, but the following instructions should apply to upgrades from other android versions and phones as well.

One last thing: This procedure worked for my setup, which does not necessarily mean it will work for yours, so backup your data. Oh, and of course I don't take responsibility in case something goes terribly wrong and you brick your phone. Did I mention to backup your data?

Getting started:

Follow the wiki instruction up to step 7.. After the backup is finished, shut down the phone and remove the sdcard. To have the possibility to go back to your current android setup create a backup of your microSD card with your favorite disk image software now.

If your are using Apps2sd you will need to delete all the files on your apps partition. Don't forget to upgrade your apps partition file system to ext3 or ext4 if you have not done so already, because ext2 is known to cause performance issues on CyanogenMod >4.1.99. The data partition on your sdcard can stay unmodified. Next you will have to unpack the data.img from your latest nandroid backup:

Create a temporary directory to unpack the data.img to

mkdir /tmp/android_data
cd /tmp/android_data

Unpack the data.imb with unyaffs

/path/to/unyaffs /path/to/latest/nandoid/backup/data.img

Now insert the SD card back into your phone, boot it to recovery mode again and continue from step 8. of the wiki by performing a full wipe.

Finishing up:

After your phone has booted to 4.2.* and you have confirmed everything is working so far, you can transfer your user data back to the phone.

Copy your contacts to the phone using adb

cd /tmp/android_data
/path/to/adb push data/com.android.providers.contacts/databases/contacts.db /data/data/com.android.providers.contacts/databases/

Copy the database containing your SMS/MMS history

/path/to/adb push data/com.android.providers.telephony/databases/mmssms.db /data/data/com.android.providers.telephony/databases/

Proceed with the user data of your favorite applications after your have installed them:

/path/to/adb push data/favorite.app.name/ /data/data/favorite.app.name

It probably is possible to push the whole data/ directory at once, but I used the chance to clean up the stored data a bit and get rid of application data I was not using anymore.

Final note:

The upgrade to 4.2* made my G1 a lot more responsive and added a couple of nice new features. Sadly some apps are not working on Android 1.6 yet and will force close or not start at all. For example my favorite contact app Voxmobili Phonebook will randomly force close or not launch. But considering the increase in performance and the fuzzy warm feeling when using the latest and greatest incarnation if Android , the upgrade definitely was a good idea ;)

Update:

List of apps causing problems right now:

  • Andnav 2 0.8.8.2 (does not work with donut right now)
  • Phonebook 1.0.6 (does not work with donut right now)
  • k9-Mail 1.010 (has to be set up again, pushing the old setting made it force close)

Read more...


Thu 12 November 2009

Aus dem Zusammenhang gerissen I

Nachdem ich heute früh diesen netten Satz in einem Bericht zu Westerwelles Antrittsbesuch in London auf BR2 gehört hatte, habe ich beschlossen, hier ein neue kleine Rubrik einzuführen:

"Aus dem Zusammenhang gerissen"

Mal sehen wer als nächstes Futter liefert :)

Ach ja, der Vollständigkeit halber gibt es hier noch das nicht mehr ganz so gruselige, vollständige Zitat.

Read more...