Hacking an USB LED matrix display?

Status
Not open for further replies.

iExchange

Junior Member
Jul 29, 2013
1
0
0
Hello,

I have just bought a cheapo single-color LED matrix display from China. It communicates with a computer via USB and it comes with a computer software to do all the message editing work. However, I must say that the software is really crappy and it cannot be highly-customized(e.g. it does not allow me to change the direction of the scrolling message, or to select which LED(s) to turn on/off). To solve this problem, I am looking to "hack" into this thing(without opening the display).

I did some research, and I found that basically I have to use the tool SimpleHIDWrite which can be obtained from here. And the VID and PID of the device can also be obtained from the program.

That was my little findings at the moment. I wonder what do I have to do/look for next?

I really appreciate your help!
 

SOFTengCOMPelec

Platinum Member
May 9, 2013
2,417
75
91
To improve my understanding, can I ask a few questions.

Does it come with the source code for the program ?

Does it include a schematic and/or technical details on what/how needs to be sent down the USB ?

Does it come with example programs (possibly in different) languages, showing how to drive the thing from your own software ?

Or does it only come with some kind of installation program e.g. ****.exe, setup.exe etc
I.e. No source ?

If the answer to most of the above is no, then I will be VERY impressed indeed if you ever succeed in getting it to do what you want.

The raspberryPI computer (cheapish) and an optional extra matrix led display for it, is relatively low cost, depending on what you classify as cheap.
It would be likely to be documented, and hence let you do whatever you like with it.
But it is small, uncased (cases available), and you would need to buy a cheap power supply for it.
The matrix display is very small, so it is really for messing about, not for serious use e.g. Public announcements.

Anyway, I don't know much about the technical details of USB.

It's possible that the features you want, are ONLY available inside the display, depending on how they have implemented it.
I.e. It may have chip(s) in the display which do most of the work, and if you want it to work in a different way, you would have to change the stuff INSIDE the display. (I don't know if that is the case or not, but some things are like that).
E.g. It may have a cheap microcontroller in the display which does most of the work, via USB data. Its microcontroller may or may not allow reversing of the display and/or setting individual leds, on or off.
 

MrDudeMan

Lifer
Jan 15, 2001
15,069
94
91
It completely depends on the firmware. You may not have access to APIs that change the things you want to change. For example, imagine there's a function called "writeToDisplay(c)" where c is a character. The USB connection simply sends "c" to the microcontroller, which then passes it to the function to be written. Unless there are other APIs like "setDirection" that allow you to modify how the screen is updated, overriding the USB protocol won't help. In that case, you'd need to modify the firmware on the device.
 

sm625

Diamond Member
May 6, 2011
8,172
137
106
USBlyzer has a free trial that you can use to grab the usb packets. Just use the software that came with the device to send various commands. Then use the sniffer to capture those commands, and make sure you write down what commands were sent. The program has some limited data analysis so you might be able to discern what does what by sending a few different commands and noting the differences in the packets.

But god it seems like it would be easier to simply buy an led matrix display that already has some sort of software api.

Have you tried searching the arduino community for information on the chip inside your dispaly?
 
Status
Not open for further replies.