Printer will not register on OctoPrint

What is the problem?

Can't get my printer to register in OctoPrint.
"Error: Failed to autodetect serial port, please set it manually."

The only option is auto.

What did you already try to solve it?

Have attempted to follow several other 'cant connect printer' conversations/topics, but I either don't know how to adjust the solutions to work for mine or get lost in the back and forth steps in the provided answers.

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

Printer: PowerSpec Ultra
Firmware: V2.4

RPi: Model 3B
32GB Micro SD
using on-board WIFI
5.25V power supply
Using a Play Station webcam (one of the youtube videos suggested this model and it was only $8 :))
OctoPrint v.0.15.1

Printer and webcam are connected to the RPi via USB and the Pi is plugged into the power supply. I have accessed OctoPrint through my desktop (Windows 10) via IP. If I go to "control", the webcam is on and functioning, but cannot get the printer to register.

serial.log:

2018-07-09 17:25:04,101 - Changing monitoring state from "Offline" to "Detecting serial port"
2018-07-09 17:25:04,163 - Serial port list: []
2018-07-09 17:25:04,163 - Changing monitoring state from "Detecting serial port" to "Error: Failed to autodetect serial port, please set it manually."
2018-07-09 17:25:04,166 - Failed to autodetect serial port, please set it manually.

octoprint.log:

