Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Post
  • Reply
Sockser
Jun 28, 2007

This world only remembers the results!




I'm looking to run somewhere between 100-150 neopixels off an arduino.

This is going to be controlled from a game I'm coding up in python, and I basically want the LEDs to just chill in a standard sine wave pattern, and just switch colors depending on some events in the game.

I assume I just need to send some serial data to my arduino and then parse it from that side, yeah? Could send it as a series of .... 12 bytes, I guess, to preserve some latency, or I could define the colors as an enumer and just send over a single byte. Is there a simpler way to do it?

Also, shouldn't matter which board I use, right? I've got a couple teensy's and an Uno and a Mega sitting around, probably just gonna use the teensy and solder it to a perf board

Sockser fucked around with this message at 01:41 on Oct 22, 2017

Adbot
ADBOT LOVES YOU

Sockser
Jun 28, 2007

This world only remembers the results!




Yeah I’ve got a strip of 144 running the code I want (mostly ripped from adafruit) and it’s been running 24/7 on my desk for a long time without any significant problems, just I’m switching the colors with a button press instead of from serial, wasn’t sure where it’d get weird

And my final product is going to be something like
4 rings of 12 in series = 48
2 dense strips of about a foot each run in series = ~ 90
2 sparse strips of 3 ft each = 112

So a total of 250, I guess?

And then I’m gonna have a dedicated power supply on them

I could split it out into two separate arduino if it becomes too heavy for one to handle

Sockser fucked around with this message at 19:52 on Oct 22, 2017

Sockser
Jun 28, 2007

This world only remembers the results!




I had a pretty sweet setup going on



I pushed some new code to the Teensy, hit the reset button, and I must have shorted something because I immediately blew the Teensy

Here’s what my setup looks like, the only culprit I can think of is that I’ve got the external 5v power and the Teensys ground connected? Or maybe I bridged the 5v external to the teensys 3v out or something? No clue. Not looking forward to desoldering all those loving pins though.



E: wait I forget why I ran that jumper from the teensy’s 3v out to the main positive rail, but I totally could have bent the end of that jumper wire into the ground pad that’s right next to it. That’d probably do it, right?


e:

Sockser fucked around with this message at 06:07 on Dec 29, 2017

Sockser
Jun 28, 2007

This world only remembers the results!




Splode posted:

That is a lot of Arduinos! May I recommend you replace the breadboards with veroboard or some other more permanent solution? Looks great though.

Those are adafruit permaprotos, regular perfboard laid out like a standard breadboard. They’re great and pretty much all I ever use.

Sockser
Jun 28, 2007

This world only remembers the results!




This is probably the thread for this
Bit of a seizure warning on the video though

https://www.youtube.com/watch?v=ihJoaqTi790

Context: each set of two digits is a 45 neopixels strip, running approximately right to left, have run it off an Uno, an Adafruit micro, and currently a Metro Mini

I just replaced the strip in digits 6+7 because it was doing the same thing, though I was able to avoid it by turning off the pixel where it looked like things were loving up

I’m running on a 5v, 10A power supply, with power and ground running roughly to the middle of each strip

Possibilities off the top of my head-
1. It’s actually a bad strip in digits 7/8, it’s just cascading to the middle of the next strip instead
2. Maybe I got some 2811s mixed in with my 2812s

E: and it does the same with the neopixel library or fastled

Sockser fucked around with this message at 01:52 on Oct 13, 2019

Sockser
Jun 28, 2007

This world only remembers the results!




Literally just never lighting the pixel that is a problem stabilizes things more or less completely


It’s just..... weird? That it’s almost in the same spot that the last bad strip I had in there was loving up, like off by... 3 or 4 pixels, I think.

Maybe I should throw a resistor on the data line just to be safe.

Sockser
Jun 28, 2007

This world only remembers the results!




babyeatingpsychopath posted:

Baud rate on the ESP8266s is 76800 for some reason, so I bet the ESP32 has some arbitrary baudrate that's in the datasheet somewhere.


Try injecting power in parallel at the bottom of each digit. I've had long strips brownout in the middle and they get garbled like that before just going solid red at the end.

I've got power injected every 47th? pixel, so the point where it fucks up is uhhhh 34 pixels after power, which should be fine
Especially because it's that digit in particular and not anything farther downstream

e: power is bi-directional, duh, so it's actually only 8 pixels away from a power point

Sockser
Jun 28, 2007

This world only remembers the results!




Hey this seems like a great time to jump in with my big dumb neopixel project

I'm hoping to build a giant marquee, 7 rows x 75 columns, so I can scroll text across it and whatnot. Works out to under 40amps, so I've got a 40amp supply on the way. This is kind of an order of magnitude smaller than Harvey Birdman but this is still way bigger than any project I've worked on. I know I need to do a power drop every ... 30 LEDs? or so, but any other gotchas I need to look out for with this?


e: using 2811s, so not technically neopixels, though I doubt that makes a difference?

Sockser fucked around with this message at 03:57 on Oct 26, 2019

