What can I do to increase the amount of LEDs I can power with a pro micro?What are the current limits on an Arduino Micro?All the differences between Arduinos: Pro Mini & Pro MicroI can not upload hex files outside of the Arduino IDE to my Pro Micro3.3 V Pro Micro clones flashing LEDs after 1200 bit/s touchDoes the Arduino pro-micro 3.3v use an 8MHz crystal or a 16MHz crystal with a clock divisor of 2?Arduino Pro Micro TX and RX leds flash quikly while power drawn from VCC pinHow to use power led from arduino-pro-micro?Arduino Pro Micro - switch off LEDsNo ttyACM0 with Pro Micro on Ubuntu 18.04

What's the relationship betweeen MS-DOS and XENIX?

Are there any cons in using rounded corners for bar graphs?

What are the odds of rolling specific ability score totals in D&D?

How do I call a 6-digit Australian phone number with a US-based mobile phone?

Would the USA be eligible to join the European Union?

Did Michelle Obama have a staff of 23; and Melania have a staff of 4?

Telephone number in spoken words

Suspension compromise for urban use

The more + the + comparative degree

List, map function based on a condition

If a person claims to know anything could it be disproven by saying 'prove that we are not in a simulation'?

Output the list of musical notes

When was "Fredo" an insult to Italian-Americans?

Can anybody tell me who this Pokemon is?

Why do my bicycle brakes get worse and feel more 'squishy" over time?

Is there any official ruling on how characters go from 0th to 1st level in a class?

Align rightarrow in table

What are the advantages of this gold finger shape?

Is there a name for the technique in songs/poems, where the rhyming pattern primes the listener for a certain line, which never comes?

Lípínguapua dopo Pêpê

Is it OK to draw different current from L1 and L2 on NEMA 14-50?

Some pads on a PCB are marked in clusters and I can't understand which one is which

Unconventional examples of mathematical modelling

How can I find files in directories listed in a file?



What can I do to increase the amount of LEDs I can power with a pro micro?


What are the current limits on an Arduino Micro?All the differences between Arduinos: Pro Mini & Pro MicroI can not upload hex files outside of the Arduino IDE to my Pro Micro3.3 V Pro Micro clones flashing LEDs after 1200 bit/s touchDoes the Arduino pro-micro 3.3v use an 8MHz crystal or a 16MHz crystal with a clock divisor of 2?Arduino Pro Micro TX and RX leds flash quikly while power drawn from VCC pinHow to use power led from arduino-pro-micro?Arduino Pro Micro - switch off LEDsNo ttyACM0 with Pro Micro on Ubuntu 18.04






.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty margin-bottom:0;








1















I am new to arduino and have a sparkfun pro micro that I'm using to power a one meter (60 pixels) APA 102 strip. I currently power it via USB and have a program that sends lighting instructions to it. I can only seem to power ~15 pixels with full range of brightness and ~30 if I keep the brightness at about half.



Anything more and the pro micro will stop recieving data and either freeze at the last color it's recieved or turn a bright red (which I assume is a visual indication of the fail because I didn't code that). At this point, the COM port will also become inaccessible until the code is either re-uploaded or in some cases, I simply disconnect the strip. This leads me to believe that the amount of power that I am demanding is too much for the board to put out.



So am I right in this assumption? and If so, what can I do to increase the amount of pixels I can power at full range?



I'll also post my code below in case there is something I can do there to increase the pixel amount:



#include <Adafruit_DotStar.h>
#include <SPI.h>

#define NUMPIXELS 60
#define DATAPIN 4
#define CLOCKPIN 5

Adafruit_DotStar strip(NUMPIXELS, DOTSTAR_BRG);

// Variables
int mode;
int numColors;
int fadeSpeed;
int BBCC;
int R;
int G;
int B;
int Bright;

void setup()

#if defined(__AVR_ATtiny85__) && (F_CPU == 16000000L)
clock_prescale_set(clock_div_1); // Enable 16 MHz on Trinket
#endif

strip.begin(); // Initialize pins for output
strip.show(); // Turn all LEDs off ASAP


int head = 0, tail = -10; // Index of first 'on' and 'off' pixels
uint32_t color = 0xFFFFFF; // 'On' color (starts red)

void loop()

//strip.setPixelColor(head, color); // 'On' pixel at head
//strip.setPixelColor(tail, 0); // 'Off' pixel at tail
strip.show(); // Refresh strip
delay(20); // Pause 20 milliseconds (~50 FPS)

getData();

if (mode == 1)

for (int i = 0; i < (60); i++)

if (i % 2 == 0)
strip.setPixelColor(i, G, R, B);

strip.setBrightness(Bright);
strip.show();

else

for (int i = 0; i < (60); i++)

if (i % 2 == 0)
strip.setPixelColor(i, 150, 200, 40);

strip.setBrightness(255);
strip.show();



