Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • Mar 21 05:25
    pfried commented #141
  • Mar 20 19:02
    sandinak commented #141
  • Mar 01 04:16
    scanlime closed #142
  • Mar 01 04:14
    aaronse opened #142
  • Feb 06 15:38
    swifty99 commented #141
  • Feb 05 15:44
    platinumjesus commented on 82ca2b1
  • Jan 03 22:15
    aocole closed #137
  • Jan 03 22:15
    aocole commented #137
  • Oct 14 2021 13:51
    jonwilliams-bluescape commented on 82ca2b1
  • Oct 12 2021 05:53
    pfried opened #141
  • Sep 16 2021 23:58
    videogame-hacker commented on 82ca2b1
  • Sep 16 2021 21:50
    scanlime commented on 82ca2b1
  • Sep 14 2021 07:57
    balls-mcgee commented on 82ca2b1
  • Sep 11 2021 18:57
    videogame-hacker commented on 82ca2b1
  • Sep 11 2021 06:06
    balls-mcgee commented on 82ca2b1
  • Sep 08 2021 19:29
    videogame-hacker commented on 82ca2b1
  • Sep 08 2021 19:07
    scanlime commented on 82ca2b1
  • Sep 08 2021 19:04
    thejohnd commented on 82ca2b1
  • Jul 20 2021 18:55
    orgicus commented #132
  • Jul 20 2021 18:29
    ultra-vi0let commented #132
Jamie Meredith
@jlmeredith
Hey there @scanlime - I am having a terrible time getting video to play through processing on a headless Unbuntu computer - wondering if you have suggestions for otherways to drive video to a large display (2048 pixels with 4 fadecandies) - I am successfully driving it via a mac but have had no luck with Rpi2 or an i5 Ubuntu box - my next step will be to install windows and try to make it happen but that just kind of gives me the willies to even think about.
Alex Andre
@alexthevdwp
Hi guys, I am connecting 8 strips of Ws2812b LEDs to a control board. I started with a Teensy 3.1 + Octo and have now switched to Fandecandy mounted on one of RGB123's Breakout-board for the Fadecandy. I now have the Fandecandy connected to 8 LED strips of 54 pixels each and am running the example from the Fadecandy-master example called: Strip64-dot. I changed the number of pixels in the strip to match my strip length of 54 but when I run an image I notice that things don't aligne properly. Below is the latest code I've been playing with for days: could you please help make it right or let me know what I need to change, many thanks!

OPC opc;
PImage dot;

void setup()
{
size(800, 200);

// Load a sample image
dot = loadImage("alex02 color-dot.png");

// Connect to the local instance of fcserver
opc = new OPC(this, "127.0.0.1", 7890);

// Map one 54-LED strip to the center of the window

opc.ledStrip(0, 54, width/2, height/4 + 15, width / 54.0, 0, false);
opc.ledStrip(55, 54, width/2, height/4 + 25, width / 54.0, 0, false);
opc.ledStrip(109, 54, width/2, height/4 + 35, width / 54.0, 0, false);
opc.ledStrip(163, 54, width/2, height/4 + 45, width / 54.0, 0, false);
opc.ledStrip(217, 54, width/2, height/4 + 55, width / 54.0, 0, false);
opc.ledStrip(271, 54, width/2, height/4 + 65, width / 54.0, 0, false);
opc.ledStrip(325, 54, width/2, height/4 + 75, width / 54.0, 0, false);
opc.ledStrip(379, 54, width/2, height/4 + 85, width / 54.0, 0, false);
}

void draw()
{
background(0);

// Draw the image, centered at the mouse location
float dotSize = width * 0.2;
image(dot, mouseX - dotSize/2, mouseY - dotSize/2, dotSize, dotSize);
}

Alex Andre
@alexthevdwp
This is the link to RGB123's Breakout-board for the Fadecandy. I ordered a second one to try 2 fade candy connection and we'll see how that goes. The board was easy to connect but the board is very big about 8x the size of the Fadecandy board > http://rgb-123.com/product/fadecandy-breakout/
Alex Andre
@alexthevdwp

