Tuesday, September 1, 2009

How to Fix a Dead IPod Touch 2G - The Secret

Can I tell you how much I hate technology?


An upcoming trip to Europe pushed us over the edge to buy a Ipod Touch 2G. We figured it would help out with entertain us, give us the opportunity to perhaps get email on the run and use some cool apps like maps and travel guides as we tour London and Paris.

Well, yesterday was a very exciting mail delivery day when the new Ipod Touch arrived from Amazon. Right out of the box I marveled at how easily it came alive and synced up with my Itunes software and a few games and apps I had downloaded. I was praising Apple for its advanced usability compared to my very much hated underpowered Vista laptop which is the only computer in the household that works with Itunes. My old reliable desktop computer running XP never can load Itunes because it won't install Quicktime. But anyway back to the story.

So everything was peachy keen that is until I was tempted to upgrade my Itunes software for $9.95. At first I was a bit outraged at the idea of upgrading for money but I went for it anyway.

Then my brand Ipod Touch 2G simply dies. Blank screen. No reaction to any button pressing, wouldn't even be recognized as a USB device. But this story has a happy ending and after hours and hours of trying to revive it let me just jump to what worked for me.

First I tried the following suggested methods of reviving a dead Ipod Touch:

http://www.apple.com/support/ipodtouch/troubleshooting/ipodtouch/

But I had better luck with the "DFU" method:

DFU mode is a mode where the iPod Touch/iPhone will be made to force a restore of the firmware into whatever version firmware it is given.

Getting your iPod Touch/iPhone into DFU mode is somewhat tricky, and it may require some patience/practice because timing is essential to get it to DFU mode and not into recovery mode.

1. First, Open up iTunes, plug in your iPod Touch/iPhone to the CPU's USB port. Turn on your CPU's speaker and make sure it is loud enough that you can hear it.

2. Hold down the Home button (top left for iPod Touch and top right for the iPhone with the screen facing you) and the Power button (located on the front bottom of your iPod Touch/iPhone) simutaneously, until the screen goes black and the device turns off. (past the red slider/slide to power off screen)

3. Now let go of the Power button, but continue to hold the Home button. Your iPod Touch/iPhone should have turned off and the screen should not be on.

4. After around ~10-20 seconds, you will hear a noise (beep/ding) from your CPU as if it had just recognized a new hardware device, now iTunes should recognize it in DFU mode.

5. After iTunes recognizes the iPod Touch/iPhone, let go of the Home button otherwise it will go into recovery mode and you will have to do the entire DFU process over again.

6. You will know when you have put your iPod Touch/iPhone correctly into DFU mode when the display is blank and that you do not have anything on your device.

My problem was first that it took many many tries to get into the DFU recovery process and when it did get started it would stop about half way through and give me an error message (error 6 to be precise).


MY SECRET FOR FIXING A DEAD IPOD TOUCH

The solution I found for fixing my IPOD Touch was to do all the above BUT with my Zone Alarm virus checking software turned off. It seems that during the Ipod Touch restore process that it needs to communicate with Itunes headquarters about half way through and the security software was blocking the connection. With the security software turned off I had no problem restoring my Ipod Touch.

I hope this helps anyone out there with a dead Ipod Touch especially anyone thinking of throwing theirs against the wall. Did I mention I hate technology?

Wednesday, July 15, 2009

Meet the Arduino Electronic Brick



I've been working with Mindstorms NXT robots for a few years now and I'm just getting into the Arduino open source microprocessor platform. Trying to learn all about it has been exciting as well as confusing will plenty of forehead slapping moments of DUH! its a lot easier than I thought.

With the Lego Mindstorms NXT you had one software package (well there are a few other ones available) and the familiar Lego building system to work with and it was available from a single manufacturer. Even the prices of the hardware seems to be fixed in stone.

The challenge of Arduino is that it is an open source platform which means that any one can design their own version of the product. So there are official versions and tons of modified versions of the main processing board as well as a ton of things called "shields".

Shields are basically add on boards that help to interface with the Arduino boards. There are all kinds of them, prototyping shields, robotic shields, Ethernet shields. Each adds features to help out with various projects. But you still have to jump into the electronics workbench type stuff like soldering or using solderless breadboards. Believe me this is the path I started down, collecting a bunch of stuff for my workbench until I found a shield that makes working with Arduino a lot like the plug and play sensors and motors of the Lego NXT world.

The Electronic Brick Sensor Shield attaches to the Arduinio board and provides jacks for a series of Electronic Brick components. They simply plug in without breadboards or soldering.




"By using electronic bricks, you may connect Arduino compatible boards easily with various digital, analog and I2C/Uart interfaces. These the breadboard-less firm connection are prepared to extensive modules like poteniometers, sensors, relays, servos...even buttons, just plug and play.

