Hey Guys - long time no see.

Hey Guys - long time no see. Been out of the game for a few months but diving back in

paging @Yves_BAZIN @Marc_MERLIN @Sam_Guyer and others - for the 8 way parallel output on the ESP32 using RMT, I have a couple of questions (I think Sam/JAson’s implementation is new since the last time I was playing with this)

Are there only specific pins on the ESP32 that work for parallel output (and in a specific order?) Also, do the strip lengths need to be the same, as they were in the original parallel output implementation?

Lastly - you guys have any sample code using 8 way parallel out that I could take a peek at to make sure I know how to declare it correctly in setup?

Thanks!

I just finished all the solder connections on a 2400 pixel vest and the 4 way parallel I used for my last one isn’t going to cut it :slight_smile:

I’m not using esp32 for parallel output (I use esp8266), but IIRC virtually all the pins on ESP32 can be remapped. Can’t help you with sample code unfortunately but I’m sure Yves can

@Marc_MERLIN thanks Marc. You using 8 way on the 8266?

Most of the 8266 boards I have around are D1-minis so don’t have all the pins accessible. Plus im eager to crack into my stockpile of esp32s :slight_smile:

@Sam_Guyer - sorry to snoop, but I just creeped on your reactive table code and saw in your setup function you defined your strips by adding them sequentially, with the fasted.addleds function taking parameters for the total number of leds, the starting led, and the ending led for each strip

is that how you implemented the esp32 RMT parallel functionality?

I’ll give it a whirl, but wanted to double check before I started soldering my 8 lines into my esp32 board :slight_smile:

Thanks!

@chad_steinglass The default mode for ESP32 output is parallel, even if you add the strips sequentially. It’s one of the cool benefits of having a separate “processor” that actually does the work. Just add 8 strips as you would for sequential output – you can assign them to any of the working pins. The RMT driver will push the bits out in parallel when you call show().

@chad_steinglass really eager to see that vest

chad steinglass
continuing to work on this… @Sam_Guyer - I can’t seem to compile - getting an error : rmt_register_tx_end_callback not declared in scope from clockless_esp32.h. am I missing an #include that I need?

thanks!
REPLY

@Yves_BAZIN - here’s a look at the construction - haven’t actually turned it on yet (still working on getting code to compile! - this is my first time using an esp32) missing/deleted image from Google+

And here’s my data lines and power on the back. I decided to hook up the shift register directly in the vest. Not sure yet whether that’s a good design decision or notmissing/deleted image from Google+

@chad_steinglass OMG how are you gonna power that ?

@chad_steinglass for your shift register I would not let it like that. If it gets wet …
Once you know it’s working then put it in a small box at least :slight_smile:

@Yves_BAZIN the PLAN is to just use a USB power bank at 2.1A.

My theory is that, because the perceptible brightness of the LEDs has diminishing returns for how much power you give them, adding more pixels doesn’t actually require more power if your goal is a set amount of total brightness. And my other vest with 1400 pixels runs fine off of 2.1A, so I’m hoping I can do the same with this one and just limit the max current.

the 1400 pixel vest will run for several hours on a 20,000 maH battery pack at a brightness that is reasonably obnoxious for anyone close to me :slight_smile:

if it doesn’t work, I’ll break my power bus in half and run it off of two separate battery packs

@Yves_BAZIN yes - for sure - once I get it working then everything is getting potted in e6000 and put in little plastic boxes and will get tucked inside the vest :slight_smile:

@chad_steinglass WOW !!! I agree with Yves… how will you power that thing ???

And if you actually manage that… they’ll stick you in a tall tower and ask you to rotate slowly to guide ships !!

@Yves_BAZIN any ideas on my

rmt_register_tx_end_callback not declared in scope from clockless_esp32.h

error?

I’m sure its something super simple and I am missing an #include for the board…

@chad_steinglass interesting and indeed you’re right between full and half brightness I do not see that much difference. How did you ‘stick’ the strip to the vest ?

@Yves_BAZIN the strips are stuck using a combination of the regular 3m sticky tape that comes on the back of the ip30 strips and an additional bead of e6000 run down the back of each strip. I don’t think it will last forever and I anticipate I’ll prob have to repair it a little every once in awhile, but it seems to work pretty well. I’ll prob supplement with small zip ties in the problem areas if the strips start separating or acting up

@Yves_BAZIN @Sam_Guyer Sorry to spam you guys!

I THINK I figured it out… I must have had an old esp32 hardware def… so I cleaned it out and reinstalled from the esperiff github, and now it compiles!

so, one baby step down. Now to solder up my controller, hook up my 2x 5 pin JST connectors to make it modular (power, ground, and 8 control wires) and give it a go. Should have my first test of my XY mapping running in an hour or so :slight_smile:

Countdown to launch … can’t wait to see the result

@chad_steinglass Ok, great! I try to keep my ESP core up to date, but maybe I should document which version it depends on.