Communication Problems using RPi 3


#1

What is the problem?
Printer will randomly Pause

I have recently moved to a Pi3B with external HDD from an original PiB (one of the very first)
USB lead is the same and the old PiB which has no communication problems - I can swap it in and it works fine - it's an older install 0.13 but upgraded to I think one version behind the new one.
New Pi3B is on latest octopi image 0.15.1

What did you already try to solve it?
Clicking the Fake Ack will fix it - until the next time.

Additional information about your setup (OctoPrint version, OctoPi version, printer, firmware, octoprint.log, serial.log or output on terminal tab, ...)

Printer is an Anet A8 with Marlin FW 1.1.8

Terminal extract
Recv: ok
Send: N193805 G1 X142.313 Y116.179 E2760.2098998
Recv: ok
Send: N193806 G1 X142.433 Y116.218 E2760.21429
102
Recv: T:209.60 /210.00 B:63.06 /65.00ok
Recv: T:209.78 /210.00 B:62.91 /65.00 @:94 B@:0
Recv: T:209.78 /210.00 B:62.83 /65.00 @:95 B@:127
Recv: T:210.05 /210.00 B:62.92 /65.00 @:90 B@:127
Recv: T:210.16 /210.00 B:63.05 /65.00 @:90 B@:127

What looks to be happen is the Acknowledgement is being sent back, but is appended and concatenated in with the receipt of some temperature measurements (see 5th line) - and I think not being recognised, as if I catch this when it happens the last 3 Temp communications come in when the printer is paused - so there's at least communication back to the Pi from the printer at that time.

i've read the FAQ, tried changing a number of timeouts etc but this is still happening on the Pi3B

I've read a few threads with others having this/similar issues - the only solution I've seen is to get rid of the HDD and try SD card only and USB printer - which will be my next thing if nobody can suggest anything else.

Any help appreciated.

Edit - additional information
My old and working original PiB is using
OctoPrint 1.3.9 running on OctoPi 0.13.0

My new (problematic) Pi3B is running
Octoprint on OctoPi 0.15.1

I've just looked at the release notes for 0.15.1 that and it says it comes with OctoPrint 1.3.8 - I cannot remember upgrading or being asked to - so will check if it's a version behind the working Pi when my current print job ends.

Second Edit
Problematic Pi3B is running
OctoPrint 1.3.9 running on OctoPi 0.15.1

So, the printer is the same, the usb lead is the same, the OctoPrint version is the same - it's looking like I'm going to try SD card only as a previous poster tried


#2

1.3.9 is the correct release to be on. I don't think this is the root of your problem, but please share the output from vcgencmd get_throttled.


#3

I would treat this as a serial-related problem since it's behaving like one.

  • Lower the baud rate until it works perfectly
  • Replace the cable with one which has internal metallic shielding
  • Add one or two ferrite cores on the serial cable
  • Don't include extra adapters in the serial cable line, just get one cable of the correct type
  • Make sure that you're using the good UART:
    • Disable Bluetooth on the Raspberry
    • Disable the serial port terminal shell using sudo raspi-config

What's sad is that OctoPrint is sending line numbers and checksums; you'd think this would lower the error count. But's it's the inbound serial back to the Raspi which is choking or so it seems.


#4

Thanks for helping.

throttled=0x0

I recently had an undervoltage on another Pi3 I run for home automation - and then bought a couple of official RPi power supplies - one of which I'm using on this system, so hopefully it can cope.


#5

Thanks for helping

There are a couple of things in that list that I've not tried yet so I'll give them a try and see how I get on.


#6

Good news, you haven't gone undervoltage since you [re]booted the Pi. On to the serial troubleshooting now.


#7

Well I tried disabling the serial port terminal shell, disabling bluetooth, but keeping the uart active

dtoverlay=pi3-disable-bt
enable_uart=1

and a whole lot of other options, found in

But to no avail.

Burned a Octopi 0.15.1 image onto an sd card, unplugged the hard disk drive, booted and updated octoprint to 1.3.9 - worked first time from the SD card, no messing around with any serial settings.

Seems like whatever HDD traffic is on the USB combined with octoprint traffic is too much and it fails - but removing the HDD and that's the issue resolved - this is the same as someone else experienced - not sure it's the solution I wanted, but it is a solution!

Thanks to those that helped me.


#8

How about, "it seems like the USB-based hard drive stole the good UART"...?


#9

It did occur to me that that might be the issue, but the intricacies of RPi3 serial setup is at the edge of my performance envelope :slight_smile: It did appear to me while messing around that I did have access to both UART and the mapping for ttyAMA0 did seem to change - but I didn't see an improvement in printing.

I had thought in my naivety that serial communication on a RPi3 would be a 'done deal' and there wouldn't be a 'good' and a 'not so good' UART - but at least through all of this I've learned.

Anyway - I've a working SD now - and have taken an image of it for when the SD card fails (which was why I was using the HDD after previous cards had failed).

Thanks again for your help