I inherited a Motorola/Zebra PocketPC device from around 2006 complete with qwerty keyboard that was (and is) destined for disposal a while back. It's actually quite an impressive little device (decently large screen, SD and SIM card slots, some kind of camera-based barcode reader, an easily replaceable battery, among other features). The device doesn't have a way to upgrade to have decent version of Windows Mobile OS and there is no software for the version it has so I wanted to use the shell for some thing else and took it apart. 

I thought perhaps I could fit a decently small SBC in it, replace the screen, re-use the keyboard and do something half clever with it. Perhaps someone more clever could do something with it. I wanted to use an x86-based system (even though a Pi Zero seems like the most obvious choice). 

After taking it apart and seeing how incredibly slim that PCB is I concluded I would likely have to start over from scratch with my own case "inspired" by the Motorola WM device and that it was pretty obvious I would be on my own for a mini-keyboard solution as well.

Since I needed a way to make a small keyboard work with this and space was extremely tight and since I already own a LattePanda v1 with convenient onboard Arduino (Leonardo) I decided to use that as my base.

The Arduino is significant because it can emulate HID devices like keyboards, mice and gamepads. I don't know if the gamepad part will come into play yet. Just saying it's there as an option.

I don't actually have any experience with Arduinos in general but I do have a collection of video tutorials and other notes. 

The problems I face - some of which would be less of an issue with a Pi-based device - include:

  • connecting a mini keyboard for input for the device
  • connecting some kind of sound output/speakers (not necessarily a priority)
  • a way to access I/O like the SD card reader, USB ports, the actual power button and optionally the Ethernet jack
  • a decent heat exhaust/ventilation system as Atom chips are much hotter than ARM, probably using a little fan.
  • a way to connect and power the LCD screen

And possible the most significant step: powering both the device and the screen with a battery that isn't larger than the device itself and doesn't way a pound by itself. Because Panda is going to take a lot more mAh than a Pi by itself at idle, never mind during high CPU use and with an LCD screen and fan involved.

I actually found what could be a solution I haven't found a reference to anyone else trying yet. I don't know if that's because it's a unique idea or because it's so obvious that it's not a good idea. I also don't care if the battery lasts that long. Even running for an hour would be something of an accomplishment.

My idea is is use this pack of four Lithium rechargeable batteries that have charging built into them (1500mAh each according to the product page). I think something of a new product: AA batteries with a micro USB port built-in for charging off a normal USB port. The split 4-micro USB cables connected to one USB-A connector that came with them for charging simply connect "ground" and "+5v" to the connectors of the USB-A port. Okay that seems obvious in retrospect. I just didn't know if I could daisy-chain them together or if each individual connector had to connect to the same one ground and 5v pin. 

Micro USB 5pin OTG Adapter Connector

This idea came about from not knowing how to pick the right battery with right amount of capacity that said it can deliver 3+ amps. Those Lipo batteries with matching safe charger circuits, for instance, only seem to ever go up to 1 or 2 amps. And that seems like the sort of thing I would probably want to make sure was done properly to prevent over-volting, under-volting, excess heat from the battery and explosions in general.

Thus, a conveniently sized AA battery with a charger already on board seemed like a good solution.

I also found these little...

Read more »