Duet3D Logo Duet3D
    • Tags
    • Documentation
    • Order
    • Register
    • Login
    1. Home
    2. adambx
    • Profile
    • Following 2
    • Followers 2
    • Topics 3
    • Posts 12
    • Best 1
    • Controversial 0
    • Groups 0

    adambx

    @adambx

    2
    Reputation
    14
    Profile views
    12
    Posts
    2
    Followers
    2
    Following
    Joined Last Online

    adambx Unfollow Follow

    Best posts made by adambx

    • RE: Mutiple Motion Systems & Macro Conflicts in 3.5

      Hi @SumoSniper ,
      I'm facing similar issues, but with a more complex macro structure with submacros modifying and checking global variables. I haven't investigated too deeply but have been able to get around all issues so far by adding some M598's. First randomly at the start of every macro that is being called and at various points inside the macros. I settled on placing M598's after calls to macros that could modify a global variable that i will need later on and before i check/use a global variable that could have been modified by a macro.

      Due to time constraints i could not investigate too far or boil it down to test cases, but i figured it's because of the deferred queue. Now macros called from jobs behave just as theones being called when no job is running.

      I hope to have some time to read up more on this topic at some point. It would also help if the documentation had some examples of what could go wrong for people using only 1 motion system but trip over some problems with macros, meta commands and queueing etc.

      Hope my "advice" could help out 🙂
      Cheers

      posted in Beta Firmware
      adambxundefined
      adambx

    Latest posts made by adambx

    • RE: Sending data from python server to Duet

      @pouryatorabi I can't think of anything, but am looking forward to suggestions, if there are any by others

      posted in Duet Web Control
      adambxundefined
      adambx
    • RE: Sending data from python server to Duet

      Hi,

      you could have a parameter in the macro like "param.R" for example.
      If you call the macro with the parameter, it will act as if it received a result

      M1585           ->  Server
                           ....calculate...
      M1585 R{result} <-  Server
      

      of course that's not synchronous. If you want to wait for the answer, another option would be to use a message box. That would be a little bit more complicated, although much more flexible 😉

      https://docs.duet3d.com/User_manual/Reference/Gcodes#m291-display-message-and-optionally-wait-for-response

      Afaik there is no other way to wait for a message via GCODE...

      posted in Duet Web Control
      adambxundefined
      adambx
    • RE: Save arbitrary sensor data to CSV like M956

      @chrishamm Thanks for the reply.
      I was thinking of faster streaming, maybe something along the lines of 100Hz. The added difficulty might be that i'm using CAN Connected boards.

      It would be an alternative to making custom boards.

      posted in Firmware wishlist
      adambxundefined
      adambx
    • Save arbitrary sensor data to CSV like M956

      Would it at all be feasible to implement saving short bursts of sensor data to CSV similarly to the Accelerometer?
      I'm interested in sub-CAN frequency, otherwise i would use a regular loop in a macro.
      Many sensors give analog output but 250ms update rate might be a little slow to get meaningful data.

      I envision something where there are following inputs:

      • Sensor number to log
      • Logging frequency
      • Duration/number of samples
      • Filename
        (- write XYZ axis position along with the value?)

      Just asking for general feasibility as in "maybe 3.7" or "rather 4.0" 🙂

      Cheers

      posted in Firmware wishlist
      adambxundefined
      adambx
    • RE: FilamentMonitor A0 but still update DM for all moves?

      @Phaedrux will do 👍

      posted in Filament Monitor
      adambxundefined
      adambx
    • FilamentMonitor A0 but still update DM for all moves?

      Re: Filament Monitor Data Access from OM

      Hello all 🙂

      quick questions/suggestions for the DataModel filamentMonitors

      When i configure the filamentMonitor to only monitor printing moves, the data model values are not updated when extruding without printing. Is that intended? Additionally, could the totalExtrusion be updated with a higher frequency instead of in increments of the checked length? Typically i use a check length of 6mm and it is irritating when i make a 3mm extrusion move, the totalExtrusion is not updated until i extrude multiple times.

      A bit more context:
      I am using a macro to calibrate flowrate multipliers using the filament monitor which in general works quite well, but for that I need to reconfigure it to monitor all moves since the DM values are not updated otherwise.

      Now I am also extruding with an empty extruder while waiting for filament to be loaded using another macro, and this causes filament-error.g calls as long as the user does not push filament in yet.

      I know i can check for status == "processing" in the filament-error.g and ignore it otherwise, but from my point of view the intuitive approach would be to configure the monitor as A0, but still be able to use the data model to monitor values when using it outside of printing. Does that make sense?

      posted in Filament Monitor
      adambxundefined
      adambx
    • RE: [RRF 3.5.2] Extruder motor fails to do a long extrusion

      @dc42 understood, thanks for the detailed response. Moves this long are not really a use case when 3d printing i guess. Certainly not important for us right now as the behaviour was only noticed on accident.

      Thanks again!
      Cheers

      posted in General Discussion
      adambxundefined
      adambx
    • RE: [RRF 3.5.2] Extruder motor fails to do a long extrusion

      So here with a little better production value, and full config 🙂

      I noticed I had 128 Microstepping configured for the extruder, which seemed a little excessive, so i reduced it down to 32, to see if the issue still occurs. This time the extruder emitted a loud screeching noise without motor movement .(beware of the volume when watching the video) I've attached a random coupling to the output shaft just for better visualization of the movement.

      You can see the console as well as the extruder in the video with both E20 and E20000 variants.
      WhatsApp Video 2024-08-07 at 20.58.56_bf3ab18c.mp4

      Note that the issue occurs in both Standalone and SBC mode when the extruder is connected via CAN.

      Full config.g

      ; General preferences
      G90                                          ; send absolute coordinates...
      M83                                          ; ...but relative extruder moves
      M550 P"duet3"                               ; set printer name
      
      ; Drives
      M569 P0 S1 D3                            
      M569 P1 S1 D3                                
      M569 P2 S1 D3                                
      M569 P3 S1 D3                                
      M569 P4 S1 D3	
      M569 P121.0 S0 
      
      M584 X0 Y4:3 Z1:2 E121.0
      
      ;spindle XY 50mm/r
      ;spindle Z 5mm/r
      ;extruder 30.778125/r Bondtech QR
      M350 X128 Y128 Z32 E32 I1                      ; configure microstepping with interpolation
      M92  X512.00 Y512.00 Z17920 E1408.4125             ; set steps per mm
      M566 X1000 Y1000 Z10.00 E600.00                 ; set maximum instantaneous speed changes (mm/min)
      M203 X30000.00 Y30000.00 Z300.00 E1200.00       ; set maximum speeds (mm/min)
      M201 X2500.00 Y2500.00 Z50.00 E3000.00          ; set accelerations (mm/s^2)
      M906 X1400 Y1400 Z650 E1000 I30                 ; set motor currents (mA) and motor idle factor in per cent
      M84 S30                                         ; Set idle timeout
      
      ; ringing cancellation 24Hz
      M593 P"zvd" F40.5
      M572 D0 S0.02
      
      ; Axis Limits
      M208 X-55 Y-20 Z0 S1
      M208 X440 Y400 Z300 S0
      
      ; Endstops
      M574 X1 S1 P"!io0.in"
      M574 Y1 S1 P"!io1.in+!io2.in"
      M574 Z1 S1 P"!io7.in+!io8.in"
      
      ; Z-Probe1
      M558 K0 P1 C"!io4.in" H2 F1500
      G31 K0 P500 X0 Y0 Z-0.1
      
      M557 X-10:320 Y63:230 P5:3                   ; define mesh grid
      
      G4 S2 ; wait for expansion boards to start
      ; Heaters
      M308 S0 P"temp2" Y"thermistor" T100000 B4138 ; configure sensor 0 as thermistor on pin temp0
      M950 H0 C"out2" T0 Q10                          ; create bed heater output on out0 and map it to sensor 0
      M143 H0 S110                                 ; set temperature limit for heater 0 to 120C
      M307 H0 R0.244 K0.145:0.000 D18.04 E1.35 S1.00 B0
      M140 H0                                      ; map heated bed to heater 0
      M308 S1 P"121.temp0" Y"pt1000" ; configure sensor 1 as thermistor on pin temp2
      M950 H1 C"121.out0" T1                           ; create nozzle heater output on out1 and map it to sensor 1
      M143 H1 S280                                 ; set temperature limit for heater 1 to 280C
      M307 H1 B0 S1.00                             ; disable bang-bang mode for heater  and set PWM limit
      
      ; Heater model parameters
      M307 H1 R1.947 K0.240:0.254 D11.64 E1.35 S1.00 B0 V23.4
      
      ; Fans
      M950 F0 C"121.out1" Q500                         ; create fan 0 on pin out3 and set its frequency
      M106 P0 S0 C"T0 Hotend"                               ; set fan 0 value. Thermostatic control is turned off
      M950 F1 C"121.out2"                         ; create fan 1 on pin out4 and set its frequency
      M106 P1 C"T0 Coldend" H1:1 T40                             ; Coldend on for extruder > 40 C
      M950 F9 C"out9"
      M106 P9 S200 C"UV Led"
      M950 F8 C"!out4"
      M106 P8 S80 I1 C"Cabinet"
      
      M591 D0 P3 C"121.io1.in" S1 R92:110 L25.6  ; filament monitor
      M591 D0 ; display filament sensor parameters for extruder drive 0
      
      ; Tools
      M563 P0 D0 H1 F0                             ; define tool 0
      G10 P0 X0 Y0 Z0                              ; set tool 0 axis offsets
      G10 P0 R0 S0                                 ; set initial tool 0 active and standby temperatures to 0C
      
      M200 D2.85
      M200 S0
      
      
      posted in General Discussion
      adambxundefined
      adambx
    • RE: [RRF 3.5.2] Extruder motor fails to do a long extrusion

      @deckingman I am working with @leone on this:

      There was no typo, having (G1 E20 F100) works fine and the extruder moves with proper F100

      20240806_204614.mp4

      Here you can see the rotation speed in the first few seconds and the console line later.
      In the first Video you can see the console input in the beginning. The only change is the E parameter value.

      MB6HC, TB1LC. I can post the extruder config later when i have access to it, but it has been running fine for the last couple of years. Although we have never extruded 20m at once and only discovered this by accident 🙂

      Cheers

      posted in General Discussion
      adambxundefined
      adambx
    • RE: Mutiple Motion Systems & Macro Conflicts in 3.5

      Thanks a lot. Will try it out!

      posted in Beta Firmware
      adambxundefined
      adambx