2018-07-08 17:28:14,793 - octoprint.server - INFO - OctoPrint 1.3.8
2018-07-08 17:28:14,794 - octoprint.plugin.core - INFO - 10 plugin(s) registered with the system:
|  Announcement Plugin (bundled) = /home/pi/oprint/lib/python2.7/site-packages/octoprint/plugins/announcements
|  Core Wizard (bundled) = /home/pi/oprint/lib/python2.7/site-packages/octoprint/plugins/corewizard
|  CuraEngine (<= 15.04) (bundled) = /home/pi/oprint/lib/python2.7/site-packages/octoprint/plugins/cura
|  Discovery (bundled) = /home/pi/oprint/lib/python2.7/site-packages/octoprint/plugins/discovery
|  Logging (bundled) = /home/pi/oprint/lib/python2.7/site-packages/octoprint/plugins/logging
|  OctoPi Support Plugin (bundled) = /home/pi/oprint/lib/python2.7/site-packages/octoprint/plugins/octopi_support
|  Plugin Manager (bundled) = /home/pi/oprint/lib/python2.7/site-packages/octoprint/plugins/pluginmanager
|  Printer Safety Check (bundled) = /home/pi/oprint/lib/python2.7/site-packages/octoprint/plugins/printer_safety_check
|  Software Update (bundled) = /home/pi/oprint/lib/python2.7/site-packages/octoprint/plugins/softwareupdate
|  Virtual Printer (bundled) = /home/pi/oprint/lib/python2.7/site-packages/octoprint/plugins/virtual_printer
2018-07-08 17:28:14,808 - octoprint.environment - INFO - Detected environment is Python 2.7.13 under Linux (linux2). Details:
|  hardware:
|    cores: 4
|    freq: 1200.0
|    ram: 918192128
|  os:
|    id: linux
|    platform: linux2
|  plugins:
|    octopi_support:
|      model: 3B
|      revision: a22082
|      version: 0.15.1
|  python:
|    pip: 9.0.3
|    version: 2.7.13
|    virtualenv: /home/pi/oprint
2018-07-08 17:28:14,809 - octoprint.server - INFO - ------------------------------------------------------------------------------
2018-07-08 17:28:14,791 - octoprint.server.heartbeat - INFO - Server heartbeat <3
2018-07-08 17:43:14,809 - octoprint.server.heartbeat - INFO - Server heartbeat <3
2018-07-08 17:58:14,810 - octoprint.server.heartbeat - INFO - Server heartbeat <3
2018-07-08 18:13:14,812 - octoprint.server.heartbeat - INFO - Server heartbeat <3
2018-07-08 18:28:14,813 - octoprint.server.heartbeat - INFO - Server heartbeat <3
2018-07-08 18:43:14,814 - octoprint.server.heartbeat - INFO - Server heartbeat <3
2018-07-08 18:58:14,815 - octoprint.server.heartbeat - INFO - Server heartbeat <3
2018-07-08 19:13:14,816 - octoprint.server.heartbeat - INFO - Server heartbeat <3
2018-07-08 19:28:14,817 - octoprint.server.heartbeat - INFO - Server heartbeat <3
2018-07-08 19:43:14,818 - octoprint.server.heartbeat - INFO - Server heartbeat <3
2018-07-08 19:58:14,819 - octoprint.server.heartbeat - INFO - Server heartbeat <3
2018-07-08 20:13:14,820 - octoprint.server.heartbeat - INFO - Server heartbeat <3
2018-07-08 20:28:14,821 - octoprint.server.heartbeat - INFO - Server heartbeat <3
2018-07-08 20:43:14,822 - octoprint.server.heartbeat - INFO - Server heartbeat <3
2018-07-08 20:58:14,823 - octoprint.server.heartbeat - INFO - Server heartbeat <3
2018-07-08 21:13:14,824 - octoprint.server.heartbeat - INFO - Server heartbeat <3
2018-07-08 21:28:14,825 - octoprint.server.heartbeat - INFO - Server heartbeat <3
2018-07-08 21:43:14,826 - octoprint.server.heartbeat - INFO - Server heartbeat <3
2018-07-08 21:58:14,827 - octoprint.server.heartbeat - INFO - Server heartbeat <3
2018-07-08 22:13:14,828 - octoprint.server.heartbeat - INFO - Server heartbeat <3
2018-07-08 22:28:14,829 - octoprint.server.heartbeat - INFO - Server heartbeat <3
2018-07-08 22:43:14,831 - octoprint.server.heartbeat - INFO - Server heartbeat <3
2018-07-08 22:58:14,832 - octoprint.server.heartbeat - INFO - Server heartbeat <3
2018-07-08 23:13:14,833 - octoprint.server.heartbeat - INFO - Server heartbeat <3
2018-07-08 23:28:14,835 - octoprint.server.heartbeat - INFO - Server heartbeat <3
2018-07-08 23:43:14,836 - octoprint.server.heartbeat - INFO - Server heartbeat <3
2018-07-08 23:28:24,853 - octoprint.startup - INFO - ******************************************************************************
2018-07-08 23:28:24,855 - octoprint.startup - INFO - Starting OctoPrint 1.3.8
2018-07-08 23:28:24,856 - octoprint.startup - INFO - ******************************************************************************
2018-07-08 23:28:24,966 - octoprint.util.connectivity_checker - INFO - Connectivity changed from offline to online
2018-07-08 23:28:26,607 - octoprint.startup - INFO - Blacklist processing done
2018-07-08 23:28:26,746 - octoprint.plugin.core - INFO - Loading plugins from /home/pi/oprint/lib/python2.7/site-packages/octoprint/plugins, /home/pi/.octoprint/plugins and installed plugin packages...
2018-07-08 23:28:29,281 - octoprint.plugin.core - INFO - Found 10 plugin(s) providing 10 mixin implementations, 4 hook handlers
2018-07-08 23:28:29,416 - octoprint.server.heartbeat - INFO - Starting server heartbeat, 900.0s interval
2018-07-08 23:28:29,460 - octoprint.server - INFO - Intermediary server started
2018-07-08 23:28:29,461 - octoprint.plugin.core - INFO - Loading plugins from /home/pi/oprint/lib/python2.7/site-packages/octoprint/plugins, /home/pi/.octoprint/plugins and installed plugin packages...
2018-07-08 23:28:30,057 - octoprint.plugin.core - INFO - Found 10 plugin(s) providing 10 mixin implementations, 4 hook handlers
2018-07-08 23:28:30,134 - octoprint.filemanager.storage - INFO - Initializing the file metadata for /home/pi/.octoprint/uploads...
2018-07-08 23:28:30,816 - octoprint.filemanager.storage - INFO - ... file metadata for /home/pi/.octoprint/uploads initialized successfully.
2018-07-08 23:28:30,875 - octoprint.plugins.softwareupdate - INFO - Loaded version cache from disk
2018-07-08 23:28:33,305 - octoprint.util.pip - INFO - Using "/home/pi/oprint/bin/python2 -m pip" as command to invoke pip
2018-07-08 23:28:35,304 - octoprint.util.pip - INFO - Version of pip is 9.0.3
2018-07-08 23:28:35,305 - octoprint.util.pip - INFO - pip installs to /home/pi/oprint/lib/python2.7/site-packages (writable -> yes), --user flag needed -> no, virtual env -> yes
2018-07-08 23:28:35,320 - octoprint.util.pip - INFO - ==> pip ok -> yes
2018-07-08 23:28:35,323 - octoprint.plugin.core - INFO - Initialized 10 plugin implementation(s)
2018-07-08 23:28:35,330 - octoprint.plugin.core - INFO - 10 plugin(s) registered with the system:
|  Announcement Plugin (bundled) = /home/pi/oprint/lib/python2.7/site-packages/octoprint/plugins/announcements
|  Core Wizard (bundled) = /home/pi/oprint/lib/python2.7/site-packages/octoprint/plugins/corewizard
|  CuraEngine (<= 15.04) (bundled) = /home/pi/oprint/lib/python2.7/site-packages/octoprint/plugins/cura
|  Discovery (bundled) = /home/pi/oprint/lib/python2.7/site-packages/octoprint/plugins/discovery
|  Logging (bundled) = /home/pi/oprint/lib/python2.7/site-packages/octoprint/plugins/logging
|  OctoPi Support Plugin (bundled) = /home/pi/oprint/lib/python2.7/site-packages/octoprint/plugins/octopi_support
|  Plugin Manager (bundled) = /home/pi/oprint/lib/python2.7/site-packages/octoprint/plugins/pluginmanager
|  Printer Safety Check (bundled) = /home/pi/oprint/lib/python2.7/site-packages/octoprint/plugins/printer_safety_check
|  Software Update (bundled) = /home/pi/oprint/lib/python2.7/site-packages/octoprint/plugins/softwareupdate
|  Virtual Printer (bundled) = /home/pi/oprint/lib/python2.7/site-packages/octoprint/plugins/virtual_printer
2018-07-08 23:28:35,352 - octoprint.environment - INFO - Detected environment is Python 2.7.13 under Linux (linux2). Details:
|  hardware:
|    cores: 4
|    freq: 1200.0
|    ram: 918192128
|  os:
|    id: linux
|    platform: linux2
|  plugins:
|    octopi_support:
|      model: 3B
|      revision: a22082
|      version: 0.15.1
|  python:
|    pip: 9.0.3
|    version: 2.7.13
|    virtualenv: /home/pi/oprint
2018-07-08 23:28:35,362 - octoprint.server - INFO - Reset webasset folder /home/pi/.octoprint/generated/webassets...
2018-07-08 23:28:35,378 - octoprint.server - INFO - Reset webasset folder /home/pi/.octoprint/generated/.webassets-cache...
2018-07-08 23:28:35,692 - octoprint.server - INFO - Shutting down intermediary server...
2018-07-08 23:28:35,823 - octoprint.server - INFO - Intermediary server shut down
2018-07-08 23:28:35,825 - octoprint.events - INFO - Processing startup event, this is our first event
2018-07-08 23:28:35,826 - octoprint.events - INFO - Adding 1 events to queue that were held back before startup event
2018-07-08 23:28:35,827 - octoprint.filemanager - INFO - Adding backlog items from all storage types to analysis queue...
2018-07-08 23:28:35,946 - octoprint.filemanager - INFO - Added 0 items from storage type "local" to analysis queue
2018-07-08 23:28:35,979 - octoprint.plugins.discovery - INFO - Registered OctoPrint instance on octopi for _http._tcp
2018-07-08 23:28:35,991 - octoprint.plugins.discovery - INFO - Registered OctoPrint instance on octopi for _octoprint._tcp
2018-07-08 23:28:35,994 - octoprint.plugins.discovery - INFO - Registered OctoPrint instance on octopi for SSDP
2018-07-08 23:28:35,996 - octoprint.server - INFO - Listening on http://127.0.0.1:5000
2018-07-08 23:28:36,071 - octoprint.server.preemptive_cache - INFO - Preemptively caching / (ui _default) for {'query_string': 'l10n=en', 'path': '/', 'base_url': 'http://192.168.1.64/'}
2018-07-08 23:28:36,783 - octoprint.plugins.pluginmanager - INFO - Loaded plugin repository data from https://plugins.octoprint.org/plugins.json
2018-07-08 23:28:37,800 - octoprint.plugins.announcements - INFO - Loaded channel _important from https://octoprint.org/feeds/important.xml in 1.9s
2018-07-08 23:28:38,101 - octoprint.plugins.pluginmanager - INFO - Loaded plugin repository data from https://plugins.octoprint.org/plugins.json
2018-07-08 23:28:38,105 - octoprint.plugins.announcements - INFO - Loaded channel _important from https://octoprint.org/feeds/important.xml in 2.1s
2018-07-08 23:28:38,801 - octoprint.util.pip - INFO - Using "/home/pi/oprint/bin/python2 -m pip" as command to invoke pip
2018-07-08 23:28:38,878 - octoprint.plugins.pluginmanager - INFO - Loaded plugin notices data from https://plugins.octoprint.org/notices.json
2018-07-08 23:28:39,433 - octoprint.plugins.pluginmanager - INFO - Loaded notice data from disk, was still valid
2018-07-08 23:28:40,117 - octoprint.plugins.announcements - INFO - Loaded channel _releases from https://octoprint.org/feeds/releases.xml in 1.6s
2018-07-08 23:28:41,522 - octoprint.plugins.announcements - INFO - Loaded channel _releases from https://octoprint.org/feeds/releases.xml in 2.7s
2018-07-08 23:28:42,179 - octoprint.plugins.announcements - INFO - Loaded channel _blog from https://octoprint.org/feeds/octoblog.xml in 1.9s
2018-07-08 23:28:42,718 - octoprint.plugins.announcements - INFO - Loaded channel _blog from https://octoprint.org/feeds/octoblog.xml in 0.84s
2018-07-09 17:22:15,196 - octoprint.server.heartbeat - INFO - Server heartbeat <3
2018-07-09 17:22:15,438 - octoprint.plugins.announcements - INFO - Loaded channel _plugins from https://plugins.octoprint.org/feed.xml in 6.4e+04s
2018-07-09 17:22:15,667 - octoprint.plugins.announcements - INFO - Loaded channel _plugins from https://plugins.octoprint.org/feed.xml in 6.4e+04s
2018-07-09 17:22:16,458 - octoprint.util.pip - INFO - pip installs to /home/pi/oprint/lib/python2.7/site-packages/ (writable -> yes), --user flag needed -> no, virtual env -> yes
2018-07-09 17:22:16,471 - octoprint.util.pip - INFO - ==> pip ok -> yes
2018-07-09 17:22:17,166 - octoprint.plugins.softwareupdate - INFO - Saved version cache to disk
2018-07-09 17:22:17,437 - octoprint.plugins.announcements - INFO - Loaded channel _octopi from https://octoprint.org/feeds/octopi.xml in 1.4s
2018-07-09 17:22:17,713 - octoprint.plugins.announcements - INFO - Loaded channel _octopi from https://octoprint.org/feeds/octopi.xml in 2.0s
2018-07-09 17:22:35,260 - octoprint.server.preemptive_cache - INFO - ... done in 64439.19s
2018-07-09 17:22:35,268 - octoprint.server.preemptive_cache - INFO - Preemptively caching / (ui _default) for {'query_string': 'l10n=en', 'path': '/', 'base_url': 'http://octopi.local/'}
2018-07-09 17:22:39,210 - octoprint.server.util.sockjs - INFO - New connection from client: ::ffff:192.168.1.73
2018-07-09 17:22:41,211 - octoprint.server.preemptive_cache - INFO - ... done in 5.94s
2018-07-09 17:23:20,255 - octoprint.plugins.announcements - INFO - Loaded channel _important from https://octoprint.org/feeds/important.xml in 1.7s
2018-07-09 17:23:21,387 - octoprint.plugins.announcements - INFO - Loaded channel _releases from https://octoprint.org/feeds/releases.xml in 0.78s
2018-07-09 17:23:23,281 - octoprint.plugins.announcements - INFO - Loaded channel _blog from https://octoprint.org/feeds/octoblog.xml in 1.8s
2018-07-09 17:23:26,757 - octoprint.server.util.sockjs - INFO - Client connection closed: ::ffff:192.168.1.73
2018-07-09 17:23:27,118 - octoprint.server.util.sockjs - INFO - New connection from client: ::ffff:192.168.1.73
2018-07-09 17:23:33,094 - octoprint.util.comm - INFO - Changing monitoring state from "Offline" to "Detecting serial port"
2018-07-09 17:23:33,105 - octoprint.util.comm - INFO - Changing monitoring state from "Detecting serial port" to "Error: Failed to autodetect serial port, please set it manually."
2018-07-09 17:23:58,379 - octoprint.util.comm - INFO - Changing monitoring state from "Offline" to "Detecting serial port"
2018-07-09 17:23:58,399 - octoprint.util.comm - INFO - Changing monitoring state from "Detecting serial port" to "Error: Failed to autodetect serial port, please set it manually."
2018-07-09 17:24:09,998 - octoprint.util.comm - INFO - Changing monitoring state from "Offline" to "Detecting serial port"
2018-07-09 17:24:10,068 - octoprint.util.comm - INFO - Changing monitoring state from "Detecting serial port" to "Error: Failed to autodetect serial port, please set it manually."
2018-07-09 17:24:21,934 - octoprint.util.comm - INFO - Changing monitoring state from "Offline" to "Detecting serial port"
2018-07-09 17:24:21,945 - octoprint.util.comm - INFO - Changing monitoring state from "Detecting serial port" to "Error: Failed to autodetect serial port, please set it manually."
2018-07-09 17:24:58,671 - octoprint.util.comm - INFO - Changing monitoring state from "Offline" to "Detecting serial port"
2018-07-09 17:24:58,693 - octoprint.util.comm - INFO - Changing monitoring state from "Detecting serial port" to "Error: Failed to autodetect serial port, please set it manually."
2018-07-09 17:24:59,254 - octoprint.util.comm - INFO - Changing monitoring state from "Offline" to "Detecting serial port"
2018-07-09 17:24:59,264 - octoprint.util.comm - INFO - Changing monitoring state from "Detecting serial port" to "Error: Failed to autodetect serial port, please set it manually."
2018-07-09 17:25:00,765 - octoprint.util.comm - INFO - Changing monitoring state from "Offline" to "Detecting serial port"
2018-07-09 17:25:00,774 - octoprint.util.comm - INFO - Changing monitoring state from "Detecting serial port" to "Error: Failed to autodetect serial port, please set it manually."
2018-07-09 17:25:04,124 - octoprint.util.comm - INFO - Changing monitoring state from "Offline" to "Detecting serial port"
2018-07-09 17:25:04,164 - octoprint.util.comm - INFO - Changing monitoring state from "Detecting serial port" to "Error: Failed to autodetect serial port, please set it manually."