Each terminal module has buckled port with VCC, GND and Output, which has corresponding port on the sensing board, with a plain 2.54mm dual-female cable you may start playing already. Buckled brick cables are like cement for bricks, make the connections easier, secure and more professional looking."



The Electronic Brick, an Arduino sensor shield for an easier Arduino hardware interface for beginners and even old pros.

This is great for beginners or kids learning to put together Arduino projects. It simplifies the hardware end of things but will raise the costs of the project. The Sensor Shield sells for $20 and the individual components cost more than loose parts would but they can easily be reused like the parts in the Lego NXT robotic kits. Perfect for schools or workshops.

There are a wide range of sensors and components (leds, push buttons) available including:

Sharp distance measuring sensor(Analog)
PIR motion sensor(digital)
Multi Rotary sensor(analog)
Temperature sensor(Analog)
Mercury tilt switch(digital)
Light sensor(Analog)
Playstation2 analog joystick(Analog)
Lighting Emitting Diode(A/D)
Small push button
Large push button
Capacitive Touch module
Buzzer
Sound module (microphone with amp)

2pin plugable terminal module(digital) This brick is a simple plugable terminal module, you can easily plug some other stuff into this wiitout connect the wire to the terminal every time.

ADXL330 Acceleration sensor(analog)
Carbon monoxide Sensor(MQ7)
Electricity meter(Analog)
Gas sensor(MQ5)
Rotary angle sensor (Analog)
Smoke sensor(MQ2)

5V Relay module (digital) - This Brick uses Omron G5AL relay module to control high-votage elecrical devices. (maximum 250V).

Magnetism switch(Digital)

Lots more than what is available on the NXT plus you can add more sensors to the Arduino and the Arduino is cheaper than the NXT. With Arduino you can afford to build standalone projects and not have to take them apart.

I found my Electronic Bricks on Ebay (seller "pokaralake" also known as Robot Cart) and from http://www.seeedstudio.com


The Electronic Brick series comes from FlamingoEDA

Tuesday, July 14, 2009

Getting Started with Arduino

First off what the heck is Arduino?

"Arduino is a physical computing platform based on a simple I/O board and a development environment that uses the Wiring library to simplify writing C/C++ programs that run on the board. Arduino can be used to develop stand-alone interactive objects or can be connected to software running on a computer (e.g., Adobe Flash, Processing, Max/MSP, Pure Data, SuperCollider). Currently shipping versions can be purchased pre-assembled; hardware design information is available for those who would like to assemble an Arduino by hand."

In other words Arduino is an easy to use, hobbyist programmable little computer that can be used for all sorts of projects from interactive lights to robots.

The best way to learn about Arduino and the possibilities is with this inexpensive guide written by one of the people who created Arduino:



After reading the book you'll want to dive in and try out the examples yourself! The confusing part is assembling all of the components you'll need. This kit will give you a great start and can be used to create the examples from the book and beyond:

Monday, July 13, 2009

Snake Wrangling for Kids: Learning to Program with Python

Snake Wrangling for Kids is a free ebook (CC licensed) specifically written for teaching kids ages 8 and older how to program, using Python.

This one is meant to be printed out and stapled together and given to a child as a gift. (and not necessarily your own child, either)

It comes in 3 different flavors (Mac, Linux, Windows) and 2 different versions (for Python 3 & Python 2).


http://code.google.com/p/swfk/downloads/list

Thursday, July 2, 2009

Zion Plug - Scratch to Physical World

Zion Plug is a simple vb.net program which allow you to connect your Scratch program to the physical world. Zion Plug just serve a message router purpose which route the message to and from any connection connected to the Zion Plug.

http://scratchconnections.wik.is/User:Fm/Zion_Plug


Scratch to Twitter Interface via Python

Scratchtweet includes a small Python file and a bare-bones Scratch project that together allow you to send tweets to a Twitter account.It is based on a commonly used python-twitter API. What use is it? Well, you could attach a sensor board with probes sunk in the dirt of a fern and let it tweet you whenever it needs to be watered (i.e., by sensing resistance), or maybe you could come up with a two-person chess program that shares moves via Twitter.

http://scratchconnections.wik.is/User:Chalkmarrow/Scratchtweet

Wednesday, July 1, 2009

Catenary: Arduino 2 Scratch Interface

Catenary is a small, easy-to-use program that allows a project written in Scratch (http://scratch.mit.edu) to communicate with an Arduino board (http://www.arduino.cc). Catenary is written in Processing (http://processing.org), and runs as a Java application. It takes advantage of Scratch v1.3’s ability to send and receive broadcasts and global variable messages. Catenary acts as a middleman, shuttling certain messages back and forth between the Arduino board and Scratch.
http://scratchconnections.wik.is/User:Chalkmarrow/Catenary

http://scratch.mit.edu/projects/CatenaryProjects/257547