Electronic – Interfacing an ATTiny84 to iPhone from headphone jack

attinyiphonemac

I'm trying to create an adapter and an application for the iPhone that works very similarly to the Square Up card reader.

The basic communication I'm trying to achieve:

  1. Plug in adapter to phone headphone jack
  2. Start app
  3. Input setting for adapter – the onboard processor will hold two memory location:
    • fixed memory settings that cannot be changed
    • memory settings that can be changed from the iPhone app
  4. Upload setting to adapter – Adapter returns a signal to phone to display "Ready" sign
  5. Remove adapter from phone
  6. Data is stored in adapter for external use.

The long term goal is to have the adapter be able to communication with iOS, Android, Mac and PC devices via the headphone jack. For version 0.1 – I'm content with it just working on an iPhone.

I will be using an ATTiny24 for the prototype and then the ATTiny84 for production. I was wondering if anyone else has tried creating such communication protocols and if they have any advice/tutorials/resources I may be able to use to design the hardware around.

Thanks a lot! Any and all help is very appreciated!

Best Answer

Look into Project HiJack, which establishes 2 way serial connection to the iPhone via the earphone port and harvests power! The source code is open source.

They use Manchester encoding for modulation, a brief analysis of their code is on my blog.