fraschetti/Octoslack

Feature Request - Post notificaiton with Firmware triggers

Closed this issue · 5 comments

I have a Marlin Firmware based runout sensor. Marlin triggers a M600 which pauses the print, moves the head and sets a timer for head cool-down until resumed by the end-user.

Marlin sends the following to the terminal screen when an event occurs: echo:enqueueing "M600"

Is it possible for OctoSlack to monitor for "received" events and send notification, like the GCode setup?

Hi @jalanjarosz,

Possibly. I'm overdue to upgrade my Prusa MK2 (upgrade kit(s) already in hand). I can likely give this a closer look once I have my local printer upgraded.

I was finally able to upgrade my Prusa MK2 --> MK2 --> MK2.5 and now also have a filament runout sensor to try out.
At first glace OctoPrint does have the correct internal mechanisms to implement this enhancement. I'll be taking a closer look at time permits. I'll update this ticket when I have more information.

Hi @jalanjarosz

I've completed development of this enhancement and it'll go out the next time I push a new release (TBD).
Specific to catching the output for the filament runout sensor (M600), below you can see the relevant statements sent from my Prusa MK2.5 firmware and received by OctoPrint. My personal preference woud likely be a G-code received event that looks for "fsensor_update - M600".

fsensor_update - M600
echo:Enqueing to the front: "FSENSOR_RECOVER"
echo:Enqueing to the front: "M600"
echo:busy: paused for user

As an added bonus, I decided to evolve the G-code event logic beyond the hard-coded "starts with" functionality to include:

  • Starts with
  • Ends with
  • Contains
  • Regular expression (evaluate the text as a regular expression against the sent/received G-code)

1.7.0 was just released with this enhancement. Have fun!

fraschetti -
Thank you for the enhancement! I was finally able to trigger a runout trigger and it worked like a charm! Great job! Keep up the awesome work on the plug-in.