Raspberry Pi 4 is out

Keep in mind that the RasPi 4 has a USB-C connector for power now. You need the proper connector with your 2.5 A PS

4 Likes

I've made a successful print with my 4gig pi4. Couple of issues, my LEDStrip plugin didn't survive the backup/restore for some reason, but that was easily rectified with a re-install. More serious is that my USB webcam isn't streaming now. I did initially plug it into one of the USB3 ports, now moved it over, but still no joy - any idea's? It's been such a long time since I setup my pi/octoprint, perhaps I've forgotten something...
Texy

1 Like

Also I just realised that 'anywhere' IS picking up a webcam image- the automated email contained a still at the end of the print.
Texy

1 Like

Installs, boots, connects and prints....

EDIT: I had that connection problem with the plugin repo, but these weren't just limited to pi4, turning off the connectivity check fixed it.

Is there any way of editing the format of the webcam stream from the web interface?
Now I have the increased bandwidth, I'd like to up the camera to 1080p 30fps. I can edit the octoprint.txt file, but it seems like something the UI should be capable of managing.

I suppose it would be good to know if the wifi is trying to connect on the 5Ghz side of things and whether or not that succeeded.

Just remember that even tho most routers nowadays HAVE 5g wifi, doesn't mean it's automatically TURNED ON, so, check that too

Oh, plus, you have to set a separate password for the 5g. Although, you CAN use the same one as 2.4 if you want

I picked up a Pi 4 1GB today. I'll get this installed directly and see what I can see with it- my printer is currently down but will be up tomorrow (Replacing the hotend and extruder tonight) and I can get some testing in!

Thanks to the awesome people at Pimoroni I also now have one coming in and should be able to give it a test sometime next week myself.

3 Likes

I did not buy my RPi4 for use with Octoprint. I only temporarily installed Guy’s nightly build to give him the immediate feedback that it boots up and seems to work OK.

I have found that The RPi4 consumes more power and runs a lot hotter than the RPi3B+. To control the heat and to stop the Pi throttling back I have had to instal both a heat sink and a 40mm fan.

I wonder if the RPi4 is the right fit for Octoprint? By upgrading the Octopi host computer to more power hungry models aren’t you just eroding the main purpose of Octoprint?

I run Cura on my PC, send it via WiFi to the Pi, I’m then able to shutdown the PC and leave Octoprint, the Pi and the Cr10s Pro to it. I have a Logitech 270 for monitoring and simultaneously use a Nikon D7000 for Octolapse. I also use Octopod for notifications, and TP-Link Smartplug for thermal runaway protection and remote emergency power off. All work perfectly together on the RPi3B+ and apart from the possible speeding up of the Octolapse rendering I personally can’t see the advantage of using the Pi4 over the Pi3B+. I’m a newbie so am I missing a worthwhile Octoprint function or a plugin that would really benefit from a faster processor or more memory?

1 Like

My two cents: The Pi4 is complete overkill for OctoPrint and wasted on driving a printer. But you can bet your hat on people still wanting to use it, just as they insist on using the 0w which is severely underpowered :woman_shrugging:

2 Likes

And you can now run more than one printer.
For this reason it use a ATX intel board which consumes 7 Watt instead of 5 Watt a rpi3 consumes.
But you have much more power.
It is also worth using a pi4 when you run as an example an unify controller for your wifi network, a firewall or a add blocker on it ,too.
Then it becomes more energy efficient.

I actually drive 2x MKS gen 1.4, 1 MKS SBASE, and in the near future a GBRL based machine + 2+ virtual instances for development on that machine.
And it doesn't give a f... about it :smiley:
2 Webcams are connected. + several demo streams via mjpeg streamer.

Honestly, opening up the RAM from 1GB to anything more to me sounds like something I'd like to put under the test. I've often thought that this is the main limitation to the previous Pi computers (along with the 2.4Ghz wifi limitation and USB 2.0).

I would also be curious to see the output of lsusb -vvv to see if they've changed the bus(es) again.

