Not able to upload sketch when LED Bar is connected

I have the following setup:
Arduino Uno
Grove Base Shield for Arduino (v2, I think)
Grove LED Bar v2

  1. If I…
    …have just the base shield attached to the Uno (and not LED bar),
    Open the Arduino IDE
    Open the blink sketch
    (the sketch doesn’t matter - just need something to upload)
    And then upload the sketch…
    …the sketch is uploaded and everything is fine

  2. If I…
    …have the base shield attached to the Uno
    …and also have a Grove LED button attached to one of the digital ports, say D2
    Open the Arduino IDE
    Open the blink sketch
    And then upload the sketch…
    …the sketch is uploaded and everything is fine

  3. If I…
    …have the base shield attached to the Uno
    …and also have the Grove LED Bar attached to one of the digital ports, say D2
    Open the Arduino IDE
    Open the blink sketch
    And then upload the sketch…
    …I get the following error:
    (and this is with verbose output during upload on)

      Using Port                    : /dev/cu.usbmodem1411
      Using Programmer              : arduino
      Overriding Baud Rate          : 115200
      avrdude: stk500_recv(): programmer is not responding
      avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x00
      avrdude: stk500_recv(): programmer is not responding
      avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x00
      avrdude: stk500_recv(): programmer is not responding
      avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0x00
      avrdude: stk500_recv(): programmer is not responding
    
  • I’ve tried plugging the LED Bar into different digital ports, but I always get the same error.
  • I have 2 of the Grove LED bars, and I’ve tried both, in different ports, but always get the same error.

If I then unplug the LED bar, I’m then able to upload the sketch.

Any idea as to what’s going on? And how to fix it?

This is a strange phenomenon, you can provide a picture of the hardware when you can not upload.

Yes, though this just shows what I previously reported, in that, I have a Arduino Uno, the Grove Base Shield, and a LED bar (a Circular LED in the case of the picture):

(here, in these pictures, it’s connected to D6)

Here’s an update:
I have two Macs (one which was used when I reported the problem, and another which never had an Arduino on it before)

With the second mac…

  • I installed the latest Arduino IDE

  • With just the Grove Base Shield plugged into the Arduino Uno (no LED bar, no LED circle), I connected them to the second mac via USB

  • I then ran the Arduino IDE

  • set Tools > Board to Arduino Uno

  • set Tools > Port to the port my Uno was on

  • set Tools > Programmer to ArduinoISP

  • opened up the Blink sketch(File > Example > 01. Basic > Blink) , compiled, and uploaded
    …at this point, it ran fine and everything was as expected

  • Next, I plugged in one of my LED bars (I own 2) into one of the digital ports on the Grove Base Shield (like D2, D3, etc…)

  • Then attempted to upload. When I uploaded, I got the “programmer is not responding” error I reported in my previous message

  • I tried using a different digital port, but kept getting the same error. I tried a few different one, but each one yielded the same result.

  • I tried using my LED Circle, but also got the same error

(this was all on my second mac, which prior to today, had never have any Arduino tools or software on it)

Some other things to note: I tried with a different Arduino Uno, but got the same result. Also, this used to work. it was maybe 9-12 months ago (I don’t remember when, but it was a while ago) and using Uno <-> grove base shield <> LED bar was working. One thing that has changed was that I’ve upgraded the IDE. Could that have something to do with it? Could the latest version of the Arduino IDE and avrdude, on a Mac, have some sort of compatibility issue?

It could be a software compatibility issue.But I think it might be that the USB port doesn’t have enough power.Maybe you can switch to a new computer, or use a powered USB hub.

It could be a software compatibility issue

Perhaps, however the second computer I tested this with, had never had the Arduino IDE installed on it, and never had an Arduino connected to it. It was a fresh machine, and I downloaded and installed the latest Arduino IDE. It doesn’t get much cleaner than that.

…or use a powered USB hub

No luck, I tried 2 different USB hubs, one with an external power supply, the other powered just off the USB port. Same results as before.

Maybe you can switch to a new computer

Um… yea, I reported that I did that already in my last post.

The tally so far:
2 computers (both macs)
2 Aruduino Unos
2 external USB hubs
2 LED bars
1 LED Circle
1 Grove base shield

All experiencing the same issue:
With just the simple “Blink” sketch opened (so not even including Grove_LED_Bar.h)
When just then Grove base shield is connected to the Arduino Uno, uploading the sketch works fine, all the time.

As soon as I add one of the LED bars, or add the LED circle, when I attempt to upload the sketch, I get the errors about “avrdude: stk500_recv(): programmer is not responding”. I’ve turned on verbose output during uploading, but no additional information is logged.

My preliminary judgment is that the current used by LED bar is too high. Maybe you can not connect LED bar, and then connect LED bar after burning the program.

I think I figured out the issue. Here is my analysis. Maybe it will help you & possibly others with troubleshooting in the future.

I took a spare cable (the grove universal one), cut it in half, and then soldered some male header pins to it. I connected it to 5V, GND, and digital pins 8 & 9 of my Uno, and the LED bar worked:

While disconnected from the Uno, I used my multimeter with the grove base shield (v2.1) and examined the pins on the shield. I did not find any shorts.

I then attached the grove shield, and attached the LED bar to 5V, GND, digital pins 8 & 9:


(so, same as the previous test, only the grove shield was added)
…and it still worked.

I then changed the cable to a standard grove cable and plugged into port D8 (so using digital pins 8 & 9). When I turned it on, it did not work (the LEDs did not light up):

(the port is irrelevant… I tried this with the other digital ports (after updating the code, of course) and got the same results)

I disconnected the LED bar, and used my multimeter to measure the voltage of the digital port D8 (but again, the port is irrelevant as the other digital ports measured the same) and only measured 2.13 volts. I noticed that the labels on the ports say VCC and GND, not 5V and GND. Why not 5V?

I disconnected the shield, and probed for what was connecting to VCC. 5V on the side of the shield wasn’t connected. 3V on the side of the shield wasn’t connected. Even the VCC of the ISCP in the back wasn’t connected.

Then I got a match. On the side of the shield there’s supposed to be a switch that toggles between 3V and 5V. The switch on my grove shield appears to be broken, and only partially there:

It might be hard to tell from the photo, but it appears that the bottom half of the switch is still there, but the top half (the mechanical part) is broken and sheared off.

I’m glad to hear your share. I hope it can help more people.