Save your log files
If you have updated the firmware or performed a factory reset while troubleshooting, first reproduce the error. In case of a feeder issue, this can be done by starting a print job with the flow sensors enabled. Reboot your printer. Now go to the Maintenance menu, then Diagnostics to save the logs to USB. Ensure a USB is inserted in the front of the printer.
Tip: Clear previously saved log files from the USB drive before saving new ones. This makes it clearer which files will need to be analyzed.
Open the files on a computer. The ones with the relevant information are the 'boot' log files. There could be multiple. Unzip the files and open them, starting with 'boot0.log'. You do not need special software, any standard text editor program will do.
Locate the error
To find the motion controller error, simply use Ctrl/Cmd+F and search for 'motion controller'. The log lines preceding the error can give a good indication of the cause:
INFO printJobStateProperty New print job state: pre_print -> printing
WARNING transportLayer Got error line 1 from printer: Error:A1335_FLOW_SENSOR_ERROR: timeout on reading flow angle, sensor=223
ERROR controller Halting ALL procedures
ERROR applicationLayer Marlin error: SYSTEM HALT!
INFO marvinService Reporting fault to Sentry...
ERROR marvinService Added Fault: <Fault: level=3 code=13 message='Error:A1335_FLOW_SENSOR_ERROR: timeout on reading flow angle, sensor=223' data='dbus.Dictionary({}, signature=dbus.Signature('sv'))'>
INFO Okuda.DBus.PrinterServiceProxy Processing PrinterError(level: 3, code: 13, msg: 'Error:A1335_FLOW_SENSOR_ERROR: timeout on reading flow angle, sensor=223')
" 714.168 qml [bootup] ErrorDialog overlay: Code,Level,text= 13 3 An unspecified error has occurred in the motion controller. Restore to default settings."
INFO Okuda.Components.screen_saver modeChanged: Mode.Printing --> Mode.AttentionRequired
ERROR controller Halting ALL procedures
As you see in the code block above, before the motion controller error line, we see a flow sensor timeout. This indicates that the problem is indeed related to the feeders.
Check the flow sensors
Next, we inspect the initialization of the two flow sensors. In the logs, you can search for 'FILAMENT_FLOW_SENSOR' or 'A1335'. This will show the initialization process.
INFO transportLayer FILAMENT_FLOW_SENSOR_INIT:0 initializing...
INFO transportLayer Discovering flow sensor A1335 #0
INFO transportLayer flowA1335Init: sensor #0 sensor_address=0xC
INFO transportLayer A1335 FIELD=635
INFO transportLayer A1335 Temperature=22.98
INFO transportLayer FILAMENT_FLOW_SENSOR_INIT:1 initializing...
INFO transportLayer A1335 init failed for sensor #1
INFO transportLayer A1335 init failed for sensor #3
WARNING transportLayer Got warning line 1 from printer: WARNING:FILAMENT_FLOW_SENSOR_INIT:1:Unable to initialize sensor
INFO transportLayer Detected invalid feeder sensor configuration
INFO marvinService Reporting fault to Sentry...
WARNING marvinService Added Fault: <Fault: level=4 code=46 message='WARNING:FILAMENT_FLOW_SENSOR_INIT:1:Unable to initialize sensor' data='dbus.Dictionary({dbus.String('hotend_nr'): dbus.Int32(1, variant_level=1), dbus.String('display_hotend_nr'): dbus.Int32(2, variant_level=1)}, signature=dbus.Signature('sv'))'>
WARNING heatableHotend Flow sensor 1 error raised
In the example above, the highlighted 'warning' lines clearly show the issue: one of the flow sensors cannot initialize. It may not be connected properly. If reconnecting it does not help, the flow sensor, cable, or feeder should be replaced.
Tip: It is important to note that in the logs counting starts at 0, so flow sensor 0 is 1 (left feeder), and flow sensor 1 is 2 (right feeder). In the example, the flow sensor in feeder 2 was not connected properly.
To fully understand the logs, we need more information about the initialization process. As mentioned before, there are two different feeder types. These are identified by their flow sensors:
| Log number | Feeder type | Feeder side | Feeder number | Address |
|---|
| #0 | Old / coarse | Left | 1 | 0xC |
| #1 | Old / coarse | Right | 2 | 0xD |
| #2 | New / fine | Left | 1 | 0xE |
| #3 | New / fine | Right | 2 | 0xF |
The firmware will attempt to initialize them one by one. If #0 fails, it will move on to #1, but if #0 initializes, it will move on to the other feeder and try #2.
Only one type of feeder is allowed on the printer. Accepted combinations are:
- #0 0xC and #1 0xD
- #2 0xE and #3 0xF
If both flow sensors initialize, but a mismatch is detected, this will also show in the logs as Detected invalid feeder sensor configuration. Look at the example below:
INFO transportLayer FILAMENT_FLOW_SENSOR_INIT:0 initializing...
INFO transportLayer A1335 init failed for sensor #0
INFO transportLayer Discovering flow sensor A1335 #2
INFO transportLayer flowA1335Init: sensor #2 sensor_address=0xE
INFO transportLayer A1335 FIELD=697
INFO transportLayer A1335 Temperature=22.98
INFO transportLayer FILAMENT_FLOW_SENSOR_INIT:1 initializing...
INFO transportLayer flowA1335Init: sensor #1 sensor_address=0xD
INFO transportLayer A1335 FIELD=600
INFO transportLayer A1335 Temperature=22.67
INFO transportLayer Detected invalid feeder sensor configuration
In this case, log numbers #2 and #1 are discovered. This means that the right feeder (1) is an old feeder type with the coarse knurl pattern and the left feeder (2) is the new feeder type with the fine knurl pattern. Here, it would be recommended to replace feeder 1 with a new type feeder.
Need further support?
If you still have questions after reading this article, or you are unable to resolve the error message, please contact our support team. Make sure to include all relevant information you found from the logs for faster and more efficient assistance.