Have attempted to add additional ports (from a different forum) and have rebooted OctoPrint several times. However, I still cant seem to get the printer to connect. I would put the additional port 'like it tells me in the Terminal tab", but this is where my ignorance shines through and I do not know how to obtain this information - I assume this will be in the serial.log??

If there is any additional information needed, feel free to request and I will do my best to provide it.

The place to setup things manually is OctoPrint -> Settings -> Serial Connection -> Serial Port

You could randomly try ports like /dev/ttyACM0 (that's a zero at the end). Try 115200 as the baud rate to begin.

While you're trying to connect, make sure that the Terminal tab is displayed since it will show you what's going on.

Thanks for the quick reply.

Help me understand how the ports and baud rate work so I can do some of the easier troubleshooting with this potential solutions. Like I said in the original post, I tried a couple of the 'random' ports, but received the same message. What am I trying to accomplish by setting up the additional ports? If my printer is connected via USB, it would make sense to use the 'USB' ports, correct? I apologize for my ignorance, but want to be able to apply the good ole process of elimination while I am trying various different additional ports.

Thanks in advance.

1 Like

OctoPrint by default looks for these port patterns: /dev/ttyUSB*, /dev/ttyACM*, /dev/tty.usb*, /dev/cu.*, /dev/cuaU* and /dev/rfcomm* (note that these already include /dev/ttyACM* and hence adding /dev/ttyACM0 manually is doing nothing). Any port that the operating system beneath OctoPrint detects that matches any of those patterns will show up in the Port drop down list. If none shows up, the OS didn't detect one. Anything that you add to "additional ports" will add to the patterns OctoPrint looks for on the OS, it will not make ports magically show up in your system.

So next step is to figure out if your OS even sees the printer as a known device at all or if it is completely clueless what to do with it:

  1. Log into your OctoPi instance via SSH
  2. Unplug your printer
  3. Run dmesg, pay close attention to how the last lines look.
  4. Plug in your printer, make sure it's also powered on
  5. Run dmesg again. There should now be some more lines following the ones you saw earlier. Copy-paste them here.

To be honest I do not even know how to run this command. Additionally, do i log into OctoPrint through my IP address?

I have limited knowledge with this stuff.

Here's a tutorial/troubleshooting guide with information about how to remote into the Raspberry Pi, for example.

[ 509.841282] usb 1-1.2: new full-speed USB device number 5 using dwc_otg
[ 509.987844] usb 1-1.2: New USB device found, idVendor=2b71, idProduct=00ff
[ 509.987853] usb 1-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 509.987857] usb 1-1.2: Product: Powerspec Ultra 3D Printer
[ 509.987862] usb 1-1.2: Manufacturer: Microcenter
[ 509.987866] usb 1-1.2: SerialNumber: 00000000050C

Try a lsusb -v please.

Doesn't look like your printer is detected as a serial device at all. Maybe there's a driver out there that can change that, but right now it certainly looks like it isn't compatible to OctoPrint as it doesn't even expose a serial interface.

Try the suggestion from @OutsourcedGuru though, it might help shed some more light on things.

Bus 001 Device 005: ID 1415:2000 Nam Tai E&E Products Ltd. or OmniVision Technologies, Inc. Sony Playstation Eye
Couldn't open device, some information will be missing
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
idVendor 0x1415 Nam Tai E&E Products Ltd. or OmniVision Technologies, Inc.
idProduct 0x2000 Sony Playstation Eye
bcdDevice 2.00
iManufacturer 1
iProduct 2
iSerial 0
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 142
bNumInterfaces 3
bConfigurationValue 1
iConfiguration 0
bmAttributes 0x80
(Bus Powered)
MaxPower 500mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 3
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 0
bInterfaceProtocol 0
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x02 EP 2 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x83 EP 3 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0040 1x 64 bytes
bInterval 10
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 0
bNumEndpoints 0
bInterfaceClass 1 Audio
bInterfaceSubClass 1 Control Device
bInterfaceProtocol 0
iInterface 0
AudioControl Interface Descriptor:
bLength 9
bDescriptorType 36
bDescriptorSubtype 1 (HEADER)
bcdADC 1.00
wTotalLength 42
bInCollection 1
baInterfaceNr( 0) 2
AudioControl Interface Descriptor:
bLength 12
bDescriptorType 36
bDescriptorSubtype 2 (INPUT_TERMINAL)
bTerminalID 1
wTerminalType 0x0201 Microphone
bAssocTerminal 2
bNrChannels 4
wChannelConfig 0x0000
iChannelNames 0
iTerminal 0
AudioControl Interface Descriptor:
bLength 9
bDescriptorType 36
bDescriptorSubtype 3 (OUTPUT_TERMINAL)
bTerminalID 2
wTerminalType 0x0101 USB Streaming
bAssocTerminal 1
bSourceID 3
iTerminal 0
AudioControl Interface Descriptor:
bLength 12
bDescriptorType 36
bDescriptorSubtype 6 (FEATURE_UNIT)
bUnitID 3
bSourceID 1
bControlSize 1
bmaControls( 0) 0x00
bmaControls( 1) 0x02
Volume Control
bmaControls( 2) 0x02
Volume Control
bmaControls( 3) 0x02
Volume Control
bmaControls( 4) 0x02
Volume Control
iFeature 0
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 2
bAlternateSetting 0
bNumEndpoints 0
bInterfaceClass 1 Audio
bInterfaceSubClass 2 Streaming
bInterfaceProtocol 0
iInterface 0
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 2
bAlternateSetting 1
bNumEndpoints 1
bInterfaceClass 1 Audio
bInterfaceSubClass 2 Streaming
bInterfaceProtocol 0
iInterface 0
AudioStreaming Interface Descriptor:
bLength 7
bDescriptorType 36
bDescriptorSubtype 1 (AS_GENERAL)
bTerminalLink 2
bDelay 1 frames
wFormatTag 1 PCM
AudioStreaming Interface Descriptor:
bLength 11
bDescriptorType 36
bDescriptorSubtype 2 (FORMAT_TYPE)
bFormatType 1 (FORMAT_TYPE_I)
bNrChannels 4
bSubframeSize 2
bBitResolution 16
bSamFreqType 1 Discrete
tSamFreq[ 0] 16000
Endpoint Descriptor:
bLength 9
bDescriptorType 5
bEndpointAddress 0x84 EP 4 IN
bmAttributes 5
Transfer Type Isochronous
Synch Type Asynchronous
Usage Type Data
wMaxPacketSize 0x0300 1x 768 bytes
bInterval 4
bRefresh 0
bSynchAddress 0
AudioControl Endpoint Descriptor:
bLength 7
bDescriptorType 37
bDescriptorSubtype 1 (EP_GENERAL)
bmAttributes 0x01
Sampling Frequency
bLockDelayUnits 0 Undefined
wLockDelay 0 Undefined

Bus 001 Device 004: ID 2b71:00ff
Couldn't open device, some information will be missing
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
idVendor 0x2b71
idProduct 0x00ff
bcdDevice 2.00
iManufacturer 1
iProduct 2
iSerial 3
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 46
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0
bmAttributes 0xc0
Self Powered
MaxPower 100mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 4
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 255 Vendor Specific Subclass
bInterfaceProtocol 255 Vendor Specific Protocol
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x01 EP 1 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0040 1x 64 bytes
bInterval 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0040 1x 64 bytes
bInterval 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x83 EP 3 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0040 1x 64 bytes
bInterval 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x03 EP 3 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0040 1x 64 bytes
bInterval 0

Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp. SMSC9512/9514 Fast Ethernet Adapter
Couldn't open device, some information will be missing
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 255 Vendor Specific Class
bDeviceSubClass 0
bDeviceProtocol 1
bMaxPacketSize0 64
idVendor 0x0424 Standard Microsystems Corp.
idProduct 0xec00 SMSC9512/9514 Fast Ethernet Adapter
bcdDevice 2.00
iManufacturer 0
iProduct 0
iSerial 0
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 39
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0
bmAttributes 0xe0
Self Powered
Remote Wakeup
MaxPower 2mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 3
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 0
bInterfaceProtocol 255
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x02 EP 2 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x83 EP 3 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0010 1x 16 bytes
bInterval 4

Bus 001 Device 002: ID 0424:9514 Standard Microsystems Corp. SMC9514 Hub
Couldn't open device, some information will be missing
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 9 Hub
bDeviceSubClass 0 Unused
bDeviceProtocol 2 TT per port
bMaxPacketSize0 64
idVendor 0x0424 Standard Microsystems Corp.
idProduct 0x9514 SMC9514 Hub
bcdDevice 2.00
iManufacturer 0
iProduct 0
iSerial 0
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 41
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0
bmAttributes 0xe0
Self Powered
Remote Wakeup
MaxPower 2mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 9 Hub
bInterfaceSubClass 0 Unused
bInterfaceProtocol 1 Single TT
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
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 1
bNumEndpoints 1
bInterfaceClass 9 Hub
bInterfaceSubClass 0 Unused
bInterfaceProtocol 2 TT per port
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 Unused
bDeviceProtocol 1 Single TT
bMaxPacketSize0 64
idVendor 0x1d6b Linux Foundation
idProduct 0x0002 2.0 root hub
bcdDevice 4.14
iManufacturer 3
iProduct 2
iSerial 1
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 25
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 Unused
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

A little background about the printer prior to attempting to get OctoPrint up and running... my PC sees the printer when I plug direct but gives a device error symbol. When I troubleshoot the error, the message states that it needs a driver. However, I have discussed with MicroCenter and searched the web for this printer-specific driver with no results.

