$100 Bounty for Library Modification To Support 512x64

Hello Everyone,

I would like to request a custom modification for the library to work for my project. I tried to do it myself but I’m not too familiar with the advanced DMA programming. I was wondering if a member of this awesome community is willing to help me out. If the modification works, I’m willing to transfer $100 to your PayPal or bank account.

I have 4 x P2 128x64 1/32 scan LED screens connected in daisy chain setup, so that’s a total of 512x64 LEDs. I know due to limitations of the Teensy and ESP32 this will be impossible to run properly. Is there any other way this can be done though?

I am OK with reducing the colors in order to save memory buffer. Furthermore, I’m also OK with a low refresh rate. This screen will NOT play video animations. I just want to display bitmap images stored on the SD card.

Summary of the modifications:
*) Support for 512x64 (4 x 128x64 32Scan LED Screens) for teensy 3.5/3.6 or ESP32. I’m OK if that means reducing the colors to even single color (Red or Green or Blue).
*) Keeping support for everything else, like DMA, and most importantly controlling brightness.
*) Reading images from SD card

Please let me know if you’re willing to take this task by replying here.

Note: I was able to control the 4 LED screens using Particle Photon microcontroller without DMA or controlling brightness, however, the CPU was very busy, I want to use DMA to keep the CPU free for other tasks. Here’s a picture of my attempt:

512x64 Single Color Green, however, I was unable to control the brightness

I’ve been making progress on a modification of the library for Teensy 4.0 / 4.1. It runs fine at 256x128 with RGB888 color and also supports decreased color depth with increased framerate. I’m hoping to release a new library branch in the next couple weeks. I have not tested SD card access, but I’m planning to do so once I get my hands on a Teensy 4.1.

Currently this requires some hardware modification of the SmartLED shield V4 but nothing too difficult. That situation may also change soon…

Thanks so much for your reply and library. I’m going to give a go and see what will happen. I have a Teensy 4.0 so I hope it works with my setup.

If you are interested, I’m looking for an experienced firmware developer who can help me take my project one step forward. I have posted the job I need over at Upwork. You seem like a good fit and know what you’re doing. Please consider applying and let’s make the development of this library better and add SD card support.

Thanks, but I can’t commit to doing this for payment - I’m just a hobbyist, doing this in my small amount of free time, so it’s not guaranteed when it’ll be finished, whether all brands of panels will work, or whether I can provide ongoing support. And I am not a professional programmer, so my code may not follow best practices. But I will certainly share my progress when the library is in a functioning state. For now, you could try the driver demo in that thread on pjrc.com (which is not yet a functioning library) and see if it works with your 128x64 panels.

I believe marcmerlin said that some of the 128x64 panels have a FM6126A chip requiring a special init sequence which is not in the library yet. I have one of those panels to test (from “Azerone”) so I will try to solve that issue.
Edit: turns out my panel has ICN2038 drivers, so I will not be able to test this.

@ScoreCode you are trying to do 2-4x what is supported by the library. I’m not saying it’s impossible, but honestly an rPi will be better for that size (especially as the refresh rate will be truly unusable with a single channel, you want 2 channels at least):
http://marc.merlins.org/perso/arduino/post_2020-03-13_RGB-Panels_-from-192x80_-to-384x192_-to-384x256-and-maybe-not-much-beyond.html

@easone sorry you didn’t get the chip you wanted. Because of people complaining about FM6126A, I’m guessing they downgraded the chip to the one that works for more people so that the ycan sell more panels. Sorry that I can’t help you get a FM6126A.