Skip to main content
Topic: Controller Board for Adafruit's Large RGB Matrix Displays (Read 177610 times) previous topic - next topic

Re: Controller Board for Adafruit's Large RGB Matrix Display

Reply #180
Louis

I have a corner case for you. I'm playing around with code that draws geometric shapes on the SmartMatrix using parameters that are randomly generated. If I generate a filled triangle with vertices at:

x1: 16
y1: 16
x2: 16
y2: 16
x3: 16
y3: 16

The triangle drawing code hangs and never comes back. I've attached a short sketch that illustrates the problem

FYI

Re: Controller Board for Adafruit's Large RGB Matrix Display

Reply #181
Thanks for the heads up Craig.  I'll add this issue to GitHub Issues and make sure it's fixed before the next release.

I knew something was causing code in the random shapes section of the FeatureTest sketch to freeze but I couldn't narrow it down.

Re: Controller Board for Adafruit's Large RGB Matrix Display

Reply #182
I need to order another batch of parts and boards for the SmartMatrix Shield in the next couple of week, and I'm considering taking the opportunity to get feedback and make a few improvements to the shield.  What would you guys like to see in the SmartMatrix Shield V2?

I may not be able to make all or any of these improvements in the short term, but it will be good at least to have a discussion about what people would like to see in the future.

At the top of my list based on the great work Craig has done is an SD card socket on the board to load GIF animations.  With the right connector like PJRC's Teensy 3 Audio Adapter uses, this could fit underneath the Teensy, and the card would be accessible when the USB cable is disconnected.  This is actually a rather big change as it means the shield is no longer purely a through-hole kit, and now there is some surface mount assembly that will need to be done by a factory, and testing to make sure the socket was soldered correctly.

[attachment=0]
Next on the list is more of a bug fix: a pull-up resistor is needed on the OE line so that the display doesn't show garbage when a sketch isn't running.  On some panels there is a pull-up resistor built into the display, but on most that I tried there isn't this resistor, so you get random bright lights on one line of the display during programming or if the sketch hangs.

What else should I add to the list?

Re: Controller Board for Adafruit's Large RGB Matrix Display

Reply #183
You might want to add three pads/holes for connecting an IR detector.

Re: Controller Board for Adafruit's Large RGB Matrix Display

Reply #184
I second Craig's suggestion.. IR Pads, and the CC3000 port would be amazing as well

Re: Controller Board for Adafruit's Large RGB Matrix Display

Reply #185
Good suggestions guys.  I finally had time to add the IR detector to my shield and it was more difficult than I thought it would be as I had to make adapter cables to share the 3.3V and GND pins with the SD card.

Any other features?

Re: Controller Board for Adafruit's Large RGB Matrix Display

Reply #186
I second the CC3300 setup too! I have to look how to even connect a CC3300 to the teensy. Ill be getting my first teeny in a few days!

Re: Controller Board for Adafruit's Large RGB Matrix Display

Reply #187
If anyone that has wired up a CC3000 breakout wants to share what they did to hook it up and run a sketch, I'll add notes to the documentation.  I have a breakout but it will probably be some time before I get a chance to hook it up and share what I did.

Re: Controller Board for Adafruit's Large RGB Matrix Display

Reply #188
Louis.. When I get a chance, I want to play with a rotary controller / switch for the menu system, which may be a substitute for the IR..

Re: Controller Board for Adafruit's Large RGB Matrix Display

Reply #189
@KPR, Do you have a link to the part you are thinking about using?  I don't know what kind of inputs you need for that device.


Re: Controller Board for Adafruit's Large RGB Matrix Display

Reply #191
I’ve been working on a new version of the SmartMatrix Shield, not meant to replace it, but to be an option for those that want to maximize the capabilities of the Teensy, while connecting to a matrix display.  Let’s call it the SmartMatrix Shield Pro.  This board will have the advantage of pinout/functionality, but the original shield will have advantages of size, cost, and ease of assembly.

