Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[FeatureRequest]: M591 filament monitoring option for USB control #862

Closed
jaysuk opened this issue Jun 6, 2023 · 6 comments
Closed

[FeatureRequest]: M591 filament monitoring option for USB control #862

jaysuk opened this issue Jun 6, 2023 · 6 comments
Assignees
Labels
enhancement Additional functionality, performance or other feature request
Milestone

Comments

@jaysuk
Copy link

jaysuk commented Jun 6, 2023

Is your feature request related to a problem? Please describe.

See this thread https://forum.duet3d.com/topic/31221/filament-monitoring-while-printing-via-usb?_=1685740576518

Describe the solution you propose.

See the above thread

Describe alternatives you've considered

Ex. A workaround exists but it is tedius, for example...

Provide any additional context or information.

Ex. Photos, mockups, etc.

@jaysuk jaysuk added the enhancement Additional functionality, performance or other feature request label Jun 6, 2023
@jaysuk
Copy link
Author

jaysuk commented Jun 6, 2023

@jaysuk
Copy link
Author

jaysuk commented Jun 6, 2023

also, implementing host action commands from Marlin may give the best compatibility to existing server control software https://marlinfw.org/docs/configuration/configuration.html#host-action-commands

@chrishamm
Copy link
Collaborator

chrishamm commented Jun 6, 2023

This isn't a high priority at the moment. It should be already possible to develop a work-around using daemon.g and something like this:

var hadFilamentError = false
while true
  G4 S1 ; check once per second
  if sensors.filamentMonitors[0].status != "ok"
    if !var.hadFilamentError
      M118 S"Filament error! Do something."
      set var.hadFilamentError = true
  else
    set var.hadFilamentError = false

Note that I have not tested this macro yet.

@T3P3 T3P3 assigned dc42 and unassigned x0rtrunks Aug 11, 2023
@T3P3 T3P3 added this to the 3.5.0 milestone Aug 11, 2023
@T3P3
Copy link
Contributor

T3P3 commented Aug 16, 2023

@jay please can you have a look at this and see if its working for you now.

@dc42
Copy link
Collaborator

dc42 commented Aug 25, 2023

Issues to be resolved:

  • The response to M591 D# by itself doesn't distinguish between enable modes 1 and 2 (now fixed)
  • There was a use of = where == was intended, that GCC did not pick up (now fixed)
  • Although the code that calls the filament monitor Check or Clear function takes account of the enable mode in both RRF and Duet3Expansion, the subsequent code in RRF still checks if we are really printing before raising an event. To account properly for the enable mode, RRF will need to keep track of the enable mode of remote filament monitors, or the enable mode will need to be included in the CAN message that passes filament monitor status back to the main board. We could possibly include the filament sensor enable mode in the 'extra' field of the reply to the configuration message.

@dc42
Copy link
Collaborator

dc42 commented Aug 25, 2023

Now fixed and tested.

@dc42 dc42 closed this as completed Aug 25, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement Additional functionality, performance or other feature request
Projects
None yet
Development

No branches or pull requests

5 participants