-
Notifications
You must be signed in to change notification settings - Fork 1.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
64x64 P2.5 LED panels #120
Comments
I accidentally ended up with one of these as well. Any chance you'll be adding this as an option? I'm using an Adafruit Hat with HW PWM using the jumper between pins 4 and 18. |
Sorry for the delay. Interesting, I have not come across these panels yet. So they have essentially a 5 bit address for the rows [A, B, C, D, E] ? It sounds odd though, as I have seen the trend go more towards 1:8 multiplexing from 1:16. This would mean that there is 1:32 multiplexing so the refresh rate might suffer. So what you need to do:
PCB changes should be simple. Yes, there is a spare buffer and we just need to free GND from the respective pin. If this works, please send a patch or pull request, so that I can integrate that. And please, if you have a link to the source of that panel let me know so that I can get one for my experiments. |
Here's a link to the unit I bought: |
Thanks for the update, I'll try to get one of these. |
I think we are local to one another. If you want it, you can have my module. I won't have a chance to work on this for quite some time. Feel free to contact me at joe AT noroomattheinn dot org. |
I originally bought a couple of these panels via AliExpress: I've just got my hands on a Raspberry Pi 3 so this will be a good candidate for testing as it is a 1.2GHz 64 bit quad core CPU. I'm not sure how that is going to affect the refresh rate or other timing yet. I guess I have a bit of reading and experimentation to do :) Will keep you all posted |
Hi, So I changed one line because I was told that scan is 1/32: Any idea? :) |
@currentlysober your panel looks like a different panel even: it only has A and B, so it is actually 1:4 multiplexing; Can you try with @jpasqua Can you have a look at your panel on the back if it as well has only [A, B] marked or if it goes up to E ? The picture in your Alibaba listing looks like it only goes to B, so this might be what @currentlysober got. @KentWalker Today, I want to implement the 'E' line support. Can you give me a picture of the connector on the back to double-check ? I want to know where the E line is connected so that I can put it on the right pin on the adapter board. You said it is Pin 8, so I suppose it is the opposite pin to B2, correct ? I ask because I got a picture from another user of the library where the E pin was on Pin 4 (and there was some strange 'BLK' - labelled pin which I don't know what it is). |
o (does not yet address adapter PCBs. Awaiting feedback where the outputs usually are).
Hi!
Moreover, I wrote to the company of led modules and they told me that it had 1/32 scanning (this is why I believed -r64 would be correct). It would be nice to make it working because with 3 parallel panels, it would look like LCD screen from longer distance. Do you have some idea? |
@hzeller Sorry taking so long, I'm in one place and the panels are in another. Will have a photo in a day or two |
I don't have such a module @currentlysober, so I can't play with it. Looks like you might almost have gotten it working but need to deduce the pixel-mapping by carefully crafting pixel patterns to understand the internal structure of how the panel is mapping its pixels, so that you can reverse map. |
Hello, I got exactly the same panels as @currentlysober 's. I have tried many different options (chain. rows, subpanels etc.) but nothing seem to work. Maybe someone has resolved this issue? |
I just received a panel with identical markings as @currentlysober and @marcinzdunek . I have not connected it to anything electrically yet, but upon inspection of the board it appears that the address is controlled via shift register, with "A" being the clock and "B" the data. I do not have a "normal" board to play with to confirm the different control strategy, but I will be working on some control code (microcontroller, not rpi) for this over the next few weeks and will report back if I get it to work. |
That would be cool. If you have figured out the way things are controlled on these boards, I can add the relevant code in the library. |
What are the parameters you gave ? Note that the 64x64 display is essentially two chained displays 32 wide and 64 high. So you need to give |
An update on this bug:
|
Hello sir, I'm working on HUB75 for a project, the connectivity with pi3, and i am using your client server code. code: Server: sudo ./ft-server --led-parallel=2 --led-rows=64 -D64x64 --led-chain=2 Client: sudo ./send-text -g64X64+0-0+1 -h localhost "hello" -f fonts/6x12.bdf -c ff0000
*HUB75- P2.5-32S-64X64 consist of additional E data line, wiring is properly connected(Not working properly, some set of upper led wont glow even i made correction -D128x128) Please help me to set different scan rate. is there any other libraries has to downloaded or any other arguments i need to give.. ?? |
@noorabrar1 please don't hijack an existing thread with a completely different question, open a separate issue instead. |
Hi, In my case, I have a single 64x64 matrix. For wiring, I have plugged the panel's connector pins to gpio using "regular" pinout (pi 3 gpio). What can be the problem, and how may I fix it ? Thanks. |
@maitredede this panel does not have the A, B, C, D, E address lines as usual with 64x64 panels, but according to the picture on aliexpress only A, B which indicates entirely different controlling. It is known that these panels exist, but I don't have one to reverse engineer how that works, so they are not supported by this library. You want to get one with 1:32 multiplexing (and all the address lines) to work with this library. |
Thanks @hzeller, I am with the same kind of panel @currentlysober has (line A, B, and NC). If I would like to start writing my own driver, do you know where I can found a doc explaining how theorically I have to play with pins to display something ? Thanks. |
If there was a documentation, it was simple. So you have to do reverse engineering to figure out how it works internally. |
I would be pleased to reverse engineer and make a pull request if I knew where to start. Even contribute to your wiki for docs, and also maintain a c# wrapper... I will try something when I am back home. |
The display constantly has to be refreshed (at least the ones that are supported currently; not sure how the A/B displays work, but pretty sure they have to be updated as well). There is already a c# wrapper, check out bindings/c#. |
Sorry for bothering :) If you prefer to talk privately, or another channel (gitter ?)... I am trying to figure the principle of how a HUB75 should work. I found this page that may explain the bases. If I understand well, a physical panel is divided in half (because of two RGB lines). The lines A, B, C... are the address of a row. In my case, I have only A and B, so only 4 rows can be addressed. The data I can send to the panel is only pixel "on" or "off". This bit is transmitted each rise on clock signal. I transmit one full data row (64 bits) on each 4 addresses. Then I pulse a latch to "go one row down", so in my case, all 4 rows are shifted down by 4. The OE signal is up when displaying image, and down when shifting data. |
In the regular panels OE can also be on while you shift data, but not while switching rows. Also you use the lenght of the OE to do the PWM simulation. In general, the description is right with the A,B,C,... lines, but I don't know how the A, B lines behave. |
Hi,
|
So I haven't heard anything about the library test changes of panels with AB address mode, so I've now submitted my changes, switchable via the flag If you have a 64x64 panel that only has AB in the address lines, try if this allow to make it working. It works for the panel I have tested here, but maybe it needs tweaks for other panels ? (If you need tweaks and have figured out the protocol needed via a scope or otherwise, change |
Hi Hanner Zeller,
Thank you for your great library. I have attach my project video. It's
64x128 RGB LED matrix. And I have 2 question.
1. How we create text to scrolling and change color?
2. How we create animate 64x128 file?
Could you mention me?
Regards,
Anurath
…On Sat, Jan 20, 2018 at 3:26 PM, Henner Zeller ***@***.***> wrote:
So I haven't heard anything about the library test changes of panels with
AB address mode, so I've now submitted my changes, switchable via the flag
--led-row-addr-mode=1.
If you have a 64x64 panel that only has AB in the address lines, try if
this allow to make it working. It works for the panel I have tested here,
but maybe it needs tweaks for other panels ?
(If you need tweaks and have figured out the protocol needed via a scope
or otherwise, change class ShiftRegisterRowAddressSetter in
lib/framebuffer.cc and let me know)
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
<#120 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/AMYFL_2ksus46R_lZxSys5Ezyu5ETZHEks5tMaMlgaJpZM4HlCc9>
.
|
I tried to move a pixel down vertically it seems like the middle part and the lower part are shifted up 1/4 (overriding the upper and second mid part) |
So looks like you have a standard 64x64 display with [A, B, C, D, E], but your supplier did not specify that properly in the documentation. How did you connect the panel ? If you have connected it via the wiring description, you need to make sure to also connect the E line either to Pin 4 or Pin 8 wherever it is on your panel (might need to try). If you are using the adapter, you can choose it via a jumper. If you are using the Adafruit HAT, you have to make a little hardware mod so that it works. |
First, thank you so much for taking all the time you do to continue to help everyone. If you have a donation link, please share! I have the same panels and problems as AsafFisher. However, I only realized the Adafruit tutorial and github link were outdated... after I started. I have a RaspPi3B and an Adafruit RGB Matrix HAT. I have already soldered the GPIO and HUB75 connectors to the HAT. Pardon the newbie question as I am a cable solderer and not used to working with PCB, but do I need to desolder the HUB connector so I can solder a bridge from 24->4 Could I make that connection from underneath the board? How can I be sure I'm supposed to go to 4 and not 8? Can I go to both and sever each connection from the rest of the board? I see the illustration pictures in the 64x64 with E-line on Adafruit HAT section, but do you happen to have a picture of the completed mod? Again, many, many thanks! |
Maybe Ill just sell these displays and buy easier ones to work with. |
If you directly connect the wire, you don't have to unsolder the HUB connector, just scratch the tiny GND connection as shown in the hardware mod. You can test if pin 8 or pin 4 works if the 'E' line is not marked on your matrix board. There is no big harm in trying and then you see. The completed mod is essentially having a wire from the source to the destination. The issue with this is of course, that that line will not be voltage adapted to 5V, so if you are really fancy then you lift a leg of the HCT245 and wire that up, but this is a little more advanced. I really suggest to just solder up an adapter whose plans are provided in this project. If you get another board that only does A,B, be aware that I have only ever tested one of these, they might be different, but would work directly with the Adafruit HAT at least electrically. The Adafruit HAT only does four address lines, so typically you're limited to 32x32 or 64x32 panels. If you want to have the fastest update rate, use 32x32 with 1:8 multiplexing or 32x16 with 1:8 or 1:4. |
I have a (might not small) question for you @hzeller wonder if you could help. THANK YOU very much for your time sir! |
@AsafFisher Reverse engineering on the chip level often works, but is hard for these panels: they often have specific chips for which there are no datasheets anywhere online. So you might find some things, but it is probably not worth it. These panels typically work all very similar. The one you have seems to be a standard one with A-E addressing. If you measure between pin4 or pin8 to GND, you can also see which is grounded, so which is then probably the E. Regarding clock speed: you'd assume (and see in this case) that these are standard 74x TTL chips, so clocking is probably limited into the few tens of Mhz range. Then you know that this can be long chains and observe that the signals are not differential, so that as well gives a clue that this can not be overly fast. And yes, turns out these panels typically can't really get much faster than 10-30Mhz depending on the panel. |
@maitredede Thanks! |
Hi @hzeller |
Is there anywhere to buy the Active-RPi-3xHub75-Adapter E-Line fully built? https://github.com/hzeller/rpi-rgb-led-matrix/raw/master/img/three-parallel-panels-soic.jpg |
Hi @erice194.
I bought one from here :
http://www.electrodragon.com/product/rgb-matrix-panel-drive-board-raspberry-pi/
2018-01-25 12:23 GMT+11:00 erice194 <notifications@github.com>:
… Is there anywhere to buy the Active-RPi-3xHub75-Adapter E-Line fully built?
https://github.com/hzeller/rpi-rgb-led-matrix/raw/master/
img/three-parallel-panels-soic.jpg
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#120 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/ABrwIGcbDVlDrP5AL3CuwwTr5vGbypUxks5tN9ecgaJpZM4HlCc9>
.
|
Hi @hzeller
... with the electrodragon board... Working flawlessly 🥇 Thanks for your time :) |
I have P4 64x64 (icn2038s) HUB75E now not work display blank. |
How did you connect it @birdtechstep ? This one needs the E-line connected to pin 8. |
@hzeller Yes. I connect E-line to pin 8 |
if the display is dark, then there are other problems. Power ? Does the panel have proper voltage on its 5V input ? Did you connect all the GNDs ? |
Yes. I use active-3 set pin 4 to GND, pin 8 to E-line power 5V 40A P5 64x32 (connect pin 8 to GND work) |
So if your panel is an icn2038, probably this is similar to #466 - please continue on that issue with this. |
Thanks you. @hzeller |
@AsafFisher Did you ever get your 64x64 panel working? (The one that says it's (A,B,C) but probably isn't?) |
@hzeller Hi. I have the same problem with strips. , I haven't found solutions. May you check my setup? 2)My 64x64 2.5mm S32 led model https://aliexpress.com/item/32733178058.html Please help. I tested 4 panels and have the same issue with of them. I don't know the way to fix that. Is it possible that all 4 led panels are defective? |
I'm trying to add support for AB address panels to SmartMatrix Library, but I have some hardware limitations that mean I can't use the exact same signal timing that this library does. I can only toggle the AB lines while the latch signal is high, so I would have to shift my pixel data out, set latch high, toggle the AB lines, set latch low. Does anyone know if that would work with these panels? (If anyone is interested in the details, to save pin count and RAM, the address lines are toggled by the RGB lines, and their state is stored in a transparent latch IC controlled by the Latch signal. See IC2 in the schematic) I would love to be able to answer this question for myself, but I've had a hard time buying AB address panels for testing. Ironically these only seem to be sent to people that don't want them, while I've tried a few Aliexpress listings shared by people that got AB address panels and always been sent ABCDE address panels. If anyone can recommend a vendor that will sell and actually ship AB address panels, or is willing to sell, donate, or loan me a panel, I'd be grateful. I'm in the UK, but occasionally visit the US. |
I have had a quick look at some 64x64 P2.5 panels and discovered there is an additional decode line 'E' on the HUB75 interface. This is pin 8, which is currently pulled to ground on the Raspberry Pi adapter.
I would like to add this to the GPIO using either GPIO0 or GPIO1 (since we never are going to use the auto ID, I thought these might be safe). Earlier model B's have a P5 port which brought out GPIOs 28..31 but they don't seem accessible on the R.Pi 2 version. How do I go about mapping the GPIO (in the gpio.cc file) and what do I need to change in the framebuffer.cc file to add an extra row? (DumpToMatrix() only, or is there something else I need to do?)
U2 on the adapter board has a spare buffer (A0/B0), so not much to change on the PCB.
The text was updated successfully, but these errors were encountered: