Playing With A Mini Led Panel

Dur­ing one of my trips to China I found some Mini Led Panel in a shop.

They are mini led dis­plays that are able to scroll up to 5 five 250 char­ac­ters mes­sages. They come with a USB cable and some Win­dows soft­ware that allows you to pro­gram them. I actu­ally bought two of them for some­thing like 15 USD.

I was quite intrigued by the con­cept of using them to dis­play alerts on my per­sonal com­puter or show direct mes­sages com­ing from Twitter.

Unfor­tu­nately the appli­ca­tion that comes with the device will only run on Win­dows and it actu­ally does not allow me to use them as i would like.

In the first place I tried to under­stand how these devices were built.

I found that they are based on the Pro­lific PL2303 USB to Ser­ial Bridge con­troller. This is quite famous for these kind of device. You can find the datasheet here. Luck­ily enough there is a Mac OS X device dri­ver than you can use to drive this device.

The next step was to reverse engi­neer the pro­to­col used to pro­gram the device. Actu­ally there is no doc­u­men­ta­tion at all com­ing with the prod­uct. Since it is basi­cally a ser­ial device it had not to be that hard to under­stand the pro­to­col doing some traces. Unfor­tu­nately on a Mac there are no free appli­ca­tion to trace com­mu­ni­ca­tion over ser­ial interface/​Actu­ally the Mac does not have any ser­ial inter­face at all. More­over the appli­ca­tion to pro­gram the device only works in Windows.

I have a Win­dows XP vir­tual machine run­ning on Par­al­lels on my Mac so I decided to trace the pro­to­col in that envi­ron­ment. From the long past I remem­ber that I used a great util­ity from Sys­in­ter­nals, now Microsoft, called portmon.exe. This is a fan­tas­tic small util­ity that you can use to trace and debug ser­ial com­mu­ni­ca­tions on a Win­dows box. That was just what I needed.

After a cou­ple of hours of debug­ging and a few traces I came out with a good under­stand­ing of the pro­to­col. There are still some unknowns that I was not yet able to decode from the pro­to­col (e.g. how to send bitmap images) but that was not crit­i­cal for the real­iza­tion of my idea.

The next step was to write a Max OS X appli­ca­tion to pro­gram the device. I just wanted to write a very sim­ple com­mand line util­ity that I could user from any shell script on the sys­tem. So I did. I started from the Ser­ial Port exam­ple in the Apple SDK and wrote some very basic util­ity imple­ment­ing the protocol.

Finally I decided to use the mini led panel to dis­play men­tions com­ing from Twit­ter. I just mod­i­fied a bash shell script to do just that at 15 min­utes inter­vals. I remem­ber I had seen a very sim­ple shell script on Linux Jour­nal so I used that as a start­ing point.

So, after four hours of work I had my hard­ware and appli­ca­tion up and running.

I have noticed that a lot of sim­i­lar devices share the very same pro­to­col so you may use the same code to drive them.

If you wish here is a link to the com­plete Xcode project where you will find the source code of the com­mand line util­ity and a copy of the shell script. I am putting these files in the pub­lic domain so do what­ever you want with them. Down­load mlpup­date Xcode project here.

Finally, here is a photo of the device working:

mlpupdate

  • http://www.freemicrosoftpointscodes.com/ Free Microsoft Point

    Wow, that is an awe­some project. Not if you could get a hold of the man­u­fac­turer of the prod­uct you could prob­a­bly make a pretty good profit off of some­thing like that.

  • http://midnightwriter.net Andrea

    That’s great!! I agree with the other com­ment that you could make a good profit off of that!!!

  • http://www.wheyproteinsupplements.com Whey Team

    That’s most def­i­nitely a fas­ci­nat­ing con­cept. I’ve got no idea of the ins and outs, but, it’s def­i­nitely interesting!

  • http://oowwl.com/ anna

    So inter­est­ing in enjoy­ing.
    Sim­plic­ity that does not make so many dif­fi­cul­ties.
    Yep, it is right.
    Thanks for good info.

  • http://techbostonworks.com/ hen­rie

    Well-​well-​well-​.…
    It is good prac­tice for shar­ing.
    I like it so much for get­ting it in the future.
    Good job.
    Thanks.

  • http://the-finance-online.info Pamela

    Amaz­ing gad­get, I would love such a panel in my room, could you tell me where I can get it from, I mean a webstore.

  • http://www.guidehut.com johnny

    Well done. I Have a sim­i­lar thing hooked up to my PC but i used an off the self inter­face board.
    great work on the reverse engineering.

  • http://www.ocgames.com Game­rooms

    Thanks for shar­ing the Xcode project. I am done tak­ing a look at it and I have to say that you have some tal­ent man.

  • http://www.xamres.com/ xam­res

    That’s great!! Iam search­ing for like this projects.Thanks for shar­ing dude

  • http://www.cheapwirelessinternet.org Mark

    These LED pan­els are totally cool. Do you know if they make any­thing like this in the US? Would love to get one for my sons room to fit with the theme we designed the room with. Thanks!

  • http://1stblogger.com/ 1stblogger

    Amaz­ing gad­get, I would love such a panel in my room, could you tell me where I can get it from, I mean a webstore.

    • Alessan­dro

      I have never been able to find one of these online yet.

      I used to buy a bunch of them each time I was in Shang­hai for busi­ness trips.

      Maube some chines online gad­get store may carry them.

  • day

    Pls email me your Xcode , i am unable to down­load ‚the link dosent have the project code.

    • Alessan­dro

      The link to the source code is now work­ing. It was my fault when migrat­ing the blog. Have fun!

  • day

    Hi Alessan­dro
    Thank you very much , i am able to down­load now

    Thanks again
    Dayal

  • day

    HI Alessan­dro
    the Photo of the work­ing device is not work­ing ‚i wiould like to take a look at it

    Thank you again.