2 Likes

Is this OK?

Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Couldn't open device, some information will be missing
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 9 Hub
bDeviceSubClass 0
bDeviceProtocol 1 Single TT
bMaxPacketSize0 64
idVendor 0x1d6b Linux Foundation
idProduct 0x0002 2.0 root hub
bcdDevice 4.19
iManufacturer 3
iProduct 2
iSerial 1
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 0x0019
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0
bmAttributes 0xe0
Self Powered
Remote Wakeup
MaxPower 0mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 9 Hub
bInterfaceSubClass 0
bInterfaceProtocol 0 Full speed (or root) hub
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0004 1x 4 bytes
bInterval 12

Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Couldn't open device, some information will be missing
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 3.00
bDeviceClass 9 Hub
bDeviceSubClass 0
bDeviceProtocol 3
bMaxPacketSize0 9
idVendor 0x1d6b Linux Foundation
idProduct 0x0003 3.0 root hub
bcdDevice 4.19
iManufacturer 3
iProduct 2
iSerial 1
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 0x001f
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0
bmAttributes 0xe0
Self Powered
Remote Wakeup
MaxPower 0mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 9 Hub
bInterfaceSubClass 0
bInterfaceProtocol 0 Full speed (or root) hub
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0004 1x 4 bytes
bInterval 12
bMaxBurst 0

Bus 001 Device 002: ID 2109:3431 VIA Labs, Inc. Hub
Couldn't open device, some information will be missing
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.10
bDeviceClass 9 Hub
bDeviceSubClass 0
bDeviceProtocol 1 Single TT
bMaxPacketSize0 64
idVendor 0x2109 VIA Labs, Inc.
idProduct 0x3431 Hub
bcdDevice 4.20
iManufacturer 0
iProduct 1
iSerial 0
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 0x0019
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0
bmAttributes 0xe0
Self Powered
Remote Wakeup
MaxPower 100mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 9 Hub
bInterfaceSubClass 0
bInterfaceProtocol 0 Full speed (or root) hub
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0001 1x 1 bytes
bInterval 12

Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Couldn't open device, some information will be missing
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 9 Hub
bDeviceSubClass 0
bDeviceProtocol 1 Single TT
bMaxPacketSize0 64
idVendor 0x1d6b Linux Foundation
idProduct 0x0002 2.0 root hub
bcdDevice 4.19
iManufacturer 3
iProduct 2
iSerial 1
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 0x0019
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0
bmAttributes 0xe0
Self Powered
Remote Wakeup
MaxPower 0mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 9 Hub
bInterfaceSubClass 0
bInterfaceProtocol 0 Full speed (or root) hub
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0004 1x 4 bytes
bInterval 12

@Yaz1648 I was hoping to see the USB power control stuff on there but it's missing. I didn't think sudo was required for that but maybe it is...? sudo lsusb -vvv (Apologies if that just brings up an identical report but this one suggests "Couldn't open device, some information will be missing").

I'd be trying to see if the two different buses or even all four connectors could be programmatically turned OFF/ON via uhubctl, in other words. If the word "gang" appears in one of the bus descriptors then it wouldn't be possible to individually toggle them. So far, though, it looks as if they took the 3B+ design of split buses and then upgraded one of them to USB 3.0.

1 Like

Works very well on my Pi 4B 2GB.

I installed the image from scratch, ran the welcome stuff, copied over the .octoprint directory, changed the hostname, and it was pretty much good to go as a full replacement of my previous Pi. Everything else was related to klipper, and also pretty straightforward.

Excellent work, @guysoft!

And @foosel, of course.

Oops, sorry, didn't realise it wasn't just @guysoft working on the image!

2 Likes

When will it be ported to Py 3 branch? Everyone is dropping support for 2.7 by 2020.

1 Like

It's planned for OctoPrint 1.4.0 to support Py 2 and Py 3 (https://www.youtube.com/watch?v=OQnlLEDMymc&t=1s)