[attachment=0]

I thought about all the things I might want to connect a Teensy to in combination with a matrix display, and made the most efficient use of the pins that I could, maximizing functionality.  The pinout uses the SMT connector that is on the bottom of the Teensy, and requires it to be installed, as some of the signals for driving the matrix are now on those pins.  All the pins not used for driving the matrix are bought out to the edge, and grouped by functionality with extra power and ground pins brought out to make wiring peripherals up very easy.  There will be a Micro SD card adapter on the board, and space for plugging in Adafruit's CC3000 module directly.

I played around with a couple layouts and this is my favorite.  The right side looks similar to V1 of the SmartMatrix Shield, but notice all the pins on the Teensy are brought out.  There is a longer row of pins for expansion on the bottom, and more pins on the top.  The Micro SD card slot is on the left edge, and the header for the CC3000 is placed so the module can sit on top of the card slot, with the antenna portion of the module extending out beyond the board, to avoid interference.

I spaced the expansion pins out into logical groups, but this isn’t the most efficient use of space on the board.  It’s possible to group them all together and to bring the left edge and SD card closer to the Teensy.  That saves some board space, but there is little advantage when using the CC3000 module as it will stick out just as far.  I’ll go over the pinout in another post, but there are connectors like a 3-pin IR detector connector with a GPIO plus 3.3V and GND. 

I’m least happy with the placement of the connector for the matrix ribbon cable.  Laid flat, the cable will either cover the CC3000 module, probably interfering with WiFi reception, or go back over the USB and power connectors which should probably be going away from the the matrix panel, not toward it.  I’d also prefer the connector to be at the edge of the board, to give the option to use a double-row right-angle male header instead of the shrouded header.  The ribbon cable plus the shrouded header makes for the tallest components on the board, limiting low-profile mounting options.

Regarding mounting the board, I’m not considering mounting the shield directly to the display using the female 2x8 connector with a board this large.  I do plan on adding several mounting holes, one next to the PWR OUT connectors, and another, possibly two near the Micro SD slot. 

Here’s a PDF of the design and Eagle BRD file.  I’d love some feedback if you’re interested in this design, especially on the ribbon cable connector placement.

Re: Controller Board for Adafruit's Large RGB Matrix Display

Reply #192
This looks fantastic!  My only feedback is it seems the SD card might be hard to access under the WiFi module.  It'd be nice to have it on the same edge as the USB and power connectors, for exposing through an enclosure.

Do you know if it'd be possible to use a Bluetooth module instead of WiFi?  I need to order one and try it.

Re: Controller Board for Adafruit's Large RGB Matrix Display

Reply #193
Hi Pup05, good comment, that's something I overlooked but that will be important for a lot of people.  Unfortunately I don't see an ideal way to add a card near the other connectors without just making the board massive.  If I put the card holder under the Teensy itself like in the photo about 10 posts above, but it would take away 2 ADC pins and the AREF pin.

To put some more context about the missing ADC pins, the two that would go missing I intended to be used with potentiometers for brightness or volume control as two possibilities (this shield will be compatible with the Teensy Audio Adapter, connected through jumper wires).  There are still two more dedicated ADC pins available from the Teensy, plus the ADC/DAC pin.  The two missing pins would still be accessible by soldering wires or pins directly to the Teensy itself, so this isn't a horrible loss.

Any thoughts on this?

Re: Controller Board for Adafruit's Large RGB Matrix Display

Reply #194
[quote author="Pup05"]Do you know if it'd be possible to use a Bluetooth module instead of WiFi?  I need to order one and try it.[/quote]

I assume you mean Bluetooth LE, like this module: https://www.adafruit.com/products/1697

It would use the same pins as the CC3000 module, plus one more GPIO.  The pinouts don't match, so it would require a jumper cable.  If there's room on the board to make pinouts for both modules I'll do it.