Home - Programming - IDTech Swipe Won't Work

You're coding up an integration to an IDTech Shuttle and you can't figure out why the darned thing won't wake up. Here's what you should check.

  • Check the name and contents of the idx_unimagcfg_default.xml file in res\raw. Don't have that file? Go get a copy out of the SDK from IDTech. Don't have the SDK? Stop, contact them, get the stuff you need before you proceed.
  • Check that you're using the latest UniMag library. The version I'm working with right now is IDT_UniMagSDKAndroid_v4.2.jar.
  • Make sure you have a "uses-permission" entry in your manifest for the android.permission.RECORD_AUDIO permission.
  • Check the idx_unimagcfg_default.xml to see if it has your device model name listed. In fact, if you haven't yet, you really should look at that file to understand what the IDTech is actually doing. It's working like a modem, and it has to fine-tune the audio properties of the audio jack in order to work properly.
  • And while we're at it, are you sure the audio jack on your device is functional?

None of that worked? Time to dig in a little. Try your code again, this time paying attention to the logcat output. IDTech is pretty good about logging problems as they occur. For instance, the permission problem will surface as an AudioFlinger error -1. If there's no error, then there's something you're not doing. You have to instantiate the uniMagReader with a reference to an object that implements uniMagReaderToolsMsg and uniMagReaderMsg, and that object should be handling messages. If you're confused about this, check the example code in the IDTech SDK.

If you still can't figure it out, drop me a line.

Todd Grigsby