@alexthevdwp
Could someone @scanlime @focalintent @jlmeredith help me with some simple code. I'm very inspired by the Addressable LED with fadecandy but need some artwork and software questions answered and make more art. At the moment, I am connecting 8 strips of Ws2812b LEDs to a control board. I started with a Teensy 3.1 + Octo and have now switched to Fandecandy mounted on one of RGB123's Breakout-board for the Fadecandy. I now have the Fandecandy connected to 8 LED strips of 54 pixels each and am running the example from the Fadecandy-master example called: Strip64-dot. I changed the number of pixels in the strip to match my strip length of 54 neopixels but when I run an image file I notice that things don't aligne properly. Below is the latest code I've been playing with for days: could you please help make it right or let me know what I need to change, many thanks!
OPC opc;
PImage dot;

void setup()
{
size(800, 200);

// Load a sample image
dot = loadImage("alex02 color-dot.png");

// Connect to the local instance of fcserver
opc = new OPC(this, "127.0.0.1", 7890);

// Map one 54-LED strip to the center of the window

opc.ledStrip(0, 54, width/2, height/4 + 15, width / 54.0, 0, false);
opc.ledStrip(55, 54, width/2, height/4 + 25, width / 54.0, 0, false);
opc.ledStrip(109, 54, width/2, height/4 + 35, width / 54.0, 0, false);
opc.ledStrip(163, 54, width/2, height/4 + 45, width / 54.0, 0, false);
opc.ledStrip(217, 54, width/2, height/4 + 55, width / 54.0, 0, false);
opc.ledStrip(271, 54, width/2, height/4 + 65, width / 54.0, 0, false);
opc.ledStrip(325, 54, width/2, height/4 + 75, width / 54.0, 0, false);
opc.ledStrip(379, 54, width/2, height/4 + 85, width / 54.0, 0, false);
}

void draw()
{
background(0);

// Draw the image, centered at the mouse location
float dotSize = width * 0.2;
image(dot, mouseX - dotSize/2, mouseY - dotSize/2, dotSize, dotSize);
} @focalintent @focalintent @focalintent @focalintent

