So, I finaly powered the Pi through the printer's PSU.
As expected : it works !
I suspected a lot of noise based on the fact that the Pi and the printer have non-shared ground; as well mentionned here, Creality's printers emits a lot of noise (due to motors, mainly). I never encountered the issue because it's the first time I play with real electricity :D. Arduino+Raspi have no issues for obvious reasons.
So, here's what I've done :
buy some XT60 Y-connector
cut one child of the XT60, goes to a LM2596 to get a 5V from the 24V
power the Pi from this new 5V line
Bonus : power a relay module with this 5V too, pinned to GPIO40 of the Pi
Strap the USB power pin (because uhubctrl doesn't work well with Raspi 3b+)
Install PSU Control and now I can even power off my printer from Octoprint
Octoprint is really a fantastic product. Thanks to the Terminal command, your help and a bit of reading, I spent some wonderful hours debugging this (as many, I love the path more than the destination ;)). Thanks also to Ragheera, I've sourced the relay/duck thing from their print on Thingiverse, they even shared an electronic schema ! (https://www.thingiverse.com/thing:3483446).
Last but not least, it may be time now to look at plugin writing. PSU Control is cool, I may want to be able to extend it with commands like ... trigger a uhubctl command when receiving a M80
I think I've reached a goal now. I'm in debt, so I'll watch the forums and offer help if possible.
You cannot be more accurate in that statement. I found it a very positive experience keeping up with this thread and appreciate the time and effort that went into this debugging done by @koreth. It's unfortunate that the new creality boards seem to be so problematic.
To be fair, my electric system here seems to be hard. It may be that one of my equipment is leaking a lot of noise to the line, and the creality may just be failing at filtering this, which is not a requirement for 99% of users. Plus, I'm a rookie in 3D printing so, I'd be happy to share the responsibility with Creality on that one
Thanks for the hint about the plugin. I tried it, but found no parameters to trigger USBControl upon event (like "print finished"). I know Octoprint has such a mechanism (signals). The thing is, printing from a Rpi3b+, if I shut my USB off, there's no more communication with the printer, so I don't want it permanently. I'm using a strap on the USB cable for now.
In french we say Β« avoir le beurre et l'argent du beurre Β» ("keep the butter and the money")
I'd like to share my experiences with these problems and how I solved them. Maybe you @foosel can include this solution in your FAQs for the new "resend requests".
Soo my printer is an Ender 3S and it worked just fine with an Raspberry Pi 3. But suddenly i experienced all these errors in my terminal, for example:
[Error:Line Number is not Last Line Number+1,]
echo:Unknown command: ...
Because it has worked well so far, I searched for the solution by changing cables, repositioning the RPi or trying another power supply. But I finally found it!
The day before i printed a drawer and pushed the cable for the LCD just behind it - like this:
Spent a day looking at the resend ratio issue that I was getting, I did the switched to use different Raspi's / cables. Also reinstalled Octoprint on the Pi, installing Octoprint on a windows tablet, and it was all down to the control cable!!! Why would this be the case? Anyway, thank you for the posting your solution it helped me track down the problem, and now I'm back to been able to use Octoprint
Bad cables can be very susceptible to interference, since they may not be shielded/twisted together. Or over time, the connections within can degrade and so becomes a bit intermittent at transferring data. There's a whole number of reasons, good that you got it sorted!
Thank you sir.. after days of troubleshooting, moving things around.. creating a shielded enclosure for my raspberry pi, cutting power line in a usb cable, adding ferrites, etc.. I knew the problem was only caused when stepper motors are used, but also when using the menus on the Ender 3 LCD.
I had folded the ribbon cable on top of itself and clipped it out of the way. Last night, I ordered another Pi as I was sure that power back from the printer had damaged mine causing EMF sensitivity.. earlier today I read this thread.. I just unfolded the cable and now I am printing with 0 resends again.. with the cable folded.. i was getting them immediately after printer starting printing object (not during rafts) I would have 20% errors within the first 10 mins of printing and the printer would move erratic..
THIS FIX WORKED FOR ME!!! Thank you very much for this insight you have shared.
You just made my day! After fiddling about with all kind of changes it looks like the display cable routing was the solution. I have put it behind the drawers and I had a lot of communication errors. Now I just folded it to the front en the errors seem to be gone!
Thank you, found this thread as I'd just started experiencing garbage and high resend requests since fitting my Pi 3B into a printer mounted case. I'd done the same and tucked the ribbon cable tidily behind the Pi.
Moving the cable and checking with the M17 / M18 commands seems to show no garbage, fingers crossed for this next print.
Thanks for this tip! For me, long prints were stopping because of comms errors. Running Octoprint from an old laptop rather than a Pi. USB cable is good quality Rather than re-routing the LCD cable, I wrapped the cable with aluminum foil (as neatly as I could) to form a shield. Also, fashioned a grounding wire by stripping a bit of copper wire, spreading the wire strands over another bit of foil and wrapped that to the shield. Taped the grounding wire to the shield, then taped the foil neatly (the foil is a bit fragile). Looped the other end of the wire and attached it to one of the control case screws on the bottom of the case. I had moved the power supply to accommodate the dual z-axis screw, so while I was at it, ran the ground wire to a screw on the power supply case as well. Clipped the LCD cable back to the extrusions so everything is neat again. Luckily, the aluminum wrap and tape didn't add much thickness, so I was able to re-use the clips. Worked like a charm! Errors went from over 12% (and killed the printer at one point) to 0%. Cheers!
Kudos for the LCD cable routing tip!!
I was setting up a new printer and had the cables all willy-nilly and was running a test print and it was messing up BADLY. I looked at the log and saw all these weird resends and UTF-8 characters like this article describes...... Naw it can't be that easy right?? Yuuup it was!!
I could actually see the results instantly in the terminal just moving the wires to a different position.
DARN RFI!! LOL! A little shielding and Bob's yer Uncle!!
Thanks for the post, Im having the same issues. From the little experementing ive done this afternoon (thanks to your post!!) Turns out using the cheapo LABISTS Power supply that gets bundled with the labists kit is SUPER noisy... going to do a test print now with the power supply that comes with my old one plus 3t, seems to be working like a charm LOL. Cheers for your helpful post.
Tracked it down to a cheap strip of LED lights I use to illuminate the build plate for the camera,
because after I unplugged those, the problem went away. Weird thing, I was using them for weeks, with no noticeable problems. wacky!
This issue had me stumped also, until I found your post. As silly as it sounds, I had my ribbon cable nicely cable managed with clips to the bottom extrusion of my 3 Pro. I was getting 10% and greater resends. Tried cables, ferrites etc, but not go. Then on your info I unclipped the ribbon and "let it free" and bingo, not a single resend.
Thanks for your info, I doubt I would have found that myself.
This is 100% the cause of my issues too, thank you for this. Is there a better way to shield the wire? Would still love to do some cable mgmt on that lcd wire, but directing clamping it down to the frame is no good.