Oh I see, I used looxonline INSANSE RES for BIQU B1 firmware, and made some minor changes in visual studio, then compiled it my self. Looking at the config files, HOST_ACTION_COMMANDS and HOST_PROMPT_SUPPORT are uncommented.
octoprint-systeminfo-20210803184316.zip (71.1 KB)
Here you go.
When removing the filament, there was no effect on the printer, it continues to print.
The LED on the filament sensor it working correctly.
FYI, I accidently left octolapse running on this print.
Obviously the runout sensor is not activated in the firmware.
But op states "Factory fitted filament sensor doesn't work with octoprint, but works ok when printing from SD card."
Interesting that notes for M412 are
" Requires FILAMENT_RUNOUT_SENSOR
.
Parameter D
requires FILAMENT_RUNOUT_DISTANCE_MM
.
Parameter H
requires HOST_ACTION_COMMANDS
."
Who knows what wired stuff happens in the firmware...
Maybe there is a different runout routine
I have now enabled #define FILAMENT_RUNOUT_SENSOR in the firmware, and now octoprint comes up with a pop up saying: message from printer, no filament. (Even though there is). Triggering the switch doesn't have any effect at this point.
Ok, I think I know what the problem is. My filament sensor is plugged into my TFT screen on the printer, not the SKR 1.4 board.
I read this website: Adding filament sensor in SKR electronics (MINI E3, v1.3, v1.4 and v1.4 Turbo) - 3DWork
I unplugged the filament sensor from the TFT screen and plugged it into the E0DET port thinking this would fix it, but still no luck.
Now I think I either have it plugged into the wrong port on the SKR V1.4, or the pin configuration is not correct. This is all new to me and I am completely and utterly out of my depth! Please can someone suggest what to try next?
Seems like you are getting somewhere, but it is also interesting how the runout sensor was setup on the screen. I've not seen it like that before, but I guess the screen was just telling the printer to pause, but of course it was telling the wrong person since OctoPrint was in control.
That looks like the right pin (can see it in the Marlin source code), it's labelled right and it looks like they are both using the GND pin.
Are you able to test with M119 to see if maybe it is inverted? Take the filament in & out and test it to see if there's any change?
Have you got FIL_RUNOUT_PULLUP, FIL_RUNOUT_STATE and NUM_RUNOUT_SENSORS set correctly?
FWIW the only filament runout detects I've seen are 3 wire, 5v, Gnd, Signal.
Still very confused how runout worked for SD!
My theory is that it would have worked the same way if you connected it to OctoPrint. The LCD has its own firmware kind of thing, so it is in control of the print. When the filament runs out, the main control board doesn't know, but the screen can just send 'pause'. Things are getting more complex than the usual character LCD setup now...
Haven't tried this, how do I know what to set it to?
The filament detector does have 3x wires coming out, those 3 cables join up to a loom of cables, then this one big cable plugs into the back panel on the printer. The thing it plugs into is a small circuit board with loads of cables plugged into it, I guess to distribute everything to the right place on the main board. One of the plugs coming out of that is labelled FLD, but it only has 2x cables, not 3x. I am guessing because the small circuit board on the back of the printer uses one gnd for all the cables? Not sure.
Hi charlie,
testing with M119 shows the filament sensor as open. There is no effect whether the filament is present or not.
I have checked the pins_BTT_SKR_V1_4.h file, and I have the sensor plugged into the correct E0DET port for sure.
I have tried changing RUNOUT_STATE from LOW to HIGH, this made it read triggered at all times.
I have tried FIL_RUNOUT_PULLUP to PULLDOWN and this has no effect.
I think it must be something to do with the wiring. Can someone confirm that the red and the green cables are located on the right pins on the plug?
I have just noticed that the LED on the filament sensor is always on regardless of its position (now its plugged into the main board), does this mean it is wired incorrectly?
From your pictures, it looks like you've been plugging the 2 wire 'FLD' cable directly into the board.
Have you tried plugging the sensor in directly to the board? This would make more sense, I think. And, it's going to be difficult to verify what pins are what if there's something going on between that connector and the sensor.
No I haven't tried this but it sounds like a good idea. I have just ordered a 1m cable to try it. Thank you for the suggestion
"I have just noticed that the LED on the filament sensor is always on regardless of its position"
I can only speak for the few examples of runout detector that I've seen but in those cases the LED indicated filament runout.
Hello all!
This is my first post here and I just wanted to ask in this thread. Was this exploration given up on? It seems this was around a year ago and I just recently ran into the same thing with my new ender 3 s1 pro.-- it has a touch screen/ not rotaryknob.
Thank you all for any guidance you can give.
I feel like the original point of the post is being missed. I have four printers, all have working filament runout sensors, but, when i send a print through Octoprint to those printers, if the filament runs out, the print is not paused because Octoprint does not read any information from the runout sensor.