int readLine(int readch, char * buffer, int len)

static int pos = 0;
int rpos;

if (readch > 0)

switch(readch)

case 'r':

break;

case 'n':

rpos = pos;
pos = 0;
return rpos;

default:

if (pos < len-1)

buffer[pos++] = readch;
buffer[pos] = 0;




return 0;



void getData()

char buf[80];
bool redo = true;

if(readLine(Serial.read(), buf, 80) > 0)

int i = 0;
int j = 0;
bool skip = false;
char fin[3];
if (skip == false)

do// mode

switch (buf[i])

case 'n':

skip = true;
redo = false;
break;

case '
j++;
while(redo);
redo = true;
j = 0;




if (skip == false)

do// number of colors

switch (buf[i])
':

numColors = atoi(fin);
//Serial.print(numColors);
i++;
redo = false;
break;

default:

fin[j] = buf[i];
i++;
break;


j++;
while(redo);
redo = true;
j = 0;




if (skip == false)

do//

switch (buf[i])
':

fadeSpeed = atoi(fin);
//Serial.print(fadeSpeed);
i++;
redo = false;
break;

default:

fin[j] = buf[i];
i++;
break;


j++;
while(redo);
redo = true;
j = 0;




if (skip == false)

do

switch (buf[i])

case 'n':

skip = true;
redo = false;
break;

case '
j++;
while(redo);
redo = true;
j = 0;




if (skip == false)

do

switch (buf[i])
':

R = atoi(fin);
//Serial.print(R);
i++;
redo = false;
break;

default:

fin[j] = buf[i];
i++;
break;


j++;
while(redo);
redo = true;
j = 0;




if (skip == false)

do

switch (buf[i])
':

G = atoi(fin);
//Serial.print(G);
i++;
redo = false;
break;

default:

fin[j] = buf[i];
i++;
break;


j++;
while(redo);
redo = true;
j = 0;




if (skip == false)

do

switch (buf[i])

case 'n':

skip = true;
redo = false;
break;

case '
j++;
while(redo);
redo = true;
j = 0;




if (skip == false)

do

switch (buf[i])

case 'n':

Bright = atoi(fin);
//Serial.println(Bright);
i++;
redo = false;
break;

default:

fin[j] = buf[i];
i++;
break;


j++;
while(redo);
redo = true;
j = 0;












share|improve this question









New contributor



