Failed to auto detect serial port (Qidi X-pro)

Have you had any success on this.

Hi Guys,
Sorry to be a pain in asking all these questions, I'm new to all of this and need lots of help.
From the picture provided by Stonebaker (Thankyou) I think I know what I need to do.
Do I need to do anything else to get octoprint and Rapberry pi 3+ working.
I've purchased the following :-

  1. Raspberry pie 3+
  2. Pie Camera with170 degrees viewing angle
  3. Flat ribbon cable 100cm for pi to camera
  4. USB to TLL CP2102 UART Module.
  5. Power supply ?????????

Can I take the power supply for the pi off the printer board itself (Camera + and -) terminals or
do I need a converter from the 24v main power supply to 5V. I don't want to blow the pi up.
Thanks for all of your help in advance.

P.s. For me all I want to do is be able to keep an eye on my builds with a camera and be able to stop the print if its all going wrong. I currently use the Qidi print 5.1 and it works fine for me, but should I continue with this for use the software on Octo print.

I would use something like this

Thanks for your help, I've ordered one.

Hi All: Sorry to resurrect a thread, but I have a question: I have everything setup as discussed above and connected to my X-Pro main board. In particular, I have the UART to USB bridge in place and plugged into the Pi. However, when I go to connect to USB0 in the Octopi interface, the serial connection is recognized and "connected," but I get a failure to detect baud rate error after the terminal cycles through all available rates. Is there a setting in Octopi or a plugin I'm missing? Thanks!

So... set it manually...?

1 Like

Tried setting several different manual rates, no such luck. E.g., from the terminal:

Connected to: Serial<id=0x6a55f550, open=True>(port='/dev/ttyUSB0', baudrate=19200, bytesize=8, parity='N', stopbits=1, timeout=10.0, xonxoff=False, rtscts=False, dsrdtr=False), starting monitor
Changing monitoring state from "Opening serial port" to "Connecting"
Send: N0 M110 N0*125
There was a timeout while trying to connect to the printer
Changing monitoring state from "Connecting" to "Offline"
Connection closed, closing down monitor

The only two baudrates that I've seen lately in the 3D printer space are...

  • 115200
  • 250000

Anything else and you're probably wasting your time.

Try to run dmesg on the Pi after plugging in the serial cable to see the device name; maybe it's not /dev/tty/USB0, for instance.

Thanks for the information. I confirmed via dmesg that it is USB0 and I tried both baud rates with no success. In troubleshooting, I looked up the specs on my USB to UART bridge and it says it only supports TTL at 3.3v. I was using the 5V header on the bridge from the USB_VCC pin on the motherboard. I switched to 3.3v hoping that would solve the problem, but no luck. I looked closely at Stonebaker's photo, and it looks like he is using the 3.3v pin on his bridge. Hmmmm. I will order another bridge with a 3.3v to 5v switch and see what I get. So, close, but yet so...

I guess it's good to follow the advice/documentation on the site where somebody has actually done this before. The 3.3-versus-5 logic level could be a reason, definitely. It's doubtful that pushing 5V into a chip that expects 3.3V would fry it but there's a small possibility of that.

Well, new UART bridge, same result. I'm starting to think it may be an issue with the X-Pro main board. Although the title of this thread is "X-Pro," I just noticed that Stonebaker's post mentions the "X-Plus" and while his motherboard is similar to mine with the same UART header in the same place, there are some differences. The X-Pro bios/firmware may be different and not allow a serial handshake. Can anyone confirm they have successfully connected via USB to UART on an Qidi X-Pro?

Meanwhile, I've emailed Qidi and they are pretty good at getting back...

I’m replying to my own post because I’m a moron. I did not have the rx and tx crossed over. As soon as I wired it properly, Octoprint found my printer. Yay!

4 Likes

@jameyj can I bother you for a little more detail in how you got this working? I have ordered my Qidi and I will be here Friday, but I would love to get octoprint working on it from the start!

Hi Slyder: Essentially, I used the exact same setup that Stonebaker depicts in his photo, above.

The only way for the Pi to talk to the X-Pro is via the UART header on the X-Pro mainboard (see photos above) to a USB port in the Pi, via a serial to USB adapter. The USB port on the side of the X-Pro is just for thumbdrives.

Pick up a cheap adapter on Amazon; most come with the UART cable. Just be sure to hook up the RX and TX properly and you won't have my problem. :upside_down_face: Also, you can power your Pi directly off the X-Pro's power supply as there is one terminal available. You will need to use a voltage step down adapter to USB - 18V to 5V and then a USB to micro-usb cable to go from the step down converter to the micro-usb port on the PI (or the USB-C port if you are using a Pi 4). Here are links to the parts I used:

Serial to USB Converter for UART to Pi -- https://www.amazon.com/gp/product/B07D6LLX19/ref=ppx_yo_dt_b_search_asin_title?ie=UTF8&psc=1

USB Voltage Step Down Converter -- https://www.amazon.com/gp/product/B07PT7M91L/ref=ppx_yo_dt_b_search_asin_title?ie=UTF8&psc=1

Wire To Run from X-Pro Power Supply to USB voltage Converter -- https://www.amazon.com/gp/product/B07D74RGVM/ref=ppx_yo_dt_b_search_asin_title?ie=UTF8&psc=1

USB to Micro-USB Cable -- https://www.amazon.com/gp/product/B0711PVX6Z/ref=ppx_yo_dt_b_search_asin_title?ie=UTF8&psc=1

Hope this helps!

2 Likes

Could you do this with only the Serial to USB converter and a USB-C power supply (https://www.adafruit.com/product/4298?gclid=EAIaIQobChMIwJntyuSO6AIVjYzICh0j_wCGEAQYAiABEgJwbPD_BwE) for the Pi?

Sure, just wire up the Serial to USB adapter to the mobo UART hearder and plug the power supply into a standard outlet.

Can you tell me if I marked the correct place on the motherboard?

Before you start disassembling your printers, maybe try a software approach. You can actually send the G-code commands to the printer through the ethernet-port(/wifi). It works well for my qidi X-max printer.
You could either code the serial to udp conveter or use socat (easy).

  1. Install socat: in terminal 'sudo apt-get install socat'
  2. Create virtual serial ports: in terminal 'socat -d -d pty,raw,echo=0 pty,raw,echo=0'
    (note: you will get two serial communication ports under '/dev/pts/', )
  3. Attach the one communication port to your printer: in terminal 'socat -v udp4-datagram:your.printer.ip.address:3000 open:/dev/pts/x,raw,nonblock,waitlock=/tmp/s0.locak,echo=0,b115200,crnl'
    (note: replace your.printer.ip.address your printer ip-address and replace /dev/pts/x with one of your virtual com ports. The baudrate can be changed here but is set to 115200)
  4. Attach octoprint to the other com port. settings->serial connection ->general->additional serialports enter: '/dev/pts/*'. Then connect to /dev/pts/y

It is possible to automate this and send command 2 and 3 at startup.

2 Likes

Thanks lulukul! This works perfectly on my Qidi X-plus.

2 Likes

So I have tried 2 different serial to usb, I've tried direct to the pi 4 serial rx and tx inputs, and I've now tried doing the virtual port that lulukul recommended all with the same problem getting the error "error: no more baudrates to test, and no suitable baudrate found" new to octoprint world and relatively new to the raspberry world so would love any wisdom from anyone that has gotten the usb or the virtual ports to work its seeing both the virtual port and the usb port but won't find the baudrate. I'm using a raspberry pi4 and a qidi tech X-Max also did you have to make any adjustments to the xmax firmware to make it work?