adafruit / RGB-matrix-Panel

Arduino library and example code for the 16x32 RGB matrix panels in the shop
http://www.adafruit.com/products/420
304 stars 145 forks source link

Big Adafruit GFX Demo for RGB-matrix-Panel #32

Closed marcmerlin closed 7 years ago

marcmerlin commented 7 years ago

I spent quite a bit of time writing an Adafruit GFX demo for Neomatrix, and was able to port it trivially to RGB-matrix-Panel. Please see this video of the demo https://www.youtube.com/watch?v=9yGZLtewmfI , jump to 3:25 to see the demo on the RGB-matrix-Panel

This page describes the demo in more details, with screenshots: http://marc.merlins.org/perso/arduino/post_2017-04-24_Adafruit-GFX-on-NeoMatrix-and-RGB-Matrix-Panel-Demo.html

One nice feature is the ability to display big bitmaps by scrolling them around: image

This was tested on Arduino Mega. It may not work on Uno due to lack of RAM (except maybe if you turn off picture buffering), It does however depend on https://github.com/adafruit/Adafruit-GFX-Library/pull/39 which is the only way to display multicolor pixmaps in a backend independent way.

marcmerlin commented 7 years ago

This code now works with Adafruit-GFX git, thanks for the merge.

marcmerlin commented 7 years ago

@PaintYourDragon https://github.com/adafruit/RGB-matrix-Panel/pull/32/files#diff-be538d0a20a7e03e3a8e5cecaaadba66R469 (line 469) is the small change I had to make for progmem to work. Hopefully this looks reasonable to you, and I've now just tested this code with your upstream updated GFX lib and it works fine.

marcmerlin commented 7 years ago

Howdy again, assuming you don't have time to review this, since it doesn't change any other code, do you mind integrating it as is?

marcmerlin commented 7 years ago

Hi @PaintYourDragon are you the person who can help with this standalone demo merge, or could you recommend someone else?

ladyada commented 7 years ago

hiya, we don't have an ETA on when this will be merged but can take a look next week :) thanks!

marcmerlin commented 7 years ago

HI @ladyada, friendly ping :) There is the same CR in https://github.com/adafruit/Adafruit_NeoMatrix/pull/9

ladyada commented 7 years ago

hiya, yep! no ETA thx! please dont ping, it just fills everyone's mailboxes:) use thumbsup votes instead

ladyada commented 7 years ago

@marcmerlin hiya this is verified with a MEGA please test on an UNO as well so we can update the comment

marcmerlin commented 7 years ago

Thanks for the merge. Actually I'm pretty certain it will not work on Uno due to lack of RAM. The demo uses additional RAM to load the matrix to display, and this library very so barely works on Uno as is, so when you add a matrix of bits, it just tips over the limit https://github.com/adafruit/Adafruit_NeoMatrix/pull/9 is the same demo for neomatrix and that one does work on Uno as long as your neomatrix panel isn't too large (I have tested that).