BoatHouse is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.



























    1















    I am new to arduino and have a sparkfun pro micro that I'm using to power a one meter (60 pixels) APA 102 strip. I currently power it via USB and have a program that sends lighting instructions to it. I can only seem to power ~15 pixels with full range of brightness and ~30 if I keep the brightness at about half.



    Anything more and the pro micro will stop recieving data and either freeze at the last color it's recieved or turn a bright red (which I assume is a visual indication of the fail because I didn't code that). At this point, the COM port will also become inaccessible until the code is either re-uploaded or in some cases, I simply disconnect the strip. This leads me to believe that the amount of power that I am demanding is too much for the board to put out.



    So am I right in this assumption? and If so, what can I do to increase the amount of pixels I can power at full range?



    I'll also post my code below in case there is something I can do there to increase the pixel amount:



    #include <Adafruit_DotStar.h>
    #include <SPI.h>

    #define NUMPIXELS 60
    #define DATAPIN 4
    #define CLOCKPIN 5

    Adafruit_DotStar strip(NUMPIXELS, DOTSTAR_BRG);

    // Variables
    int mode;
    int numColors;
    int fadeSpeed;
    int BBCC;
    int R;
    int G;
    int B;
    int Bright;

    void setup()

    #if defined(__AVR_ATtiny85__) && (F_CPU == 16000000L)
    clock_prescale_set(clock_div_1); // Enable 16 MHz on Trinket
    #endif

    strip.begin(); // Initialize pins for output
    strip.show(); // Turn all LEDs off ASAP


    int head = 0, tail = -10; // Index of first 'on' and 'off' pixels
    uint32_t color = 0xFFFFFF; // 'On' color (starts red)

    void loop()

    //strip.setPixelColor(head, color); // 'On' pixel at head
    //strip.setPixelColor(tail, 0); // 'Off' pixel at tail
    strip.show(); // Refresh strip
    delay(20); // Pause 20 milliseconds (~50 FPS)

    getData();

    if (mode == 1)

    for (int i = 0; i < (60); i++)

    if (i % 2 == 0)
    strip.setPixelColor(i, G, R, B);

    strip.setBrightness(Bright);
    strip.show();

    else

    for (int i = 0; i < (60); i++)

    if (i % 2 == 0)
    strip.setPixelColor(i, 150, 200, 40);

    strip.setBrightness(255);
    strip.show();



    int readLine(int readch, char * buffer, int len)

    static int pos = 0;
    int rpos;

    if (readch > 0)

    switch(readch)

    case 'r':

    break;

    case 'n':

    rpos = pos;
    pos = 0;
    return rpos;

    default:

    if (pos < len-1)

    buffer[pos++] = readch;
    buffer[pos] = 0;




    return 0;



    void getData()

    char buf[80];
    bool redo = true;

    if(readLine(Serial.read(), buf, 80) > 0)

    int i = 0;
    int j = 0;
    bool skip = false;
    char fin[3];
    if (skip == false)

    do// mode

    switch (buf[i])

    case 'n':

    skip = true;
    redo = false;
    break;

    case '
    j++;
    while(redo);
    redo = true;
    j = 0;




    if (skip == false)

    do// number of colors

    switch (buf[i])
    ':

    numColors = atoi(fin);
    //Serial.print(numColors);
    i++;
    redo = false;
    break;

    default:

    fin[j] = buf[i];
    i++;
    break;


    j++;
    while(redo);
    redo = true;
    j = 0;




    if (skip == false)

    do//

    switch (buf[i])
    ':

    fadeSpeed = atoi(fin);
    //Serial.print(fadeSpeed);
    i++;
    redo = false;
    break;

    default:

    fin[j] = buf[i];
    i++;
    break;


    j++;
    while(redo);
    redo = true;
    j = 0;




    if (skip == false)

    do

    switch (buf[i])

    case 'n':

    skip = true;
    redo = false;
    break;

    case '
    j++;
    while(redo);
    redo = true;
    j = 0;




    if (skip == false)

    do

    switch (buf[i])
    ':

    R = atoi(fin);
    //Serial.print(R);
    i++;
    redo = false;
    break;

    default:

    fin[j] = buf[i];
    i++;
    break;


    j++;
    while(redo);
    redo = true;
    j = 0;




    if (skip == false)

    do

    switch (buf[i])
    ':

    G = atoi(fin);
    //Serial.print(G);
    i++;
    redo = false;
    break;

    default:

    fin[j] = buf[i];
    i++;
    break;


    j++;
    while(redo);
    redo = true;
    j = 0;




    if (skip == false)

    do

    switch (buf[i])

    case 'n':

    skip = true;
    redo = false;
    break;

    case '
    j++;
    while(redo);
    redo = true;
    j = 0;




    if (skip == false)

    do

    switch (buf[i])

    case 'n':

    Bright = atoi(fin);
    //Serial.println(Bright);
    i++;
    redo = false;
    break;

    default:

    fin[j] = buf[i];
    i++;
    break;


    j++;
    while(redo);
    redo = true;
    j = 0;












    share|improve this question









    New contributor



    BoatHouse is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
    Check out our Code of Conduct.























      1












      1








      1








      I am new to arduino and have a sparkfun pro micro that I'm using to power a one meter (60 pixels) APA 102 strip. I currently power it via USB and have a program that sends lighting instructions to it. I can only seem to power ~15 pixels with full range of brightness and ~30 if I keep the brightness at about half.



      Anything more and the pro micro will stop recieving data and either freeze at the last color it's recieved or turn a bright red (which I assume is a visual indication of the fail because I didn't code that). At this point, the COM port will also become inaccessible until the code is either re-uploaded or in some cases, I simply disconnect the strip. This leads me to believe that the amount of power that I am demanding is too much for the board to put out.



      So am I right in this assumption? and If so, what can I do to increase the amount of pixels I can power at full range?



      I'll also post my code below in case there is something I can do there to increase the pixel amount:



      #include <Adafruit_DotStar.h>
      #include <SPI.h>

      #define NUMPIXELS 60
      #define DATAPIN 4
      #define CLOCKPIN 5

      Adafruit_DotStar strip(NUMPIXELS, DOTSTAR_BRG);

      // Variables
      int mode;
      int numColors;
      int fadeSpeed;
      int BBCC;
      int R;
      int G;
      int B;
      int Bright;

      void setup()

      #if defined(__AVR_ATtiny85__) && (F_CPU == 16000000L)
      clock_prescale_set(clock_div_1); // Enable 16 MHz on Trinket
      #endif

      strip.begin(); // Initialize pins for output
      strip.show(); // Turn all LEDs off ASAP


      int head = 0, tail = -10; // Index of first 'on' and 'off' pixels
      uint32_t color = 0xFFFFFF; // 'On' color (starts red)

      void loop()

      //strip.setPixelColor(head, color); // 'On' pixel at head
      //strip.setPixelColor(tail, 0); // 'Off' pixel at tail
      strip.show(); // Refresh strip
      delay(20); // Pause 20 milliseconds (~50 FPS)

      getData();

      if (mode == 1)

      for (int i = 0; i < (60); i++)

      if (i % 2 == 0)
      strip.setPixelColor(i, G, R, B);

      strip.setBrightness(Bright);
      strip.show();

      else

      for (int i = 0; i < (60); i++)

      if (i % 2 == 0)
      strip.setPixelColor(i, 150, 200, 40);

      strip.setBrightness(255);
      strip.show();



      int readLine(int readch, char * buffer, int len)

      static int pos = 0;
      int rpos;

      if (readch > 0)

      switch(readch)

      case 'r':

      break;

      case 'n':

      rpos = pos;
      pos = 0;
      return rpos;

      default:

      if (pos < len-1)

      buffer[pos++] = readch;
      buffer[pos] = 0;




      return 0;



      void getData()

      char buf[80];
      bool redo = true;

      if(readLine(Serial.read(), buf, 80) > 0)

      int i = 0;
      int j = 0;
      bool skip = false;
      char fin[3];
      if (skip == false)

      do// mode

      switch (buf[i])

      case 'n':

      skip = true;
      redo = false;
      break;

      case '
      j++;
      while(redo);
      redo = true;
      j = 0;




      if (skip == false)

      do// number of colors

      switch (buf[i])
      ':

      numColors = atoi(fin);
      //Serial.print(numColors);
      i++;
      redo = false;
      break;

      default:

      fin[j] = buf[i];
      i++;
      break;


      j++;
      while(redo);
      redo = true;
      j = 0;




      if (skip == false)

      do//

      switch (buf[i])
      ':

      fadeSpeed = atoi(fin);
      //Serial.print(fadeSpeed);
      i++;
      redo = false;
      break;

      default:

      fin[j] = buf[i];
      i++;
      break;


      j++;
      while(redo);
      redo = true;
      j = 0;




      if (skip == false)

      do

      switch (buf[i])

      case 'n':

      skip = true;
      redo = false;
      break;

      case '
      j++;
      while(redo);
      redo = true;
      j = 0;




      if (skip == false)

      do

      switch (buf[i])
      ':

      R = atoi(fin);
      //Serial.print(R);
      i++;
      redo = false;
      break;

      default:

      fin[j] = buf[i];
      i++;
      break;


      j++;
      while(redo);
      redo = true;
      j = 0;




      if (skip == false)

      do

      switch (buf[i])
      ':

      G = atoi(fin);
      //Serial.print(G);
      i++;
      redo = false;
      break;

      default:

      fin[j] = buf[i];
      i++;
      break;


      j++;
      while(redo);
      redo = true;
      j = 0;




      if (skip == false)

      do

      switch (buf[i])

      case 'n':

      skip = true;
      redo = false;
      break;

      case '
      j++;
      while(redo);
      redo = true;
      j = 0;




      if (skip == false)

      do

      switch (buf[i])

      case 'n':

      Bright = atoi(fin);
      //Serial.println(Bright);
      i++;
      redo = false;
      break;

      default:

      fin[j] = buf[i];
      i++;
      break;


      j++;
      while(redo);
      redo = true;
      j = 0;












      share|improve this question









      New contributor



      BoatHouse is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.











      I am new to arduino and have a sparkfun pro micro that I'm using to power a one meter (60 pixels) APA 102 strip. I currently power it via USB and have a program that sends lighting instructions to it. I can only seem to power ~15 pixels with full range of brightness and ~30 if I keep the brightness at about half.



      Anything more and the pro micro will stop recieving data and either freeze at the last color it's recieved or turn a bright red (which I assume is a visual indication of the fail because I didn't code that). At this point, the COM port will also become inaccessible until the code is either re-uploaded or in some cases, I simply disconnect the strip. This leads me to believe that the amount of power that I am demanding is too much for the board to put out.



      So am I right in this assumption? and If so, what can I do to increase the amount of pixels I can power at full range?



      I'll also post my code below in case there is something I can do there to increase the pixel amount:



      #include <Adafruit_DotStar.h>
      #include <SPI.h>

      #define NUMPIXELS 60
      #define DATAPIN 4
      #define CLOCKPIN 5

      Adafruit_DotStar strip(NUMPIXELS, DOTSTAR_BRG);

      // Variables
      int mode;
      int numColors;
      int fadeSpeed;
      int BBCC;
      int R;
      int G;
      int B;
      int Bright;

      void setup()

      #if defined(__AVR_ATtiny85__) && (F_CPU == 16000000L)
      clock_prescale_set(clock_div_1); // Enable 16 MHz on Trinket
      #endif

      strip.begin(); // Initialize pins for output
      strip.show(); // Turn all LEDs off ASAP


      int head = 0, tail = -10; // Index of first 'on' and 'off' pixels
      uint32_t color = 0xFFFFFF; // 'On' color (starts red)

      void loop()

      //strip.setPixelColor(head, color); // 'On' pixel at head
      //strip.setPixelColor(tail, 0); // 'Off' pixel at tail
      strip.show(); // Refresh strip
      delay(20); // Pause 20 milliseconds (~50 FPS)

      getData();

      if (mode == 1)

      for (int i = 0; i < (60); i++)

      if (i % 2 == 0)
      strip.setPixelColor(i, G, R, B);

      strip.setBrightness(Bright);
      strip.show();

      else

      for (int i = 0; i < (60); i++)

      if (i % 2 == 0)
      strip.setPixelColor(i, 150, 200, 40);

      strip.setBrightness(255);
      strip.show();



      int readLine(int readch, char * buffer, int len)

      static int pos = 0;
      int rpos;

      if (readch > 0)

      switch(readch)

      case 'r':

      break;

      case 'n':

      rpos = pos;
      pos = 0;
      return rpos;

      default:

      if (pos < len-1)

      buffer[pos++] = readch;
      buffer[pos] = 0;




      return 0;



      void getData()

      char buf[80];
      bool redo = true;

      if(readLine(Serial.read(), buf, 80) > 0)

      int i = 0;
      int j = 0;
      bool skip = false;
      char fin[3];
      if (skip == false)

      do// mode

      switch (buf[i])

      case 'n':

      skip = true;
      redo = false;
      break;

      case '
      j++;
      while(redo);
      redo = true;
      j = 0;




      if (skip == false)

      do// number of colors

      switch (buf[i])
      ':

      numColors = atoi(fin);
      //Serial.print(numColors);
      i++;
      redo = false;
      break;

      default:

      fin[j] = buf[i];
      i++;
      break;


      j++;
      while(redo);
      redo = true;
      j = 0;




      if (skip == false)

      do//

      switch (buf[i])
      ':

      fadeSpeed = atoi(fin);
      //Serial.print(fadeSpeed);
      i++;
      redo = false;
      break;

      default:

      fin[j] = buf[i];
      i++;
      break;


      j++;
      while(redo);
      redo = true;
      j = 0;




      if (skip == false)

      do

      switch (buf[i])

      case 'n':

      skip = true;
      redo = false;
      break;

      case '
      j++;
      while(redo);
      redo = true;
      j = 0;




      if (skip == false)

      do

      switch (buf[i])
      ':

      R = atoi(fin);
      //Serial.print(R);
      i++;
      redo = false;
      break;

      default:

      fin[j] = buf[i];
      i++;
      break;


      j++;
      while(redo);
      redo = true;
      j = 0;




      if (skip == false)

      do

      switch (buf[i])
      ':

      G = atoi(fin);
      //Serial.print(G);
      i++;
      redo = false;
      break;

      default:

      fin[j] = buf[i];
      i++;
      break;


      j++;
      while(redo);
      redo = true;
      j = 0;




      if (skip == false)

      do

      switch (buf[i])

      case 'n':

      skip = true;
      redo = false;
      break;

      case '
      j++;
      while(redo);
      redo = true;
      j = 0;




      if (skip == false)

      do

      switch (buf[i])

      case 'n':

      Bright = atoi(fin);
      //Serial.println(Bright);
      i++;
      redo = false;
      break;

      default:

      fin[j] = buf[i];
      i++;
      break;


      j++;
      while(redo);
      redo = true;
      j = 0;









      rgb-led arduino-pro-micro led-strip






      share|improve this question









      New contributor



      BoatHouse is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.










      share|improve this question









      New contributor



      BoatHouse is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.








      share|improve this question




      share|improve this question








      edited 7 hours ago









      VE7JRO

      1,8686 gold badges14 silver badges24 bronze badges




      1,8686 gold badges14 silver badges24 bronze badges






      New contributor



      BoatHouse is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.








      asked 8 hours ago









      BoatHouseBoatHouse

      223 bronze badges




      223 bronze badges




      New contributor



      BoatHouse is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.




      New contributor




      BoatHouse is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.

























          3 Answers
          3






          active

          oldest

          votes


















          2














          As Majenko already mention, use a separate power supply.



          • Use that power to power the LED strip(s).

          • Use the MCU to control the data and clock lines.

          • Connect grounds together.





          share|improve this answer

























          • MCU? I'm really new so I don't know what that is. I'm using the SCK and MISO pins. Is that the same thing?

            – BoatHouse
            8 hours ago






          • 1





            An MCU is a Micro Controller Unit, your Arduino is one (example of an ) MCU. The SCK is the clock line (Serial Clock) and MISO (Master In Slave Out) are data lines. If you google for SPI you will find out what SCK and MISO are meant for.

            – Michel Keijzers
            8 hours ago



















          2















          So am I right in this assumption?




          Yep.




          and If so, what can I do to increase the amount of pixels I can power at full range?




          Simple: don't power it from the Arduino. Add a proper external power supply that is capable of providing the current you require.






          share|improve this answer
































            2














            Managing your power budget is a normal part of electronics projects. You can only draw about 500 mA total from the USB port, and less than that from the 5V line if your Arduino is powered from USB. If you drive your Arduino with ≈7V into the barrel connector you might be able to pull a full amp from the 5V rail, but it depends on how hot the voltage regulator gets. The higher the input voltage into the regulator, the more heat you generate for a given amount of current. On a genuine Arduino board the voltage regulator should have an overheat protection circuit, which will cause it to shut off when it gets too hot. Cheap knockoffs may just burn out.



            When you start using higher current devices like motors or LED strips, it's usually a good idea to switch to a separate (regulated) power supply for those devices. Tie the ground lines together, and since you use separate power supplies for the Arduino and your other devices, they don't affect each other's supply voltages.






            share|improve this answer





























              Your Answer






              StackExchange.ifUsing("editor", function ()
              return StackExchange.using("schematics", function ()
              StackExchange.schematics.init();
              );
              , "cicuitlab");

              StackExchange.ready(function()
              var channelOptions =
              tags: "".split(" "),
              id: "540"
              ;
              initTagRenderer("".split(" "), "".split(" "), channelOptions);

              StackExchange.using("externalEditor", function()
              // Have to fire editor after snippets, if snippets enabled
              if (StackExchange.settings.snippets.snippetsEnabled)
              StackExchange.using("snippets", function()
              createEditor();
              );

              else
              createEditor();

              );

              function createEditor()
              StackExchange.prepareEditor(
              heartbeatType: 'answer',
              autoActivateHeartbeat: false,
              convertImagesToLinks: false,
              noModals: true,
              showLowRepImageUploadWarning: true,
              reputationToPostImages: null,
              bindNavPrevention: true,
              postfix: "",
              imageUploader:
              brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
              contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
              allowUrls: true
              ,
              onDemand: true,
              discardSelector: ".discard-answer"
              ,immediatelyShowMarkdownHelp:true
              );



              );






              BoatHouse is a new contributor. Be nice, and check out our Code of Conduct.









              draft saved

              draft discarded


















              StackExchange.ready(
              function ()
              StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2farduino.stackexchange.com%2fquestions%2f67947%2fwhat-can-i-do-to-increase-the-amount-of-leds-i-can-power-with-a-pro-micro%23new-answer', 'question_page');

              );

              Post as a guest















              Required, but never shown

























              3 Answers
              3






              active

              oldest

              votes








              3 Answers
              3






              active

              oldest

              votes









              active

              oldest

              votes






              active

              oldest

              votes









              2














              As Majenko already mention, use a separate power supply.



              • Use that power to power the LED strip(s).

              • Use the MCU to control the data and clock lines.

              • Connect grounds together.





              share|improve this answer

























              • MCU? I'm really new so I don't know what that is. I'm using the SCK and MISO pins. Is that the same thing?

                – BoatHouse
                8 hours ago






              • 1





                An MCU is a Micro Controller Unit, your Arduino is one (example of an ) MCU. The SCK is the clock line (Serial Clock) and MISO (Master In Slave Out) are data lines. If you google for SPI you will find out what SCK and MISO are meant for.

                – Michel Keijzers
                8 hours ago
















              2














              As Majenko already mention, use a separate power supply.



              • Use that power to power the LED strip(s).

              • Use the MCU to control the data and clock lines.

              • Connect grounds together.





              share|improve this answer

























              • MCU? I'm really new so I don't know what that is. I'm using the SCK and MISO pins. Is that the same thing?

                – BoatHouse
                8 hours ago






              • 1





                An MCU is a Micro Controller Unit, your Arduino is one (example of an ) MCU. The SCK is the clock line (Serial Clock) and MISO (Master In Slave Out) are data lines. If you google for SPI you will find out what SCK and MISO are meant for.

                – Michel Keijzers
                8 hours ago














              2












              2








              2







              As Majenko already mention, use a separate power supply.



              • Use that power to power the LED strip(s).

              • Use the MCU to control the data and clock lines.

              • Connect grounds together.





              share|improve this answer













              As Majenko already mention, use a separate power supply.



              • Use that power to power the LED strip(s).

              • Use the MCU to control the data and clock lines.

              • Connect grounds together.






              share|improve this answer












              share|improve this answer



              share|improve this answer










              answered 8 hours ago









              Michel KeijzersMichel Keijzers

              8,1876 gold badges21 silver badges41 bronze badges




              8,1876 gold badges21 silver badges41 bronze badges















              • MCU? I'm really new so I don't know what that is. I'm using the SCK and MISO pins. Is that the same thing?

                – BoatHouse
                8 hours ago






              • 1





                An MCU is a Micro Controller Unit, your Arduino is one (example of an ) MCU. The SCK is the clock line (Serial Clock) and MISO (Master In Slave Out) are data lines. If you google for SPI you will find out what SCK and MISO are meant for.

                – Michel Keijzers
                8 hours ago


















              • MCU? I'm really new so I don't know what that is. I'm using the SCK and MISO pins. Is that the same thing?

                – BoatHouse
                8 hours ago






              • 1





                An MCU is a Micro Controller Unit, your Arduino is one (example of an ) MCU. The SCK is the clock line (Serial Clock) and MISO (Master In Slave Out) are data lines. If you google for SPI you will find out what SCK and MISO are meant for.

                – Michel Keijzers
                8 hours ago

















              MCU? I'm really new so I don't know what that is. I'm using the SCK and MISO pins. Is that the same thing?

              – BoatHouse
              8 hours ago





              MCU? I'm really new so I don't know what that is. I'm using the SCK and MISO pins. Is that the same thing?

              – BoatHouse
              8 hours ago




              1




              1





              An MCU is a Micro Controller Unit, your Arduino is one (example of an ) MCU. The SCK is the clock line (Serial Clock) and MISO (Master In Slave Out) are data lines. If you google for SPI you will find out what SCK and MISO are meant for.

              – Michel Keijzers
              8 hours ago






              An MCU is a Micro Controller Unit, your Arduino is one (example of an ) MCU. The SCK is the clock line (Serial Clock) and MISO (Master In Slave Out) are data lines. If you google for SPI you will find out what SCK and MISO are meant for.

              – Michel Keijzers
              8 hours ago














              2















              So am I right in this assumption?




              Yep.




              and If so, what can I do to increase the amount of pixels I can power at full range?




              Simple: don't power it from the Arduino. Add a proper external power supply that is capable of providing the current you require.






              share|improve this answer





























                2















                So am I right in this assumption?




                Yep.




                and If so, what can I do to increase the amount of pixels I can power at full range?




                Simple: don't power it from the Arduino. Add a proper external power supply that is capable of providing the current you require.






                share|improve this answer



























                  2












                  2








                  2








                  So am I right in this assumption?




                  Yep.




                  and If so, what can I do to increase the amount of pixels I can power at full range?




                  Simple: don't power it from the Arduino. Add a proper external power supply that is capable of providing the current you require.






                  share|improve this answer














                  So am I right in this assumption?




                  Yep.




                  and If so, what can I do to increase the amount of pixels I can power at full range?




                  Simple: don't power it from the Arduino. Add a proper external power supply that is capable of providing the current you require.







                  share|improve this answer












                  share|improve this answer



                  share|improve this answer










                  answered 8 hours ago









                  MajenkoMajenko

                  73.4k4 gold badges38 silver badges85 bronze badges




                  73.4k4 gold badges38 silver badges85 bronze badges
























                      2














                      Managing your power budget is a normal part of electronics projects. You can only draw about 500 mA total from the USB port, and less than that from the 5V line if your Arduino is powered from USB. If you drive your Arduino with ≈7V into the barrel connector you might be able to pull a full amp from the 5V rail, but it depends on how hot the voltage regulator gets. The higher the input voltage into the regulator, the more heat you generate for a given amount of current. On a genuine Arduino board the voltage regulator should have an overheat protection circuit, which will cause it to shut off when it gets too hot. Cheap knockoffs may just burn out.



                      When you start using higher current devices like motors or LED strips, it's usually a good idea to switch to a separate (regulated) power supply for those devices. Tie the ground lines together, and since you use separate power supplies for the Arduino and your other devices, they don't affect each other's supply voltages.






                      share|improve this answer































                        2














                        Managing your power budget is a normal part of electronics projects. You can only draw about 500 mA total from the USB port, and less than that from the 5V line if your Arduino is powered from USB. If you drive your Arduino with ≈7V into the barrel connector you might be able to pull a full amp from the 5V rail, but it depends on how hot the voltage regulator gets. The higher the input voltage into the regulator, the more heat you generate for a given amount of current. On a genuine Arduino board the voltage regulator should have an overheat protection circuit, which will cause it to shut off when it gets too hot. Cheap knockoffs may just burn out.



                        When you start using higher current devices like motors or LED strips, it's usually a good idea to switch to a separate (regulated) power supply for those devices. Tie the ground lines together, and since you use separate power supplies for the Arduino and your other devices, they don't affect each other's supply voltages.






                        share|improve this answer





























                          2












                          2








                          2







                          Managing your power budget is a normal part of electronics projects. You can only draw about 500 mA total from the USB port, and less than that from the 5V line if your Arduino is powered from USB. If you drive your Arduino with ≈7V into the barrel connector you might be able to pull a full amp from the 5V rail, but it depends on how hot the voltage regulator gets. The higher the input voltage into the regulator, the more heat you generate for a given amount of current. On a genuine Arduino board the voltage regulator should have an overheat protection circuit, which will cause it to shut off when it gets too hot. Cheap knockoffs may just burn out.



                          When you start using higher current devices like motors or LED strips, it's usually a good idea to switch to a separate (regulated) power supply for those devices. Tie the ground lines together, and since you use separate power supplies for the Arduino and your other devices, they don't affect each other's supply voltages.






                          share|improve this answer















                          Managing your power budget is a normal part of electronics projects. You can only draw about 500 mA total from the USB port, and less than that from the 5V line if your Arduino is powered from USB. If you drive your Arduino with ≈7V into the barrel connector you might be able to pull a full amp from the 5V rail, but it depends on how hot the voltage regulator gets. The higher the input voltage into the regulator, the more heat you generate for a given amount of current. On a genuine Arduino board the voltage regulator should have an overheat protection circuit, which will cause it to shut off when it gets too hot. Cheap knockoffs may just burn out.



                          When you start using higher current devices like motors or LED strips, it's usually a good idea to switch to a separate (regulated) power supply for those devices. Tie the ground lines together, and since you use separate power supplies for the Arduino and your other devices, they don't affect each other's supply voltages.







                          share|improve this answer














                          share|improve this answer



                          share|improve this answer








                          edited 6 hours ago

























                          answered 7 hours ago









                          Duncan CDuncan C

                          2,7592 gold badges8 silver badges20 bronze badges




                          2,7592 gold badges8 silver badges20 bronze badges























                              BoatHouse is a new contributor. Be nice, and check out our Code of Conduct.









                              draft saved

                              draft discarded


















                              BoatHouse is a new contributor. Be nice, and check out our Code of Conduct.












                              BoatHouse is a new contributor. Be nice, and check out our Code of Conduct.











                              BoatHouse is a new contributor. Be nice, and check out our Code of Conduct.














                              Thanks for contributing an answer to Arduino Stack Exchange!


                              • Please be sure to answer the question. Provide details and share your research!

                              But avoid


                              • Asking for help, clarification, or responding to other answers.

                              • Making statements based on opinion; back them up with references or personal experience.

                              To learn more, see our tips on writing great answers.




                              draft saved


                              draft discarded














                              StackExchange.ready(
                              function ()
                              StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2farduino.stackexchange.com%2fquestions%2f67947%2fwhat-can-i-do-to-increase-the-amount-of-leds-i-can-power-with-a-pro-micro%23new-answer', 'question_page');

                              );

                              Post as a guest















                              Required, but never shown





















































                              Required, but never shown














                              Required, but never shown












                              Required, but never shown







                              Required, but never shown

































                              Required, but never shown














                              Required, but never shown












                              Required, but never shown







                              Required, but never shown







                              Popular posts from this blog

                              Canceling a color specificationRandomly assigning color to Graphics3D objects?Default color for Filling in Mathematica 9Coloring specific elements of sets with a prime modified order in an array plotHow to pick a color differing significantly from the colors already in a given color list?Detection of the text colorColor numbers based on their valueCan color schemes for use with ColorData include opacity specification?My dynamic color schemes

                              Invision Community Contents History See also References External links Navigation menuProprietaryinvisioncommunity.comIPS Community ForumsIPS Community Forumsthis blog entry"License Changes, IP.Board 3.4, and the Future""Interview -- Matt Mecham of Ibforums""CEO Invision Power Board, Matt Mecham Is a Liar, Thief!"IPB License Explanation 1.3, 1.3.1, 2.0, and 2.1ArchivedSecurity Fixes, Updates And Enhancements For IPB 1.3.1Archived"New Demo Accounts - Invision Power Services"the original"New Default Skin"the original"Invision Power Board 3.0.0 and Applications Released"the original"Archived copy"the original"Perpetual licenses being done away with""Release Notes - Invision Power Services""Introducing: IPS Community Suite 4!"Invision Community Release Notes

                              François Viète Contents Biography Work and thought Bibliography See also Notes Further reading External links Navigation menup. 21Google Bookspp. 75–77Google BooksDe thou (from University of Saint Andrews)ArchivedGoogle BooksGoogle BooksGoogle BooksGoogle booksGoogle Bookscc-parthenay.frL'histoire universelle (fr)Universal History (en)ArchivedAdsabs.harvard.eduPagesperso-orange.frArchive.orgChikara Sasaki. Descartes' mathematical thought p.259Google BooksGoogle BooksGoogle Bookspp. 152 and onwardGoogle BooksGoogle BooksScribd.comGoogle Books1257-7979Google BooksGoogle BooksGoogle BooksGoogle BooksGoogle BooksGoogle BooksGallica.bnf.frGoogle BooksGoogle Books"François Viète"Francois Viète: Father of Modern Algebraic NotationThe Lawyer and the GamblerAbout TarporleySite de Jean-Paul GuichardL'algèbre nouvelle"About the Harmonicon"cb120511976(data)1188044800000 0001 0913 5903n82164680ola2013766880073431702w6vt1sb70287374827140948071409480