Sockser
Jun 28, 2007

This world only remembers the results!




It’s gonna be 10ft wife, using ping pong balls as diffusers, so using prebuilt LED panels would either restrict my size quite a bit or crank up my pixel count by a lot

I think I’m switching it up to be 8 rows of 64 vs 7 rows of 75 so I can just use a fade candy to manage everything for me. I think I’m looking at <24A at 70% brightness for my whole setup, but I still ordered some power buses and fuses today just to make sure things are more manageable and safe

Sockser
Jun 28, 2007

This world only remembers the results!




I might be past the purview of the Arduino thread and need to step into the electronics thread at this point but here's a lovely Fritzing sketch of my project--



That pile of barrel jacks on the left is standing in for the three paired outputs on my 40A power supply, and I've got two 3in-10out power bars to distribute power to the LED strings down there on the bottom
(The fritzing library is kind of lacking)

Does this uhhh make sense? It feels like it makes sense but this is definitely stretching the limits of my confidence.

Sockser
Jun 28, 2007

This world only remembers the results!




Cojawfee posted:

Why do you have a 30A fuse going to your raspberry pi? Your pi will die long before that fuse even realizes there's any current going through it.

This is a fair point. Don’t know what I was thinking there.
And realistically I should just hook the pi to the bus bar supplying power to the neopixels to simplify wiring.

Sockser
Jun 28, 2007

This world only remembers the results!




babyeatingpsychopath posted:

If you have a 3-in 10-out busbar, why not connect all 3 ins and then 8 outs to your 8 strings? How is the data line(s) run? I see 3 data lines, is that like 2x200+1x112 or something?

I would wire the power up into the center of each string, with a power and ground line to each string. Fuse each line, too. A 10-pack of 5A automotive fuses will protect any individual string from melting the whole thing.

Remember: power can be in parallel, so make it as parallel as possible, with the fewest pixels on a string as possible. If you center-feed, you have 32px on each ribbon. If you end-feed, you have 64px.

Are you suggesting putting a fuse on the +V to each light strip vs putting a fuse on the 3 lines out from the power supply? I suppose that would save any individual line from dying, and I do have a 10 pack of in-line fuses that would otherwise go to waste.

W/r/t power delivery to neopixels--
If I'm pulling 3A per strip@5v, theoretically over this span I should be running 14AWG minimum (I'm using 12AWG for my power lines), but obv the contacts on WS2812s or the wires on WS2811s aren't nearly that thick. Is this just a thing that people ignore with huge projects or is there a reason that it doesn't matter there?

Sockser
Jun 28, 2007

This world only remembers the results!




Feeling like a mega dummy right now, especially because I've done this before--

code:
const int pinLeftUp = 2;
const int pinLeftDown = 3;
const int pinRightUp = 23;
const int pinRightDown = 22;
 
void setup()
{
  Serial.begin(57600);
  Serial.println("BEGIN:");
  pinMode( pinLeftUp, INPUT_PULLUP );
  pinMode( pinLeftDown, INPUT_PULLUP );
  pinMode( pinRightUp, INPUT_PULLUP );
  pinMode( pinRightDown, INPUT_PULLUP );
}
 
void loop()
{
  if (digitalRead(pinLeftUp) == LOW){ Keyboard.set_key1 (KEY_W); }
  if (digitalRead(pinLeftDown) == LOW){ Keyboard.set_key2 (KEY_S); }
  if (digitalRead(pinRightUp) == LOW){ Keyboard.set_key3 (KEY_R); }
  if (digitalRead(pinRightDown) == LOW){ Keyboard.set_key4 (KEY_D); }
  Keyboard.send_now();
  delayMicroseconds(10);
}
Basic-as-gently caress Teensy "press a button, it sends a key" program, or it should be.

Instead, if I jump, say, pin 2 to gnd, it sends a constant stream of Ws until I either reboot the teensy or jump another pin to ground. To be clear, I want it to repeat as long as the pin is jumped, but it doesn't stop when I disconnect the jumper, and I can't figure out why


e: Naturally I remembered I need to y'know, release the keys, immediately after I posted this

Sockser fucked around with this message at 09:14 on Dec 27, 2019

Sockser
Jun 28, 2007

This world only remembers the results!




Yeah I was just never releasing the key.
Every other time I’ve done a keyboard emulation I checked falling edge so it only pressed once and the release completely escaped me.

Sockser
Jun 28, 2007

This world only remembers the results!




Sound_man posted:

Here is an update.


I've got two of the 7 segment displays wired up. I was able to fit 4 pixels in each segment. I need to look at some diffusion to get rid of the point source, my buddy offered to reprint the covers with a different fill on top but I might try and find someone local so we can experiment a little easier. Even with some pretty terrible soldering both digits powered up and worked first try. I'm really happy with how the buttons are working. I might tweak the code slightly but part of me wants to wait until someone else gives it a whirl to get their feedback.

If anyone else is looking to do a 7 segment display with ws2812 tape this Library was perfect.

