Building a PDA from scratch

Extremely powerful ARM microcontrollers have been around for ages now, but only recently have they been available for just a few dollars with a good enough toolchain for some serious development work. [Jose] wanted to develop something awesome with an ARM chip he had lying around, so he built a PDA (Spanish, translation) that can be used as a game console, an oscilloscope, a clock, or a wristwatch. Basically, it’s a portable homebrew computer that can do just about anything.

The hardware is built around an ARM Cortex M4 chip clocked at 170MHz. Included on the PCB is an SD card slot, a JTAG interface, a USB port (only used for charging the battery at this point), and a touch screen LCD controller.

After designing the PCB and enclosure, [Jose] looked around the Internet for a decent GUI library without much success. He eventually found Gwen, a lightweight library for programming GUIs that is easily ported to [Jose]‘s hardware.

So far, [Jose] has a few GUI demos up and running on his homebrew PDA, but nothing very useful yet. Still, the fact that [Jose] can get a full-featured ARM tablet-like piece of hardware off the ground without a team of developers brings a smile to our face. We can’t wait to see the state of homebrew ARM devices in a few years when everyone has the requisite hardware and software knowledge.

Comments

  1. Zee says:

    This is like Linux only for hardware

  2. KillerBug says:

    That’s really impressive…hope Apple doesn’t sue him for using rounded corners.

    • Havel says:

      Is it even possible to have that patented? It’s almost as vague as having the color black or white patented.

    • Melkor says:

      Well … they always have that option since they invented so much great stuff
      (of course I’m not able to tell whether these informations are correct or not ;-) )

      • Mikey says:

        Someone patented making toast. Someone patented swinging (on a swing) from side to side (instead of back and fourth).

        … getting into software, there are a bunch of ridiculous things patented, including displaying two windows with scrolling text and a mouse cursor…

        Amazon had storing credit card numbers in a database patented for a while…

        I *honestly* would only be a *little-bit* surprised if rounded corners were patented — it would explain a lot about Microsoft’s “Metro” design language.

  3. Jay says:

    This is how I imagine the future.

    Everyone walking around with a self-made device, capable of so much more than anything that can be bought from a store.

    Brilliant.

  4. MorbiousStone says:

    This is awesome and loooks about as easy as i thought it would be in this day & age, time to make killer Arm consoles /pc or what ever, for fun and profit

  5. Bojan says:

    Have you guys checked if Apple holds the patent to that?

    • JB says:

      “Have you guys checked if Apple holds the patent to that?”

      How can you know if they do? Their patents are so ridiculously broad that they may indeed do or their lawyers make it so.

      As KillerBug said above, he used rounded corners! :P

  6. n0lkk says:

    Impressive. I’d say could be a candidate got a commercial venture, but aren’t PDA somewhat redundant to carry around these days? Even my dumb phone can function as a basic PDA. Only it’s clumsy interface make it a pain to use in that manner. My guess it that few geeks will duplicate this, opting to use the commercial products they own, saving the geek time for other projects. So geek dreams of a future where everyone will be carrying homemade devices are just dreams that probably won’t be realized sorry.

    • DainBramage1991 says:

      You may be thinking in the wrong direction. This is a giant first step towards a completely open source smartphone (yes, I understand about FCC type certification in the US and similar laws elsewhere) or tablet computer. PDA’s may be outdated, but they were a critical part of the design lineage of today’s common portable devices.

    • DanJ says:

      As we see from this, the hardware for a handheld, rich-GUI device is simple and inexpensive. I’d say the “product” would be a simple device like this, expandable, with a sweet plastic case and Li-ION battery — and, most importantly, — a development environment that makes creating GUI-driven embedded applications easy, just like the Arduino environment has done for simpler embedded devices. Perhaps a compile environment like the arduino, a sweet graphics/GUI library and a built-in layout tool that abstracts the form.

      IMHO this would open up an entire new realm of maker-created gadgets with awesome user interfaces.

    • JB says:

      Maybe he should add a cellular module and turn it into a smartphone :P

    • Havel says:

      If a web browser was built on top of this or something, and the chipsets came with wireless support, it could end the age of the cellular phone. JavaScript and HTML could make up interface, and other web technologies, like ViOP, could be integrated. As far as connectivity goes, where can’t you find a wireless signal these days?

  7. Alan says:

    The chip is STM32F4 (had to look at photo of PCB to read it). Someoen recently posted about using one of these in an “updated” Bus Pirate… I prefer the idea of the LCD used here.

    Maybe the two designers should collaborate, and give us a Bus Pirate with an LCD screen.

  8. fartface says:

    No smartphone. He needs to fill a niche t hat has nothing to fill it. Doomsday nuts and the Prepper screwballs would KILL for a small “PDA” that runs off of AA batteries

    • Witek says:

      Do they propose any alternative means of voice/data/text transmission that would replace GSM?

      • welshmullet says:

        CB radio?
        EU Walkie-talkie bands at 5 watts?

      • kaidenshi says:

        Amateur radio TNC? I haven’t messed with that stuff in a while (though I am still licensed) but I believe the hardware has shrunk to the point that it fits inside a handheld rig that hooks up to a computer now. I can see throwing together a QRP transceiver board with a TNC module, that together would fit inside the case of a device like this. Use software to control the radio, similar to Bluetooth, and you have instant network access if you log on to a node with an Internet bridge.

  9. Treehouse Projects says:

    This is awesome! Congrats dude! Can’t wait to see how this develops further.

  10. MorbiousStone says:

    lotta haters on this article, are you paid trolls or just freelance? lulz

  11. mr_jrt says:

    The problem with wireless stuff is that you’re rather limited by regs and battery life. Cellular would be nice, but realistically you’re only viable option would be to rip the guts out of a 3G dongle and somehow interface with it.

    Alternatively, perhaps something could be built that used bluetooth or wifi that used opportunist mesh networking of some sort to propagate messages (kinda like how the 3DS works I guess). Obviously needs a certain density…but in the engineering dept of a uni campus should be possible :)

  12. Matt says:

    Not trying to hate here; it’s cool, but by the time you build something even half as capable as most 1st gen android phones, you’ve already sunk more money into it than you could get an android phone for.

    • Witek says:

      Correct, but building your own PDA gives you control over many aspects. An android phone would have greater power consumption than a Cortex-M4-based device. You can connect almost any peripheral that fits inside the enclosure, IrDA, DECT, GPRS modem – you name it.

  13. rasz says:

    This is a nice project, except that hardware is almost 100% same as $30 smt32F1 dev boards so nothing new there.

  14. cgimark says:

    The issue I always run into is interfacing the larger LCD displays. You can get some with I2C or SPI but that results in slow throughput when updating higher resolutions. That usually means you have to use parallel data connections, 8 for each color, and that takes up a lot of pins.

  15. Chris C. says:

    With the purpose of this being to create an entirely self-made PDA for your own personal satisfaction, I’d say this is very well done!

    There are several aspects of designing such a device I’d consider particularly difficult, or require specialized knowledge. I’m NOT counting having to write all your own apps, because if you’re doing this, you love to code and probably WANT to write your own apps. ;)

    First there’s the filesystem. Good old FatFS to the rescue here.

    Next, the GUI. Coding a full-featured and stable GUI from the ground up takes a LOT of time. I didn’t know about Gwen until now. Have been looking at it for a few hours, and it’s an impressive piece of work. I’m glad to see such a thing exists, and may use it in a future project.

    Finally, you’ll probably want the ability to add peripherals, like a wireless connection. And it would be best if you could use consumer USB peripherals, rather than more expensive hobbyist modules. Sadly, as far as I know this remains largely unsolved; you’re forced to use Linux if you want support for more than the simplest USB devices. I hope this will change in the future.

    Also, a simple relational database built into the OS would be really nice, and ease app development. Something like the old Microsoft JET engine, but designed for easy porting like FatFS and Gwen. Anyone know if something exists that will fit this bill?

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Follow

Get every new post delivered to your Inbox.

Join 92,374 other followers