Daniel Garcia
@focalintent
I believe fadecandy is still expecting to receive 64 leds worth of data for each strip - isn’t it? in which case, I’d think you’d want your offsets to be 0, 64, 128, 192, 256, 320, 384, 448 instead of 0,55,109,163,217,271,325,379 — though that’s just a guess
unfortunately, I haven’t done any work with OPC myself
Matthew Kessler
@M-I-Kessler
how are the strips arranged?
Alex Andre
@alexthevdwp
@focalintent Cool thanks I'll try that!
@M-I-Kessler I Have 8 strips of 54 neopix each connected to RGB breakout board with Fadecandy board attached to it
Matthew Kessler
@M-I-Kessler
I mean physically in a spatial sense (I believe I can see from your programming but not quit sure). I'll I can send you something in a little bit. I think you may need to add a little more speciffically
for (int i = 0; i < 8; i++)
opc.ledStrip(0, 54, width/2, height/4 + 15, width / 54.0, 0, false);
opc.ledStrip(55, 54, width/2, height/4 + 25, width / 54.0, 0, false);
opc.ledStrip(109, 54, width/2, height/4 + 35, width / 54.0, 0, false);
opc.ledStrip(163, 54, width/2, height/4 + 45, width / 54.0, 0, false);
opc.ledStrip(217, 54, width/2, height/4 + 55, width / 54.0, 0, false);
opc.ledStrip(271, 54, width/2, height/4 + 65, width / 54.0, 0, false);
opc.ledStrip(325, 54, width/2, height/4 + 75, width / 54.0, 0, false);
opc.ledStrip(379, 54, width/2, height/4 + 85, width / 54.0, 0, false);
i need to look look more at the opc.ledStrip again though
Daniel Garcia
@focalintent
not sure a for loop is necessary in there
Matthew Kessler
@M-I-Kessler
This message was deleted
  // Set the location of several LEDs arranged in a strip.
  // Angle is in radians, measured clockwise from +X.
  // (x,y) is the center of the strip.
  void ledStrip(int index, int count, float x, float y, float spacing, float angle, boolean reversed)
  {
    float s = sin(angle);
    float c = cos(angle);
    for (int i = 0; i < count; i++) {
      led(reversed ? (index + count - 1 - i) : (index + i),
        (int)(x + (i - (count-1)/2.0) * spacing * c + 0.5),
        (int)(y + (i - (count-1)/2.0) * spacing * s + 0.5));
    }
Matthew Kessler
@M-I-Kessler
for multiple strips it does need the for loop (at least the way I have done it) and the int position should be 54 like you originally had it
Matthew Kessler
@M-I-Kessler
int count* not int position
Alex Andre
@alexthevdwp
@focalintent Thans for that suggestion! The code did make all the LEDs on the 8 strips fire up simultaneously but the alignment of the dots on the screens seem to double up at the start and end of the dots... Possibly because this code was originally designed for 64 Neopixels... So when a color in the Loaded image goes over the 1st dots (1st dot column) it lights up the #6 Neopix on the strips. If this is the problem I believe i would have to change the code from 64 to 54 somewhere but where?
Alex Andre
@alexthevdwp
@M-I-Kessler Things are starting to align a little better when I code to reflect the 64 LEDs per strips as suggested by Daniel @focalintent but still experiencing inconsistencies with how the dots are aligning on the file window. I tried to do it for 54 led per strips as this is what I'm train to achieve since that's the correct number on each strips. I also trying to paste your code into the OPC file but didn't notice a difference. Could you please advice, thanks a bunch!!
Alex Andre
@alexthevdwp
Screen Shot 2016-02-23 at 4.47.57 PM.png
Matthew Kessler
@M-I-Kessler
something I (believe) remembered, the code could have to have the amount of the LED on the strip or the 64 depending on how the OPC server is Setup.
Alex Andre
@alexthevdwp
@M-I-Kessler Not sure if the attachment above is visible but it was intended for Matthew @M-I-Kessler. To showcase the dots. As you can see the it gets weird on the first and the least few columns of dots. Is it possible to configure to 54 Leds or am i stuck with 64 leds per strip?
Matthew Kessler
@M-I-Kessler
Also, the code doesnt actually know at what led address a strip begins or ends. You can split one "strip" into multiple strips. I have two "strips" of 60 broken into 5 "strips"
Alex Andre
@alexthevdwp
@M-I-Kessler yes please post this code. I'd love to compare and try it, thanks
Matthew Kessler
@M-I-Kessler
{
  size(600, 600);

  // Load a sample image
  im = loadImage("flames.jpeg");

  // Connect to the local instance of fcserver
  opc = new OPC(this, "InMiCoTA", 7890);

float spaceAll = width/100;

  for (int i = 0; i < 120; i++)
       opc.ledStrip( 0,  22,  (width/2)-((spaceAll*21)/2),  (height/2)-(spaceAll*9),  spaceAll,  0,       true);  //Bottom Led Addresses, Right
       opc.ledStrip(22,  17,  (width/2)-(spaceAll*21),      (height/2),               spaceAll,  3*PI/2,  true);  //Right Led Addresses
       opc.ledStrip(39,  43,  (width/2),                    (height/2)+(spaceAll*9),  spaceAll,  PI,      true);  //Top Led Addresses
       opc.ledStrip(82,  17,  (width/2)+(spaceAll*21),      (height/2),               spaceAll,  (PI)/2,  true);  //Left Led Addresses
       opc.ledStrip(99,  21,  (width/2)+((spaceAll*22)/2),  (height/2)-(spaceAll*9),  spaceAll,  0,       true);  //Bottom Led Addresses, Left


}
That looks like this
blob
Alex Andre
@alexthevdwp
@M-I-Kessler thanks I'll try it!
Matthew Kessler
@M-I-Kessler
just to be clear, int index is your LED index number & int count is how many LED's are on a "strip"
you could have "extra" LED's to account for depending on how the OPC server is setup
Alex Andre
@alexthevdwp
@M-I-Kessler ok thanks for the tips. The "extra" leds set up on the OPC server may be way I'm having diffictuly getting everything aligned correctly...
Matthew Kessler
@M-I-Kessler
so you may need to have to do as focal intent said with the index locations but you would still keep the 54 as the striplength
Alex Andre
@alexthevdwp

Great I finally got it thanks to ur help @M-I-Kessler and @focalintent > here is the code that works: // Map one 54-LED strip to the center of the window
for (int i = 0; i < 8; i++)

opc.ledStrip(0, 54, width/2, height/4 + 15, width / 54.0, 0, false);
opc.ledStrip(64, 54, width/2, height/4 + 25, width / 54.0, 0, false);
opc.ledStrip(128, 54, width/2, height/4 + 35, width / 54.0, 0, false);
opc.ledStrip(192, 54, width/2, height/4 + 45, width / 54.0, 0, false);
opc.ledStrip(256, 54, width/2, height/4 + 55, width / 54.0, 0, false);
opc.ledStrip(320, 54, width/2, height/4 + 65, width / 54.0, 0, false);
opc.ledStrip(384, 54, width/2, height/4 + 75, width / 54.0, 0, false);
opc.ledStrip(448, 54, width/2, height/4 + 85, width / 54.0, 0, false);
}