My next hurdle is to figure out how to mount this and enclosures for the controller and ardunio.

I'm way late on this but I built an 8-digit 7 segment display last year using this model and making some new connectors so I could get around the : separator--
https://www.thingiverse.com/thing:3014572
It diffuses a lot better than your model because the LEDs all face sideways instead of straight into the front panel

And here's my lovely modification of the code-
https://github.com/KyleMagocs/PushyKawaii

And then my dumb little not-game art piece ended up at GDQ getting speed runs
https://twitter.com/FrostedGH/status/1215051737981161474?s=20

Sockser
Jun 28, 2007

This world only remembers the results!




Having trouble googling what I want here

I have built some basic FFT visualizers out of a raspi, like, raspi is running audio and visualizing it

What I want to build, via some flavor of arduino, is a board that will accept a 3.5 audio in and then let me process that, but I can only find audio output boards, or schematics that use a microphone rather than a direct line in. Is there some sort of arduino breakout that exists that will just let me do the thing I want without having to build out my own circuit for this?

Sockser
Jun 28, 2007

This world only remembers the results!




"ADC" was the obvious term I was not looking for :facepalm:

Bought a Teensy shield that'll do what I want, plus it lets me use a Teensy, woo.

Sockser
Jun 28, 2007

This world only remembers the results!




Working on some LED projects right now

Right now I've got a 5v supply running to my LEDs and the ground connected to my Teensy.
When I release this from programming mode and go to power the Teensy via the 5v supply, it's bad for it to be connected via both USB and an external 5v supply, right? There's a trace I'm supposed to cut?

Sockser
Jun 28, 2007

This world only remembers the results!




Sound_man posted:

I'm looking for a two pole connector for a project. Low amps, 3.3V signal but I'd prefer something a little more rugged than JST I'd like something a little smaller and cheaper than an XLR connector but I haven't come across anything I like. I'd need two mating sets so anything that requires custom tooling is also out.

Anyone have a clever lead?

XT30 connector?

Sockser
Jun 28, 2007

This world only remembers the results!




Sound_man posted:

Sold, 50 cents a pair shipped to my door. Bonus points for being solder. Thanks!

Fwiw, soldering small-gauge wires to XT connectors kinda sucks and you end up just kind of pooling solder into them, at least IME

Sockser
Jun 28, 2007

This world only remembers the results!




Get a permaproto
https://www.amazon.com/Adafruit-Per...ps%2C133&sr=8-2

Solder it up (I don't think there's that many components in your setup) and add female headers
Throw some lovely $5 ESP32 in there and swap it out if it ever (doubtful) hits the write cycle cap


Also 3d print one of these, my favorite enclosure for electronics projects
https://www.thingiverse.com/thing:2489553

Sockser
Jun 28, 2007

This world only remembers the results!




Hit the button next to the USB port while it's connected and see if arduino IDE suddenly recognizes it

Sockser
Jun 28, 2007

This world only remembers the results!




Deadite posted:

So I got the ItsyBitsy board, and I followed the guide on setting up the UI so I can add a sketch to it. The problem is I keep getting an error when I try. The board is being detected and I think I selected the correct board and port but I'm getting the below error:

code:
Sketch uses 52220 bytes (0%) of program storage space. Maximum is 8384512 bytes.
Global variables use 10224 bytes (3%) of dynamic memory, leaving 251920 bytes for local variables. Maximum is 262144 bytes.
Resetting COM4
Converting to uf2, output size: 140288, start address: 0x2000
Scanning for RP2040 devices
No drive to deploy.
Failed uploading: uploading error: exit status 1


Any idea what I'm doing wrong? Googling this hasn't been very fruitful

https://github.com/earlephilhower/arduino-pico/issues/5

Give this a quick scroll and see if that helps

Sockser
Jun 28, 2007

This world only remembers the results!




Is there a reason for fussing with relays over just using addressable LEDs here? Other than for funsies?

Adbot
ADBOT LOVES YOU

Sockser
Jun 28, 2007

This world only remembers the results!




Deadite posted:

Because I have no idea what I'm doing. Like zero knowledge. All I know is that relays are used to turn power on and off so I thought that would work. I don't know what an addressable LED is but I'm limited to what I can get that is sold in LED neon flex.

The post above yours might has well been written in Greek to me, I have absolutely no idea what that is saying

A long strip of LEDs that you can, with a little programming, say "set LED #10 to green and LED #45 to red"

As far as LED neon flex--

https://www.amazon.com/Aclorol-Addressable-Flexible-Waterproof-Advertising/dp/B08N9X4PC9?th=1

I bought a spool of this a while ago for a project but haven't had the chance to play with it yet
It's somehow only 18LEDs/m which is pretty crazy low if it actually diffuses that well

So you could, in theory, cut off several small lengths, separate them, wire them together, and just in your code say "light pixel one, wait, light pixel two, wait,"

And ditch that entire relay board

  • 1
  • 2
  • 3
  • 4
  • 5
  • Post
  • Reply