Desperate times
Here's another nice use case for the µc³ r0ket:
Since it features a build in 3.7V LiPo cell and a fitting charging controller the r0ket basically can be used to charge LiPo or LiIon single cell batteries found in phones, media players, cameras or even toy helicopters.
After I realized that I had forgot to charge my camera and didn't bring a charger to the easterhegg either I was happy that I already had set up one of my r0kets for charging external batteries.
First you have to unplug the build in LiPo battery and attach the VCC (right) and Ground (middle) pins to the appropriate pins of the cell you want to charge. If the battery you are about to charge has a temperature sensor connect it to the leftmost pin on your r0ket. Otherwise connect the left and middle pins with a 10k resistor.
With the voltage l0dable you will even be able to monitor the charging progress.
WARNING: This setup is only meant for single cell LiIon or LiPo batteries. Bad things will start to happen, if you try to charge multiple cells in series. Also keep in mind that lithium cells can burn or even explode if not handled properly, so always be careful and don't blame me if you fuck up your carpet.
Das Easterhegg Easterhegg im Congress Zentrum Basel ist gerade gestartet. Wir wohnen atomschlagsicher(?) drei Geschosse Tiefe in der Zivilschutzanlage neben. im Congress Zentrum Basel ist gerade gestartet. Wir wohnen atomschlagsicher(?) drei Geschosse Tiefe in der Zivilschutzanlage neben.
Um den Nichtschweizern das Umtauschen von Euros in Franken zu ersparen gibt's die schicken Matetaler für alle hegginternen Ausgaben:
Per request, here are some pictures of my micro-m0dule for the Chaos Communication Camp r0ket-badge:
This is probably the simplest possible m0dule one can build. I only used left overs: A white smd-led, a smd-resistor, a little bit of perfboard and a few wires.
Every attendee of the Chaos Communication Camp 2011 get a r0ket-badge. It is possible to enhance the 5-way-switch to get a better look an feel by using a 3D-printer to manufacture a nipple-mouse for it.
Here a some pictures of the r0ket with and without the printed cap.
You can get the .STL at thingiverse.com and print your own:
After the new stable Cyanogenmod version was released last weekend i decided to also upgrade the radio and hboot to modifiedversions that free additional, much needed RAM. Here are a couple of notes I took in the process to help you decide if flashing the new radio-version is worth the risk of bricking your phone.
When I started the radio upgrade I already had install the latest stable version from Cyanogenmod (6.1) and the latest available AmonRaRecovery (v1.7.0).
The following screenshot shows the radio and hboot versions installed before the upgrade:
Available RAM before the upgrade:
~$ adb shell free
total used free shared buffers
Mem: 97884 96188 1696 0 148
Swap: 0 0 0
Total: 97884 96188 1696
WARNING: Do not follow these instruction if you do not understand what happens in every single step. If you brick you phone, it is your own fault.
The whole upgrade process takes about 30 minutes.
fastboot flash radio radio-2.22.27.08.img
fastboot flash hboot hboot-1.33.0013d.img
fastboot reboot-bootloader
fastboot erase system -w
fastboot erase boot
After the Upgrade \~14Mb of additional RAM should be available:
~$ adb shell free
total used free shared buffers
Mem: 112392 110448 1944 0 968
Swap: 20224 652 19572
Total: 132616 111100 21516
The phone feels a bit faster and this is also reflected in the benchmark score:
As you can see, after the upgrade your G1 still won't be able to compete with newer phones like the Nexus One or even the Desire Z. But it will probably run a bit smoother then before.
P.S: Suck it, Moto Droid!
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 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.
The button and the USB cable are wired up like this to the arduino:
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;
}
}
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.
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.
Das hasenförmiges Schnitzel gabs dann danach in der Weltwirtschaft :)
I somehow managed to lost the key for the sliding door to my kitchen. It probably fell into a trash bag, which I sometimes hang on the knob of said door when they are full and ready to throw away.
Of course I have newer locked the door until now, but robbed of the possibility to do so, I was overcome by a sudden urge to be able to lock the if need should arise.
The boring way to get a new key, would probably have involved taking a picture of the lock, show it to a locksmith and hope to find a fitting key.
But since we have build a 3D-printer a couple of month ago and "missing" keys had been printed successfully already, I wanted to try to design and print a new kitchen key.
After measuring the dimensions of the keyhole I started designing the new key in HeeksCAD. After only 3 not so perfect key designs I managed to print a really nice looking, working, new key for my kitchen door.
Here you can see a progress of the design:
From left to right: First design in HeeksCAD | final design as .stl in HeeksCAD | Printpath preview in skeinforge with raft and support structure.
The printed keys: