Mk3S, Pi3 b+ and Webcam all works great till USB lights are attached

What is the problem?

Hi all, so I am by no means an IT expert, far from it. so this might be an easy fix but I am stumped.

I have set up a Raspberry Pi 3 b+ running Octoprint connected to the Prusa I3 Mk3S via USB, with a Logitiech Camera connected, and it was all working fine. I wanted to add some lighting, so I purchased this USB 5v LED lights (https://www.amazon.co.uk/gp/product/B07SQVLRCD/ref=ox_sc_act_title_1?smid=A124YGLFVPBOL2&psc=1), however when I plug it in to the Rpi 3b+ USB, the Pi and the Mk3S suddenly lose connection and can not re-connect. and the Lights flicker, just slightly. Once I unplug the USB Lights, the Printer and Pi start talking like nothings happened. Has anyone got any idea what the heck is going on?

On a second note, ones I can get the lights to behave themselves and do as they are told, is there anyway I can add a button to Octoprint to turn the lights on and off when I want?

What did you already try to solve it?

Repeated the issue by connecting and disconnecting the USB lgihts. tried different USB ports for all the attached items, and issue still persists

What power supply do you have for the Pi? If the power in is not high enough, then it will struggle to output. That sounds like what is happening, the lights cause too much load on the USB, so the entire controller cuts out. I will look at what the max power output is on the 3B+.

Here's the documentation on the power draw etc. It says the Pi3B+ max output is 1.2A so check your lights + camera + printer power consumption.

https://www.raspberrypi.org/documentation/hardware/raspberrypi/power/README.md

1 Like

You may get away with plugging the USB lights into a powered USB hub attached to the RPi USB port.

1 Like

Do you think I could bypass this issue by wiring the lights directly to the GPIO pins or is it the board that is limited rather than just the USB ports?

It's 'peripherals' which does include GPIO, USB, as well as the Raspberry Pi Camera (if you had one).

External power is probably the best way to go here

@LoganEng. If I understand correctly, No.

GPIO pins typically only sink/source 10 ish mA. Use a cheapo relay module.

The problem is most likely that you have maxed out the available power. There is a limit to the power your Pi can accept through its power input port. As others have suggested, switching to a powered USB hub may help. The hub then provides the power to any attached peripherals, reducing the load on the Pi.

Thank you all for the help. I have decided to go down the Powered Hub route but apparently that isn't as straight forward as it should be either, according to this, there are many that don't work.
https://elinux.org/RPi_Powered_USB_Hubs#:~:text=Raspberry%20Pi%20Specific%20Hubs,-Recently%2C%20two%20new&text=Pimoroni%20PiHub%204%20port%20USB,A%20to%20micro%20B%20cable.

Next I need to learn how to use a MOSFET and a Pi, then I assume some form of coding to tell the Pi what to do with it. I feel I may have taken on more than I can chew haha.

Could do this:

  1. Get a standard usb power supply (e.g old phone charger), and connect your lights to that.
  2. Get a relay or little relay module (e.g like this) to control turning the lights on and off. Run 2 wires from your GPIO pins on Pi, to the relay. (also may be possible to run them from your MCU / printer control board)
1 Like