I have downloaded the software that came with the printer onto a different computer and it will print. Not sure if this information will be helpful, but thought I would share.

Just read online that this is apparently a Flashforge Dreamer clone. That means it has a proprietary firmware that so far no one has managed to write a plug-in for and which hence won't work with OctoPrint.

See also

and

I was afraid this would be the case. With this printer not being a popular printer, chances are I wont see it (soon at least).

Thanks for helping me get to the bottom of this, maybe I will just get a new printer. Any suggestions?

For anyone who wants to read along, you can take the output of the dmesg command, find the vendor/product IDs and then use this with the output of lsusb -v to find the specifications for a particular device plugged into the USB bus. Here, we search for that idVendor as seen earlier:

Bus 001 Device 004: ID 2b71:00ff
Couldn't open device, some information will be missing
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
idVendor 0x2b71
idProduct 0x00ff
bcdDevice 2.00
iManufacturer 1
iProduct 2
iSerial 3
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 46
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0
bmAttributes 0xc0
Self Powered
MaxPower 100mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 4
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 255 Vendor Specific Subclass
bInterfaceProtocol 255 Vendor Specific Protocol
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x01 EP 1 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0040 1x 64 bytes
bInterval 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0040 1x 64 bytes
bInterval 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x83 EP 3 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0040 1x 64 bytes
bInterval 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x03 EP 3 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0040 1x 64 bytes
bInterval 0

