Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • Feb 09 20:41
    Makuna closed #338
  • Feb 09 20:41
    Makuna labeled #338
  • Feb 09 15:34
    moritz89 opened #338
  • Jan 30 19:47
    Makuna labeled #336
  • Jan 30 19:47
    Makuna assigned #336
  • Jan 30 19:46
    Makuna closed #337
  • Jan 30 19:46
    Makuna opened #337
  • Jan 27 18:20
    Makuna labeled #336
  • Jan 27 13:50
    mriksman opened #336
  • Jan 24 18:34
    Makuna closed #335
  • Jan 21 21:57
    stoefln opened #335
  • Jan 21 08:10
    Makuna closed #334
  • Jan 21 08:10
    Makuna opened #334
  • Jan 21 07:24
    Makuna closed #310
  • Jan 21 07:23
    Makuna closed #325
  • Jan 20 09:39
    mriksman closed #333
  • Jan 20 09:28
    mriksman edited #333
  • Jan 20 09:10
    mriksman opened #333
  • Jan 18 04:31
    rdragonrydr labeled #332
  • Jan 18 04:31
    rdragonrydr opened #332
Mike Dunston
@atanisoft
great!
rich mac
@_g_Host_gitlab
Good day all . I am curious if one of you pixel programming gurus could look at a open source Arduino Sketch for tls 3001 pixels and see if it is at all possible to convert it to work on either the esp8266 or the esp32 . Unfortunately I am green to programming , just a novice experimenting yet .Thanks greatly in advance for reading this and look forward to all replies .
Michael Miller
@Makuna
Do you have a link?
rich mac
@_g_Host_gitlab
Post 14 and 15 is the code
rich mac
@_g_Host_gitlab
It would be ideal if these pixels could be output via a data pin rather than serial :)
Michael Miller
@Makuna
mmm, still not sure what the data packet represents. That code is sending a single value 12 bits wide (a packet of 13 bits). Not RGB that I can tell. I found a spec sheet for the chips but they don't mention what the data format is.
Mike Dunston
@atanisoft
@_g_Host_gitlab per the datasheet it appears to only support serial data input to the IC
rich mac
@_g_Host_gitlab
What I mean by not serial , is having to use the tx rx for communicating .in/out
Mike Dunston
@atanisoft
you should be able to use SoftwareSerial or similar to move it to a different set of pins
rich mac
@_g_Host_gitlab
I believe this is one of the more difficult pixels to deal with , something about manchester encoding .
Mike Dunston
@atanisoft
manchester encoding isn't too big of a problem
there are many libs available to help encode that but with this IC the encoded data is not documented in the datasheet at all
rich mac
@_g_Host_gitlab
I believe there are only 4 North American vendors that sell ethernet controllers for these pixels . Primarily for christmas light displays . San Devices e68* was the first and I believe he use bitbanging method .
rich mac
@_g_Host_gitlab
These pixels do not strip and pass data . the all receive the full load then communicate to each other what channel/pixel # they are .
Michael Miller
@Makuna
I found this old reference in forum post, but no confirmation it works (https://auschristmaslighting.com/threads/tls3001-protocool-question.2100/)
rich mac
@_g_Host_gitlab
BarnabyBear's Arduino code works for the ethernet method . I was chatting with him yesterday and asked if ok I post the question here . He gave blessing lol
also note , this is via e131 udp packets
Michael Miller
@Makuna
@_g_Host_gitlab BTW, bitbang on esp8266 or esp32 is not likely to work if you do wifi at the same time. On both these platforms, while I support bitbang for testing purposes, I do not recommend them and they have proven to fail to IRQ issues.
rich mac
@_g_Host_gitlab
I assume King copper will remain the only avenue for tls 3001's for now
Michael Miller
@Makuna
Add an issue to track it, a reasonble spec will help a lot. If it gets enough up votes or donations toward it I will put more effort to it.
rich mac
@_g_Host_gitlab
Thanks kindly for even pondering this request . The tech is a decade old I know though these are excellent and reliable pixels .
Michael
@sparkplug23
Hey. I was just curious, is there any way to make the same animations control additional LEDs without the extra memory usage. For example, using an animator size of say 50, but having that 50 send the output in multiples. So a smaller peice of code could run many hundreds of pixels, without needing to use the animator etc of the same length. Usage case being possible christmas lights, where it doesn't matter if the same pattern repeats every 50 leds. Previously with bitbanging ws2801's, I would loop and send the same led pattern out as many times as needed before latching.
Michael Miller
@Makuna
@sparkplug23 Sure, I do this all the time. Think of an animation channel as something that controls one Animation, rather than One Pixel. Then decide how that running animation effects the displays. I believe the cyclon example sketch does this.
Michael
@sparkplug23
Ah great! I will check that example out :) I ended up needing to use an esp32 for the extra memory requirements with my christmas lighting :)
Hmm, so this would just need less of the animation portion of the code, but would still require the correct size for neopixelbus?
Michael
@sparkplug23
I suppose the best way of doing repeats of 50, would be using setPixel in the animation for pixel number 0,50,100,150 then 1,51,101,151 etc
Just thinking out my options :) Neopixelbus is fantastic btw, I tried writing my own animations before on a basic arduino and it was a nightmare for memory.
Viktr
@BbIKTOP
Hi!
could you advise me something minimal to run the lib? Like stm32 or something alike
Michael Miller
@Makuna
@BbIKTOP What do you mean minimal? Power? Cost? Arduino Nano often can be found cheap and is pretty power efficient. An esp8266 is a great way to go with WiFi and also cheap.
@sparkplug23 Sounds like you are on the right track. Once you get something working, point to the code and I can provide some feedback.
Viktr
@BbIKTOP
@Makuna Mean size and cost. Found stm32 arduino core, even several but didn't tried it yet. I want to make a board, now I'm choosing uc for it. Would be great to get an advice. I do have several boards with esp but it's overkill with it's wifi etc.
Mike Dunston
@atanisoft
@BbIKTOP that would more depend on the features you need in the mcu. Stm32 is a great platform and supports a lot of features that are not available on most arduino platforms.
Michael Miller
@Makuna
Stm32 is supported, but the "method" that supports it is just bitbang, so no hardware support specifically for it.
The NRF52840 I do have hardware support for, but I am unsure of how cost effective it is.
Michael
@sparkplug23
@Makuna Thanks. I will work on the changes soon, my code is rather large so will take some time properly splitting all the sizes out. Really just more of a programming question, but if I had declared the "NeoPixelBus" and "NeoPixelAnimator" originally in the header as null pointers, then used "new" during the init process to define the actual size, what would be the best way of changing their size during run time? I am guessing if I just reassigned the "new NeoPixelAnimator" to the pointer, I would end up with locked up memory (if I was shrinking the size). So maybe I need to free it first?
Michael Miller
@Makuna
rich mac
@_g_Host_gitlab
GOOD DAY
Whoops
I would like to request a little code help with respect the NeoPixelBus Library
I get this error using code that works with the adafruit_neopixel library but fault with the neopixelbus library . no matching function for call to 'NeoPixelBus<NeoGrbFeature, NeoEsp8266DmaMethodBase<NeoEsp8266DmaSpeedWs2812x> >::SetPixelColor(int&, uint8_t&, uint8_t&, uint8_t&)'
rich mac
@_g_Host_gitlab
strip.setPixelColor(i, packet.property_values[j], packet.property_values[j+1], packet.property_values[j+2]);
that is the line of code I am trying to execute . If anyone has an idea of a work around would be appreciated .
Michael Miller
@Makuna
pass the property values to a RgbColor constructor, like
strip.setPixelColor(i, RgbColor(packet.property_values[j], packet.property_values[j+1], packet.property_values[j+2]));
rich mac
@_g_Host_gitlab
Thank you for the quick reply . I get a new error now . class NeoPixelBus<NeoGrbFeature, NeoEsp8266DmaMethodBase<NeoEsp8266DmaSpeedWs2812x> >' has no member named 'setPixelColor'
rich mac
@_g_Host_gitlab
Capitol " S" thankyou once again ! now to test your lib with e131 :0) first time .
Michael Miller
@Makuna
Yeah, all the public methods start with caps ;-)
rich mac
@_g_Host_gitlab
Ureka it works !!
How do I change color order ?
I will check in you WIKI . Many thanks for your help .