I was pulling machinePosition from object model.
But looks like the segmentation is not working for firmware 3.3
Posts made by kaoshihchuan
-
RE: Segmentation with M669
-
RE: Segmentation with M669
Thanks for the prompt reply!
After removing K0, it does not un-homed. However, I still can't get the segmentation works.My process is like the code below
M669 S5
G0 X200 F500 (from X400)Then I have a loop to keep requesting machine position from object model
while loop:
x = move.axes[0]['machinePosition']
print(x)However, the report position from object model is always the same (400) while it was moving.
-
Segmentation with M669
Hi Duet Experts,
I am trying to use M669 to get more frequent position report. My system is Duet3_MB6HC with firmware version 3.3.
I issued the command (M669 K0 S5) but all the axes (X,Y,Z) went un-homed state immediately.
Is anyone know what the problem is?Thanks!
-
Multiple E Stop for one axis in Duet2 Wifi
Hi Duet Experts,
I am trying to setup an extra EStop to for each XYZ axes on a Duet2 Wifi system (Firmware version 2, with extension board). Aside from homing purpose, this extra EStop serve the purpose to sense the position of my printing tip (I do have additional sensors for the tip position sensing and connect them to e2stop and e3stop ).
Based on the information from following pages, I tried to create another set of coordinates (U,V,W) which corresponding to X,Y and Z and setup EStop to U, V and W axes.
1.Connecting endstop switches
https://docs.duet3d.com/User_manual/Connecting_hardware/Sensors_endstops
2. Axis levelling using endstops
https://docs.duet3d.com/User_manual/Connecting_hardware/Z_probe_auto_levelling#axis-levelling-using-endstops
3. M584 and M574 commandsIn Duet3, one can define the io pin to the axis but I can't find the way to do the same thing in Duet2. Is there anyway that I can setup or I should configure my hardware in certain way ?
Thanks!
-
rr_reply in Duet3 Standalone mode
Hi Experts,
I wrote my own code (python + requests) to send rr_gcode commands to control printer and use rr_reply to catch the response from the gcode command (like M290, G10 P2 ... ) The rr_reply was sent right after my rr_gcode command.
However, I have experienced a situation that the rr_reply sometime is empty. Sometimes, not all the time. Maybe more 50% than of time, I can get the correct response right away. For those empty response ones, I may get it right by keep resending the rr_gcode command and rr_reply.
This situation seems to happen only on Duet3 6HC (firmware version:3.3 Standalone mode) but not my duet 2 system. Does anyone have any suggestion/explanation for this problem ?
p.s.
I follow this page to sent my commands/requests to Duet system.
https://github.com/Duet3D/RepRapFirmware/wiki/HTTP-requests
and I am pretty sure the time interval between my rr_gcode and rr_reply is less than 1 second.Thanks!
-
Printer head current position
Hi Experts,
Is there a way to get the printer head's current/on-the-fly position ?
For command like M114 or the inquiring from machine status only return the destination position from current executing gcode.For example, if the printer head is commanded to X500, it will return X500 while it is still moving. But I would like to know where it actually is at that moment.
Thanks !
-
RE: Duet Web control for rr_"commands"
Sorry ... I have a question again .
The machine/status does response properly ..
r = requests.get('http://192.168.168.144/machine/status/')
I did get all the status reportbut when I sent the gcode command
r = requests.post('http://192.168.168.144/machine/code?gcode=G0 X300 Y300')return code of r is 200 but the print is not moving as it was instructed.
I have tried "-" or just space to replace %20 space string but it doesn't work either.Do I have the right format for the code I sent?
Thanks !
-
RE: Duet Web control for rr_"commands"
Thanks for helping!
Indeed, my Duet3 system is in SBC mode....So I will have to look how to use the REST API. -
RE: Duet Web control for rr_"commands"
Thanks for helping me.
The url is certainly working. (I can see the web page and control the printer using the web interface)
but url/query_command (like rr_status, rr_model, rr_reply, rr_gcode ...) won't work (even in browser) .I wonder whether any setup for Deut web control need to be configured. From my Duet WiFi system, I can see many transactions/responses (F12 on the web page) like rr_reply , but I did not see any from Duet 3.
Thanks!
-
RE: Duet Web control for rr_"commands"
Thanks!
I use python requests to send the http commands like this
r = requests.get('http://192.168.168.144/rr_model?type=1/')
or any other similar rr_commands ...but the response is always 404 .... Do I mistake anything ?
-
Duet Web control for rr_"commands"
Hi Experts
I have some codes to controls Duet2/Wifi based on those rr_commands ( rr_gcode, rr_status ... ).
Since I have some new hardware (Duet3), these codes would not work for it. What is the new method to inquire status report or send gcode command via this new web control system?Thanks a lot !
Kevin
-
Mesh Bed Compensation Limit
Hi Experts,
I have couple questions regarding mesh bed compensation. For my printer, I have an external optical sensor to measure the bed topography. Therefore I generated my own heightmap file from the data given by that sensor.
-
What is the maximum amount of points/grid size I can use ? I have tested a 26x26 heightmap csv file but it complains about the wrong grid format. But it's fine for a 21x21 grid.
-
Is there any limitation for bed compensation ? In my heightmap file, the min error is -1.5 and max error is about 0.45. After applying this file, the result with compensation shows the min error is -0.8 and max error is 0.05 ( I re-measured the bed topology with mesh bed compensation enable). So I still got about -0.8 mm lower at that tilted corner with mesh bed compensation on.
Thanks !
Kevin -
-
RE: Update Heightmap during printing
Hi
The laser scanner is not really talk/connect to Duet system. The way I did is to pause the print and then run the scanner to get current print surface topography. Once the scan is done, I resume the print.
What I would like to do is to feedback the scanned result to the Duet system for achieving better print.
Since the gcode of the print is sent, therefore it's impossible to modify the rest of gcode. That's why I am thinking to modify the heightmap to compensate the rest layers of print.
-
Update Heightmap during printing
Hi Experts,
If I update the heightmap file during the printing, will the rest of print follow the new heightmap topography ?
The reason to do is that I have a tall object to print and the surface usually warp. I have a laser scanner to determine the printed surface topography but I would like to correct it during the print.
Thanks !
-
Using pydsfapi on windows
Hi Experts,
I am new to Duet. Please forgive me if this question has been answered somewhere...
I am trying to use/modify the python API (pydsfapi) to communicate to my printer (Duet2 WiFi/Ethernet). Since the system has been connected to a PC which running
DuetWebControl, I would like to use the same computer to control the printer instead of using a pi to do it. Because I am working on integrating another sensor to the system, this is the reason I would like to write my own code to control it.My problems are listed below :
-
When I connected to the system, instead of using socket.AF_UNIX, I used socket.AF_INET. However, I got the error message for decoding the receiving. (Error message shows below)
....
File "C:\Users\JB3D - F30-B1\AppData\Local\Programs\Python\Python37\lib\json\decoder.py", line 337, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
File "C:\Users\JB3D - F30-B1\AppData\Local\Programs\Python\Python37\lib\json\decoder.py", line 355, in raw_decode
raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0) -
Based on the code, it seems the return/receiving message is in JSON format. Is there any more information about this?
Thank you very much!
Kevin
-