Google: usb idVendor +0x2b71

Unfortunately, there are literally zero pages out there in the search result on Google for that vendor ID. If someone had written some sort of driver for it (say, in the Windows space) then it would likely show up using that identifier. That's how an HID driver will self-identify and it's part of the "Plug-and-Play" specification for USB: you plug the device in, the workstation asks the device to identify itself and then the workstation looks that up in a central database.

For what it's worth, the idProduct of 0x00ff means that this is the Ultra firmware; a 0x0001 is the Dreamer.

There's a FlashForge Creator Pro at work and I have to slice with FlashPrint to an SD card and then walk that over to the printer. I'm beginning to think that it's the same basic printer.

On this printer, there is a Type B serial connection on the back and I'm sure that I used a different software earlier to directly talk to the printer. :booting up my other laptop: It's called ReplicatorG. I had to actually set the device in that software. Bringing it up now, it knows that the printer isn't connected.

I'm seeing the error message as: "Connection error: The serial port named /dev/tty.usbmodem411 could not be found." (Noting that I'm on OSX.) Under the Machine -> Connection (Serial Port) menu item are choices to select a Bluetooth-related device found and "Rescan serial ports".

Long story short: ReplicatorG can talk to this proprietary printer and can scan a device as seen in OSX. If their code is open source (which it is) then we should have some driver code and here is the serial driver, not that I know Java.

1 Like

The Creator is still one of the MakerBot Replicator clones I think, run some form of Sailfish and can run with the GPX plug-in via a regular ftdi based serial interface. The newer Flashforge printers are proprietary with another firmware though and native USB interface.

I apologize this isn't in a language I fully understand. However, it seems that you are suggesting there is a way around this printer not being seen. Is that accurate? If so, how do I even begin to get this to work?

Apparently so, it appears in the dependency stack for ReplicatorG for what it's worth.

As a software instructor there are times like on Friday evenings where there are so few students that I can effectively goof off. I'll bring in a Raspberry Pi with OctoPi on it, cable it to the aforementioned FlashForge Creator Pro and see if I can get it to connect. It probably won't work without a plugin of some kind though, from what foosel's suggested. I'll try the GPX plugin perhaps as a starting point.

Actually, this looks like someone has done it by using the GPX plugin.

1 Like

A little difficult to follow (for me at least) and is about a year old. Will all of the versions and settings discussed still be relevant or is that what you plan to test on Friday? Additionally, will the FF Creator Pro have the same settings as what I would need for the PS Ultra (FF Dreamer)?

The Dreamer or any clone of it will not work with ReplicatorG nor the GPX plug-in. @OutsourcedGuru didn't know that.

The Dreamer has a completely different firmware and controller and is simply incompatible at the moment. Someone would need to reverse engineer it first and write a plug-in to maybe be able to get it to work, but so far no one has done that.

So, no, your Dreamer clone won't work with OctoPrint, and no configuration will be able to change that.

1 Like