I’ve finally decided to try out the RLP feature of Panda 2. I’ve came across this interesting post:
Which says like in order to run RLP I need to click a special tab in my GHI account settings and get some code. I’ve tried the links and they are all 404. Could anyone point me to the right routine to enable RLP on my board?
I would also be grateful for examples for Panda 2 (USBizi), as none of the links in that post work.
@ cyberh0me - I’ve just finished reading it. No any word of the “enabling/disabling”, so curious whether that was just a hoax.
The document also features “RLP in Depth” by “Simon from Vilnius” but that doesn’t cover USBizi chipset.
So I am still kinda unsure whether I have everything in here to start my RLP journey:
But you agree that with RLP it will be more reliable and glitches-less, right?
I saw that codeshare item which doesn’t use RLP and is still able to run WS2811, but I also saw lots of comments that it doesn’t work for other people and I am not sure whether it will work for my project where I am deciding on what LED to lit based on the incoming signal from Serial port.
That Adafruit Netduino guide made me curious on using RLP since WS281x are really timing-dependent. But I will definitely try it without RLP first in 2 weeks when I get the strip.
@ Brett - I don’t want to show myself as an ignorant person, but if SPI from managed code is fine for driving WS2813 how comes lots of people had the timing problem with their NETMF boards? Even Adafruit says that.
In short on the project I have in mind:
The application is constantly monitoring the data sent to COM1 Serial port by an external device.
Based on the data received the application decides which LEDs should be lit, what color and brightness and what leds should be off.
Then the data is pushed to the LED Strip
So the model is a precedent-based one. There’s no any stored program or pattern on how to light the Led Strip, everything should be driven based on the interpreted signal from Serial port.
Application receives some data from Serial port and interprets it
Based on the interpretation it needs to lit LEDs №1 with red color, №3 with blue and №8,12,15 with purple
The data is sent out to the Strip (this is still a question on whether I can send the data Led by Led or should create a buffer and send it within some reasonable timing. Like whatever fits the 20ms interval should go as a single data portion)
In 10 secs (may be less, may be more) the new data from Serial is read and interpreted
Based on the interpretation we need to lit LED №1 with green, №4,5 with lime and switch of №8,15
The data is sent out to the Strip
and so on.
Do you see any issues based on the scenarios depicted?
Those are very basic scenarios, so I can imagine the brightness animation to be introduced too.
The critical moment is that there should not be a big latency between a signal sent to Serial port and the Led Strip to light those changes
One more update. The GHI SDK 4.1 documentation contains the following:
USBizi: by default, RLP is not enabled and locked.
Enabling RLP will reserve about 10KB of the user RAM memory for RLP. To enable RLP call RLP.Enable(). This call is only needed once. It will reserve about 10 KB for RLP and then reboot the device automatically. To restore the original RAM configurations without RLP, the firmware must be erased using GHI’s boot loader. Unlocking information is provided online under your GHI account. Unlocking must be done before using RLP each time the application starts.
RLP Address: 0x40000440. RLP Size: 0x000027FC
So I still strongly believe I need to unlock my RLP.
Do we have official GHI guys to answer this question?
@ cyberh0me - I’ve found an interesting post from GHI support in one of the threads:
So I still have a belief. The tough question so far is the USBizi example of RLP code and the makefile and loadscripts what GHI has in the example folder for their other boards.
Do you have a clue where I can get any?
everything which runs NetMF 4.2 doesn’t need a key
Even with 4.1 the only chip needed the key was USBizi
so Panda 2 falls into the two anti-rules here: it is not supported for NetMF, so it’s still 4.1 and it’s USBizi based.
I will give an additional run 2morrow without the Unlock function to check whether it will be the issue.