Have an RFDuino?  Have a working environment for uploading code to an RFDuino?

Have an RFDuino? Have a working environment for uploading code to an RFDuino? Feel like being a guinea pig? I have an rfduino environment that won’t see/upload to my rfduinos for reasons I haven’t figured out yet, and own’t be able to dig into - but I do have a branch of fastled with tentative rfduino support:

https://github.com/FastLED/FastLED/tree/rfduino

Note that for a variety of reasons it doesn’t currently support dithering - and I haven’t been able to test this code at all on an rfduino (but it is derived from code that I’m using constantly on bare nrf51822’s which the rfduino is based on) - so it may not work at all. Figured i’d toss it out there for the daring amongst you until I get my rfduinos here working.

Update: It works for WS28x and friends as long as your master brightness is 255 and you aren’t using any color correction. The timings for when there’s master brightness/color correction are all off :frowning:

Ignore that - setBrightness/colorCorrection works now as well - however there is currently no dithering.

Well it compiles and runs, although I’m only getting red on my Neopixel ring. The other color channels aren’t showing up. Also getting some odd flickering artifacts.

Though I’m powering them straight form the 3Vout of the RFduino, which probably isn’t the best. Running this: https://gist.github.com/Squeegy/e12b87615c87e88e32b5

Could the 3V power be the source of all this?

Yeah, that’s likely a sign of not getting enough power - for my tests I was giving the leds a separate 5v power line.

Well let me stop being lazy then :slight_smile: Two minutes!

Yep, ok, sorry for the false alarm. Gave it it’s own power supply and it’s purring like a kitten! Anything you want me to test?

You know, now I want to go find where j put that little thing! It’s around here somewhere. I think.

Still getting pretty significant artifacting. At what update rate should FastLED be able to run on RFdunio to WS2812s? I’m updating ~212 times/sec., which I think ought to be well within the range of the hardware.

Honestly - I’d need to see your code to get a feel for what kind of artifacting you are seeing and whether it is code caused or something else (pastebin or gist, please)

Also, Craig aren’t you using apa106’s? I’m not sure what their max refresh rate is likely to be. Also - how many leds are you driving?

Just one LED right now. They’re called APA106’s but they’re advertised as being an LED with a WS2812 built-in so I’m pretty confused by all the various datasheets and specs. I was able to get some bit-banging worked out that is pretty close to within the spec at http://www.adafruit.com/datasheets/WS2812B.pdf (T1L is about 150ns out of tolerance but the other three are all good) – same flicker as with the previous bit-banging code from a third-party, so I’m starting to think it’s the LEDs. The artifacting I’m getting with FastLED will take a video to explain. Let me record and I’ll get back to you with a paste and a video.

The apa106 is a different chip by a different manufacturer than the ws2812 (apa vs world semi), I don’t care how they’re (lazily) advertising it.

It’s entirely possible I don’t actually have APA106s. The behavior I’m seeing is exactly the same whether I wire up the “APA106” or an bonefide WS2812B. The "APA106"s are COM-12986 from SparkFun.

Got it working with an APA102 strip too! This is awesome. I’ve had a project on waiting for this support.

Thank you! (I know it’s not “done” done, yet, but thank you anyway)

Here’s the video. Insert standard disclaimers about one’s one voice yada yada https://vimeo.com/116454889

Also, here’s a really interesting blog post on reverse-engineering the timing of the WS2812*s. Apparently they’re more flexible than not. https://cpldcpu.wordpress.com/2014/01/14/light_ws2812-library-v2-0-part-i-understanding-the-ws2812/

Yup, that flexibility of the ws2812 timing is how FastLED allows for interrupts while writing data out.

Where’s the code? The video is giving me some idea as to the problem but I’d want to see the code as well.

Oh I pasted it to your email rather than the group, whoops.