Matthew Kessler
@M-I-Kessler
no problem
Are you going to be using multiple PDE documents with this?
Alex Andre
@alexthevdwp
@M-I-Kessler looking at your frame set up for the Blob file I'm wondering where is the missing 5th LED strip?
Matthew Kessler
@M-I-Kessler
the top row is split into two "strips"
Its for an infinity table i made. it actually only uses two 60 led chains and the initial index of 0 is at the top center
blob
Alex Andre
@alexthevdwp
@M-I-Kessler Ok thanks for clarifying. I bet that looks nice with the infinity effect!
Matthew Kessler
@M-I-Kessler
It does! And adjujsting the frame rate has some pretty interesting and beautiful effects (depending on what I'm running) because of the dithering.
Alex Andre
@alexthevdwp
@M-I-Kessler @focalintent So as you can see I'm new to the Art of addressable LEDs.. I was wondering about the best resources for learning about that stuff. I've checked the Open Pixel Protocol on the GitHub page, The Processing site for recommended books about processing and the Examples attached to the Fadecandy file and have done a lot of searching the web.. I'm just not sure where to start to learn about coding LEDs for Fadecandy. Can you pass along any valuabl. links or books recommendation about that? I know the blinky lights are getting to my head.., Yes but also I'm inspired so I want to learn! thanks for the help and support
George Profenza
@orgicus
Quick question: Using WebSockets, I can send a '{"type":"list_connected_devices"}' message. Can I do the same with the TCP socket connection in Processing using OPC as well, or not ?
Micah Elizabeth Scott
@scanlime
You'd need to speak websockets to send those commands; the OPC protocol doesn't know about multiple devices, it just sees an abstract space of channels and pixels
(It's still the same TCP socket, the fcserver detects protocol based on whether you start sending HTTP or OPC packets)
George Profenza
@orgicus
Got it, Thank you Micah !
Alex Andre
@alexthevdwp
@M-I-Kessler @focalintent @scanlime Has anyone tried to play different .png images on different LED strips connected to the Fadecandy ?
Matthew Kessler
@M-I-Kessler
I have. Any specific questions? Also sorry, haven't responded my old computer crashed and my hard drive burned up, literally.
@alexthevdwp Also I just searched around online and just kinda figured out the coding stuff. There is a guide for a LED curtain that had some stuff on it on adafruit.com. However some of the stuff wasn't a best method in my opinion.