Teeny AVR Media Thing – the Nanotouch

How small can something get and still be useful? This little experiment uses a 96×64 OLED display with a click screen interface that may not be useful, but at least its fun.

Like the last project, this uses an 8 bit AVR. This time it is a Atmega32u4 that is cheaper and smaller than the Atmega644p used in the last project and has 32k flash, 2.5k RAM and full speed USB in hardware.

The screen itself is a beautiful little thing that uses a SSD1332 controller. These can be found on ebay, I have also seen them in China for $2. They are fragile – if you build one of these yourself you might want to buy a few spare screens or wait until I redesign the board so it does not need to flex as much.

The screen sits on 4 tact switches that provide input to the user interface. Movies and UI transitions are streamed from a microSD card.

The 3D demos are an homage to the brilliant yoomp  and of course to John Carmak for establishing the whole first person shooter cultural phenomenon.

Schematics, PCB and source code on Sourceforge at https://sourceforge.net/projects/nanotouch/

 

Advertisement

28 thoughts on “Teeny AVR Media Thing – the Nanotouch

  1. Anonymous

    Peter,
    You are a real code magician to make the AVR run that smooth!
    Looking forward to learning from your code.

    BTW, is the music still – Camper Van Beethoven?

    Reply
  2. Anonymous

    You do amazing things with nothing at all. You are inspiring me to switch my project from an OMAP processor to an Atmega device.

    Reply
  3. rossum

    The Nanotouch actually has an accelerometer that isn’t doing anything right now. I thought shaking and other gestures would mix well with clicking – looking forward to seeing what people do with it.The five cent tilt sensor is pretty cool tho. Not sure i have the manual dexterity to build one that small πŸ˜‰

    Reply
  4. Michal

    Hi, I love your projects so far and cant wait to get the source for this one. I’m pretty new to AVRs and was wondering what resources you could suggest for learning to interface LCDs and transceivers with microcontrollers. Thanks.

    Reply
  5. Anonymous

    Does it have audio out? Seems like this would be fun to keep with my netbook, since the iPT isn’t worth spit in Linux.

    Reply
  6. rossum

    They share the same cpu – the Atmega32u4 – and they are both teeny. The Teensy is thoroughly recommended and is a great little board for prototyping: full speed usb, plenty of pins, leaves lots of room on the breadboard for other stuff, fits inside small spaces etc. 

    Reply
  7. slinky

    rossum, most excellent work! I’ve been working with the Atmega32U4 and like it a lot so far. Did you use the standard Atmega FLIP bootloader, or roll your own? I managed to whack my bootloader, so I worked with Dean Camera (LUFA) to get his bootloader working with the U4. It’s not as elegant as PJRC’s half-kay bootloader, but it’s compatible with the Teensy GUI – which makes programming the chip really efficient.

    Given the Teensy2.0, Teensyduino, and a few other works coming out, such as yours, using the U4, I want to help drive up demand for these chips so that mouser and digikey start regularly stocking them in various chip packages. I’ve been using the TQFP 44 package only because I etch my own boards and don’t want to go much thinner than 8mil traces.

    Here is my “LED Skateboard” project using the U4:

    IMG_0928
    Reply
  8. isidro

    rossum I would like to know a little bit more about these project of yours. I need to know about the video format you are using and the possibility to have audio. Also I would like to know about possible quotes for selling some units of it. Please contact me as soon as you could. Best regards, Isidro

    Reply
  9. Anonymous

    which software u used …..i am trying to do u r previous project (microtouch) u did not mensioned three capacitor values c8,c9….

    Reply
  10. Anonymous

    I absolutely agree with b dirgo, you should think about it πŸ™‚

    It looks like a great device to hack on!

    Reply
  11. Anonymous

    Is there a reason you used the separate boost converter rather than the one built into the SSD1332 controller?

    Reply
  12. rossum

    I was struggling to fit everything on the board and the built-in boost converter actually needed more external parts (12 instead of 7). Besides, I like boost converters.

    Reply
  13. Anonymous

    First of all I need to say that you are awesome and inspire me to continue working on my project that includes 96×64 OLED display and Cortex M3. I have a doubt about the video format, did you use a rmvb converter or something like that? since in your MicroSD sample files I noticed rmv extensions. Thanks in advance and keep with your excellent work

    Reply
  14. Anonymous

    Rossum – you, sir, are a God! If only the major manufacturers would learn to squeeze that much functionality out of devices rather than creating layer upon layer of stratified code, then going; “Nah, we now need 64 bits, and lots of gigahertz and megabytes. Chuck it through an optimising compiler and we can have it on the shelves next week.”. If designers followed the Rossum school of design, we’d have iPhones and media players at a tenth of the price and ten times the coolness factor πŸ™‚

    Reply
  15. Anonymous

    This is just brilliant! As well as depressing in that I can’t do anything like this yet πŸ˜›
    Thanks for sharing

    Reply

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 )

Facebook photo

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

Connecting to %s