Project update 6 of 14
It’s been a while since our last update. Sorry that it took so long. We promise to do better in the future.
The main reason why we haven’t posted an update recently is because we’ve been trying to get as much done as possible before the beginning of the Chinese New Year celebrations. We did manage to get a big chunk of the parts ordered that we needed for the early bird tier production except for the Pmod PCBs. The factories in China had different cut off dates for when their factory would be closed for the holiday and we ran out of time before people left. Now that the holiday is over we’ve started to get shipping notifications for orders that were on hold during that time, so things are moving again!
Parts for the Early Bird tier production
The Pmod PCBs for the Early Bird tier production have shipped as of February 14th! So we will be getting into production very soon.
As part of the Early Bird tier fulfillment preparations we also ordered LED Panels right before the Chinese New Year. After receiving the panels from China we were met with a surprise. It turned out that the new panels we got not only have different mounting brackets on the back but a fully different chips on the back of the panel. The earlier panels were using ICN2037 shift registers that behave normally and you can just shift data into. The new panels are using FM6126 shift register chips instead.
The FM6126 panel shimpent
The new chips require an init sequence that configures and enables the shift registers. If you are interested in the details you can read this amazing issue thread on Henner Zeller’s GitHub.
photo of the back of the new FM6126 LED matrix panel
It took us several days to figure out what exactly was wrong with the panels and what needed to be done. At the end we got them to work thanks to some reversing and the above mentioned GitHub issue. We know how to drive them and we have a working state machine to initialize the panels (Yes we will add the init sequence to tnt rgb_panel design too, don’t worry. If you get those panels you will be able to run Sled demos on FM6126 panels. ;) ). That said because the LED Panel kit is meant to be a simple target that you can develop your own HDL for, as a learning experience and exercise, we think we will have to find the older ICN2037 panels that do not require initialization to send out to everyone. We are not comfortable sending these new panels to you as part of the crowdfunding campaign. We will offer the FM6126 panels for purchase through the 1BitSquared website if you want to use them with the existing HDL designs that include the init function or if you are up for a challenge. :D
We are currently still talking with LED Panel suppliers to make sure we get the correct panels with the ICN2037 shift registers. More updates on this coming soon.
This part is taking way longer than we expected or ever experienced before. On February 14th we finally had a breakthrough with our part reseller, and we are waiting for the part quote to come back. It turns out that Outlook decided to quarantine the emails we were sending them. After a bunch of phone calls we finally figured out what was going on and things are now moving forward.
While all this logistics stuff was going on we were not wasting any time.
We have developed two new Pmod designs that you will be able to get through our 1BitSquared stores in the future.
After looking and playing around with the 3bpp DVI Pmod our friend tnt(Sylvain Munaut) pointed out that it should be possible to easily modify the circuit to support one additional bit that selects a low and high intensity color set for each pixel.
Screenshot from the Jingle Disk - IBM/Tandy Version - Thoughtware, 1985
If you were born sometime in the 80’s or earlier you might remember the CGA graphics system. It was providing 16 colors where 8 were low intensity and 8 were high intensity.
CGA color palette
Our solution is not exactly CGA because we do not have the brown color but just low intensity yellow instead.
Our RGBI color palette
The wiring is pretty simple, where each of the color pins still only drives 3 inputs of the DVI driver chip. We want to limit the amount of pins we have to drive to avoid drive issues at higher screen resolutions and clock speeds.
Another idea from Sylvain was to decrease the pin usage on the iCEBreaker when you want to control LED Panels. In collaboration with the good folks in our Gitter Channel we have developed and improved a single Pmod circuit.
To achieve that we needed to save at least 6 signal pins. We were able to do that with two changes.
Firstly, instead of driving the RGB0 and RGB1 signals separately we have added a D-FlipFlop to store one set of RGB data at the falling edge of the input clock. Basically Double Data Rate (DDR) the RGB data to the panels. This saved us 3 pins on the Pmod.
Secondly, instead of driving the five Address lines directly, we introduced a ripple counter that only needs a clock and reset signals. This saved us another 3 Pins.
The changes to the LED Panel drive design on the FPGA should not be very big. But it opens up an extra Pmod on the iCEbreaker to either drive another chain of LED panels or use for some other input or output Pmod!
The prototypes of the Pmods are now on their way to us and we will let you know how things progress. :)
Last but not least we have finally installed and launched an iCEBreaker forum.
Piotr is posting some smaller project updates and what he is working on there to complement his updates on Twitter.
We invite you all to join our forum and ask your questions and exchange knowledge there. If you are one of the lucky ones that already got their hands on an iCEBreaker tell us about your projects and what you’ve built!
Again thank you to everyone for your support and patience, we can’t wait to get all the rewards out to everyone!
Thank you to those who backed our campaign and to those that decided to pre-order an iCEbreaker kit after the campaign was over.
We promise we will do our best to keep you up to date more often. We are moving ahead on assembling early bird rewards and will update you when early bird shipping starts.