@Nate-Nygren Jetson Nano 4GB here
Posts made by Nxt-1
-
RE: Smart effector wiring harness length
@sneakyferret if it is of any use, I van provide a data point. My wiring to the smarteffector is a good 2m long and has been working for years without a hint of problems.
-Nxt
-
RE: notifications upon start/pause/finish of print
@Torin So, it's been a while. I finaly broke down and installed a Go environment so I can play around with your project.
What I belive is going on is that there is rrf3 and 2, which your latested beta does differentiate between, though not entirely correct. Within rrf3 a subdivision must be made between the SBC version and the standalone version. The standalone version (rrf3) will get detected as is and work as intended (I assume I cannot test this). Rrf2 will also work I believe (again, I cannot test this). However, SBC mode (rrf3) will not work since it uses the
/machine/status
syntax which will lead it down the rrf2 branch of your code. That wont work asrr_status
is deprecated and returns resulting in a empty response. Which is obviously not json parsable, hence the continuous json errors I reported earlier. @chrishamm please correct me if I am wrong at any point here.What I belive needs to change to make all of this work:
- Expand the api version check in
main
to handle rrf3 sbc as a separate case (or pass the version/type as a config parameter again) - Make a 3rd handler for rrf3 sbc that uses
/machine/status
to get the full object model and takes the data it needs from it
-> I've changed the v2handler to package for now as an example on how this could work, check the files attached below
Some other changes I think would be useful if added:
- Make the connection protocol part of the host parameter. I.e. add the http part in there as well. For example my machine normally does not listen to http requests so making this user changeable would save some hassle on my side
- Add the same delay to the loop in case of errors, so the loop does not run at mach3
======================
Example implementation for rrf3 sbc handler (currently sits in place of the v2 handler)
v2_handler.gcode
types.gcode - Expand the api version check in
-
RE: notifications upon start/pause/finish of print
@torin said in notifications upon start/pause/finish of print:
@nxt-1 Interesting, can you provide me full curl of:
curl -v 'http://localhost:8080/rr_status?type=3' curl -v http://localhost:8080/rr_fileinfo (those two below probably will not work) curl -v 'http://localhost:8080/rr_model?key=job' curl -v 'http://localhost:8080/rr_model?key=state'
curl -v 'http://localhost:8080/rr_status?type=3'
-> 404
curl -v http://localhost:8080/rr_fileinfo
-> 404
curl -v 'http://localhost:8080/rr_model?key=job'
-> 404
curl -v 'http://localhost:8080/rr_model?key=state'
-> 404Which makes sense, since Chrishamm mentioned the rr_ system wil be introduced in v3.5
-
RE: notifications upon start/pause/finish of print
@torin
/machine/status
does give me a wall of json output .curl -v http://localhost:8080/machine/status * Trying 127.0.0.1... * TCP_NODELAY set * Connected to localhost (127.0.0.1) port 8080 (#0) > GET /machine/status HTTP/1.1 > Host: localhost:8080 > User-Agent: curl/7.58.0 > Accept: */* > < HTTP/1.1 200 OK < Content-Length: 14094 < Content-Type: application/json < Date: Wed, 20 Jul 2022 13:45:18 GMT < Server: Kestrel < {"boards":[{"accelerometer":null,"bootloaderFileName":null,"canAddress":0,"closedLoop":null,"directDisplay":null,"firmwareDate":"2022-06-01","firmwareFileName":"Duet3Firmware_MB6HC.bin","firmwareName":"RepRapFirmware for Duet 3 MB6HC","firmwareVersion":"3.4.1","iapFileNameSBC":"Duet3_SBCiap32_MB6HC.bin","iapFileNameSD":"Duet3_SDiap32_MB6HC.bin","maxHeaters":32,"maxMotors":6,"mcuTemp":{"current":44,"min":39.8,"max":50.4},"name":"Duet 3 MB6HC","shortName":"MB6HC","state":"unknown","supports12864":false,"supportsDirectDisplay":false,"uniqueId":"08DJM-9P63L-DJMSS-6JKD0-3S06T-9AF79","v12":{"current":12.3,"min":12.2,"max":12.4},"vIn":{"current":32.1,"min":31.9,"max":32.3}}],"directories":{"filaments":"0:/filaments/","firmware":"0:/firmware/","gCodes":"0:/gcodes/","macros":"0:/macros/","menu":"0:/menu/","scans":"0:/scans/","system":"0:/sys","web":"0:/www/"},"fans":[{"actualValue":0,"blip":0.1,"frequency":2000,"max":0.7,"min":0,"name":"Compressor","requestedValue":0,"rpm":-1,"thermostatic":{"heaters":[],"highTemperature":null,"lowTemperature":null}},{"actualValue":1,"blip":0.1,"frequency":25000,"max":1,"min":0,"name":"Duet","requestedValue":1,"rpm":2039,"thermostatic":{"heaters":[],"highTemperature":null,"lowTemperature":null}},{"actualValue":1,"blip":0.1,"frequency":25000,"max":1,"min":0,"name":"Pump","requestedValue":1,"rpm":4539,"thermostatic":{"heaters":[],"highTemperature":null,"lowTemperature":null}}],"global":{},"heat":{"bedHeaters":[0,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1],"chamberHeaters":[-1,-1,-1,-1],"coldExtrudeTemperature":160,"coldRetractTemperature":90,"heaters":[{"active":0,"avgPwm":0,"current":33.6,"max":150,"min":-273.1,"model":{"coolingExp":1.4,"coolingRate":0.138,"deadTime":19.5,"enabled":true,"fanCoolingRate":0,"heatingRate":0.577,"inverted":false,"maxPwm":1,"pid":{"d":0.849,"i":0.0008,"overridden":false,"p":0.06221,"used":true},"standardVoltage":0},"monitors":[{"action":1,"condition":"tooHigh","limit":150},{"action":0,"condition":"disabled","limit":0},{"action":0,"condition":"disabled","limit":0}],"sensor":0,"standby":0,"state":"off"},{"active":0,"avgPwm":0,"current":29.2,"max":285,"min":-273.1,"model":{"coolingExp":1.4,"coolingRate":0.319,"deadTime":5.4,"enabled":true,"fanCoolingRate":0.038,"heatingRate":1.825,"inverted":false,"maxPwm":1,"pid":{"d":0.268,"i":0.0029,"overridden":false,"p":0.07116,"used":true},"standardVoltage":32.1},"monitors":[{"action":0,"condition":"tooHigh","limit":285},{"action":0,"condition":"disabled","limit":0},{"action":0,"condition":"disabled","limit":0}],"sensor":1,"standby":0,"state":"off"}]},"httpEndpoints":[],"inputs":[{"axesRelative":false,"compatibility":"RepRapFirmware","distanceUnit":"mm","drivesRelative":true,"feedRate":50,"inMacro":false,"macroRestartable":false,"name":"HTTP","stackDepth":0,"state":"idle","lineNumber":0,"volumetric":false},{"axesRelative":false,"compatibility":"Marlin","distanceUnit":"mm","drivesRelative":true,"feedRate":50,"inMacro":false,"macroRestartable":false,"name":"Telnet","stackDepth":0,"state":"idle","lineNumber":0,"volumetric":false},{"axesRelative":false,"compatibility":"RepRapFirmware","distanceUnit":"mm","drivesRelative":true,"feedRate":10.5,"inMacro":false,"macroRestartable":false,"name":"File","stackDepth":0,"state":"idle","lineNumber":270768,"volumetric":false},{"axesRelative":false,"compatibility":"Marlin","distanceUnit":"mm","drivesRelative":true,"feedRate":50,"inMacro":false,"macroRestartable":false,"name":"USB","stackDepth":0,"state":"idle","lineNumber":0,"volumetric":false},{"axesRelative":false,"compatibility":"RepRapFirmware","distanceUnit":"mm","drivesRelative":true,"feedRate":50,"inMacro":false,"macroRestartable":false,"name":"Aux","stackDepth":0,"state":"reading","lineNumber":7,"volumetric":false},{"axesRelative":false,"compatibility":"RepRapFirmware","distanceUnit":"mm","drivesRelative":true,"feedRate":50,"inMacro":false,"macroRestartable":false,"name":"Trigger","stackDepth":0,"state":"idle","lineNumber":0,"volumetric":false},{"axesRelative":false,"compatibility":"RepRapFirmware","distanceUnit":"mm","drivesRelative":true,"feedRate":50,"inMacro":false,"macroRestartable":false,"name":"Queue","stackDepth":0,"state":"idle","lineNumber":270768,"volumetric":false},{"axesRelative":false,"compatibility":"RepRapFirmware","distanceUnit":"mm","drivesRelative":true,"feedRate":50,"inMacro":false,"macroRestartable":false,"name":"LCD","stackDepth":0,"state":"idle","lineNumber":0,"volumetric":false},{"axesRelative":false,"compatibility":"RepRapFirmware","distanceUnit":"mm","drivesRelative":true,"feedRate":50,"inMacro":false,"macroRestartable":false,"name":"SBC","stackDepth":0,"state":"idle","lineNumber":0,"volumetric":false},{"axesRelative":false,"compatibility":"RepRapFirmware","distanceUnit":"mm","drivesRelative":true,"feedRate":50,"inMacro":false,"macroRestartable":false,"name":"Daemon","stackDepth":0,"state":"idle","lineNumber":0,"volumetric":false},{"axesRelative":false,"compatibility":"RepRapFirmware","distanceUnit":"mm","drivesRelative":true,"feedRate":50,"inMacro":false,"macroRestartable":false,"name":"Aux2","stackDepth":0,"state":"idle","lineNumber":0,"volumetric":false},{"axesRelative":false,"compatibility":"RepRapFirmware","distanceUnit":"mm","drivesRelative":true,"feedRate":50,"inMacro":false,"macroRestartable":false,"name":"Autopause","stackDepth":0,"state":"idle","lineNumber":0,"volumetric":false}],"job":{"build":null,"duration":null,"file":{"filament":[7056],"fileName":null,"generatedBy":"Simplify3D(R) Version 4.1.2","height":33.1,"lastModified":"2022-07-17T15:13:52","layerHeight":0.2,"numLayers":165,"printTime":7380,"simulatedTime":4309,"size":7460736,"thumbnails":[]},"filePosition":7460476,"lastDuration":4298,"lastFileName":"0:/gcodes/LampAdapter.gcode","lastFileAborted":false,"lastFileCancelled":false,"lastFileSimulated":false,"layer":null,"layers":[],"layerTime":null,"pauseDuration":null,"rawExtrusion":null,"timesLeft":{"filament":null,"file":null,"slicer":null},"warmUpDuration":null},"limits":{"axes":15,"axesPlusExtruders":25,"bedHeaters":12,"boards":21,"chamberHeaters":4,"drivers":26,"driversPerAxis":8,"extruders":16,"extrudersPerTool":10,"fans":20,"gpInPorts":32,"gpOutPorts":32,"heaters":32,"heatersPerTool":20,"monitorsPerHeater":3,"restorePoints":6,"sensors":56,"spindles":4,"tools":50,"trackedObjects":40,"triggers":32,"volumes":1,"workplaces":9,"zProbeProgramBytes":8,"zProbes":4},"messages":[],"move":{"axes":[{"acceleration":1000,"babystep":0,"current":2400,"drivers":["0.2"],"homed":false,"jerk":400,"letter":"X","machinePosition":-5.392,"max":200,"maxProbed":false,"microstepping":{"interpolated":true,"value":16},"min":-200,"minProbed":false,"percentCurrent":100,"percentStstCurrent":71,"speed":10000,"stepsPerMm":160,"userPosition":-5.365,"visible":true,"workplaceOffsets":[0,0,0,0,0,0,0,0,0]},{"acceleration":1000,"babystep":0,"current":2400,"drivers":["0.1"],"homed":false,"jerk":400,"letter":"Y","machinePosition":-24.104,"max":200,"maxProbed":false,"microstepping":{"interpolated":true,"value":16},"min":-200,"minProbed":false,"percentCurrent":100,"percentStstCurrent":71,"speed":10000,"stepsPerMm":160,"userPosition":-23.984,"visible":true,"workplaceOffsets":[0,0,0,0,0,0,0,0,0]},{"acceleration":1000,"babystep":0,"current":2400,"drivers":["0.0"],"homed":false,"jerk":400,"letter":"Z","machinePosition":133.866,"max":770.05,"maxProbed":false,"microstepping":{"interpolated":true,"value":16},"min":0,"minProbed":false,"percentCurrent":100,"percentStstCurrent":71,"speed":10000,"stepsPerMm":160,"userPosition":133.2,"visible":true,"workplaceOffsets":[0,0,0,0,0,0,0,0,0]}],"calibration":{"final":{"deviation":0.037,"mean":0},"initial":{"deviation":0.038,"mean":-0.033},"numFactors":8},"compensation":{"fadeHeight":null,"file":null,"liveGrid":null,"meshDeviation":null,"probeGrid":{"axes":["X","Y"],"maxs":[188.8,188.8],"mins":[-188.7,-188.7],"radius":190,"spacings":[41.9,41.9]},"skew":{"compensateXY":true,"tanXY":0,"tanXZ":0,"tanYZ":0},"type":"none"},"currentMove":{"acceleration":0,"deceleration":0,"laserPwm":null,"requestedSpeed":0,"topSpeed":0},"extruders":[{"acceleration":3000,"current":750,"driver":"0.3","filament":"","factor":1,"jerk":2000,"microstepping":{"interpolated":true,"value":16},"nonlinear":{"a":0,"b":0,"upperLimit":0.2},"percentCurrent":100,"percentStstCurrent":71,"position":7053.9,"pressureAdvance":0.14,"rawPosition":7054.8,"speed":10000,"stepsPerMm":414}],"idle":{"factor":0.6,"timeout":30},"kinematics":{"deltaRadius":231.522,"homedHeight":770.057,"printRadius":200,"towers":[{"angleCorrection":-0.02,"diagonal":501.3,"endstopAdjustment":0.413,"xPos":-200.544,"yPos":-115.692},{"angleCorrection":-0.091,"diagonal":501.3,"endstopAdjustment":-0.814,"xPos":200.319,"yPos":-116.08},{"angleCorrection":0,"diagonal":501.3,"endstopAdjustment":0.402,"xPos":0,"yPos":231.522}],"xTilt":-0.009,"yTilt":0.003,"name":"delta","segmentation":null},"limitAxes":true,"noMovesBeforeHoming":true,"printingAcceleration":20000,"queue":[{"gracePeriod":0.01,"length":60},{"gracePeriod":0.01,"length":5}],"rotation":{"angle":0,"centre":[0,0]},"shaping":{"amplitudes":[],"damping":0.1,"durations":[],"frequency":40,"minAcceleration":0,"type":"none"},"speedFactor":1,"travelAcceleration":20000,"virtualEPos":0,"workplaceNumber":0},"network":{"corsSite":null,"hostname":"server","interfaces":[{"activeProtocols":[],"actualIP":null,"configuredIP":null,"dnsServer":"127.0.0.53","firmwareVersion":null,"gateway":null,"mac":"AE:A2:57:DA:70:FA","numReconnects":null,"signal":null,"speed":0,"state":"disabled","subnet":null,"type":"lan"},{"activeProtocols":[],"actualIP":null,"configuredIP":null,"dnsServer":"127.0.0.53","firmwareVersion":null,"gateway":null,"mac":"48:B0:2D:3D:3E:E4","numReconnects":null,"signal":null,"speed":10,"state":"disabled","subnet":null,"type":"lan"},{"activeProtocols":[],"actualIP":null,"configuredIP":null,"dnsServer":"127.0.0.53","firmwareVersion":null,"gateway":null,"mac":"A6:73:89:4F:B4:35","numReconnects":null,"signal":null,"speed":0,"state":"disabled","subnet":null,"type":"lan"},{"activeProtocols":[],"actualIP":null,"configuredIP":null,"dnsServer":"127.0.0.53","firmwareVersion":null,"gateway":null,"mac":"A6:73:89:4F:B4:35","numReconnects":null,"signal":null,"speed":0,"state":"disabled","subnet":null,"type":"lan"},{"activeProtocols":[],"actualIP":null,"configuredIP":null,"dnsServer":"127.0.0.53","firmwareVersion":null,"gateway":null,"mac":"A6:73:89:4F:B4:37","numReconnects":null,"signal":null,"speed":0,"state":"disabled","subnet":null,"type":"lan"},{"activeProtocols":[],"actualIP":"172.17.0.1","configuredIP":"172.17.0.1","dnsServer":"127.0.0.53","firmwareVersion":null,"gateway":null,"mac":"02:42:A8:9B:B4:7D","numReconnects":null,"signal":null,"speed":0,"state":"disabled","subnet":"255.255.0.0","type":"lan"},{"activeProtocols":[],"actualIP":"192.168.178.22","configuredIP":"192.168.178.22","dnsServer":"127.0.0.53","firmwareVersion":null,"gateway":"192.168.178.1","mac":"58:96:1D:13:6F:0A","numReconnects":null,"signal":-71,"speed":0,"state":"active","subnet":"255.255.255.0","type":"wifi"}],"name":"server"},"plugins":{},"scanner":{"progress":0,"status":"D"},"sensors":{"analog":[{"lastReading":33.6,"name":"Bed","type":"thermistor"},{"lastReading":29.2,"name":"Hotend","type":"thermistor"}],"endstops":[{"highEnd":true,"triggered":false,"type":"inputPin"},{"highEnd":true,"triggered":false,"type":"inputPin"},{"highEnd":true,"triggered":false,"type":"inputPin"}],"filamentMonitors":[],"gpIn":[],"probes":[{"calibrationTemperature":25,"deployedByUser":false,"disablesHeaters":false,"diveHeight":5,"lastStopHeight":-0.116,"maxProbeCount":10,"offsets":[0,0,0.1],"recoveryTime":0.5,"speeds":[1000,1000],"temperatureCoefficients":[0,0],"threshold":100,"tolerance":0.03,"travelSpeed":10000,"triggerHeight":-0.1,"type":8,"value":[0]}]},"spindles":[{"active":0,"canReverse":false,"current":0,"frequency":0,"min":60,"max":10000,"state":"unconfigured"},{"active":0,"canReverse":false,"current":0,"frequency":0,"min":60,"max":10000,"state":"unconfigured"},{"active":0,"canReverse":false,"current":0,"frequency":0,"min":60,"max":10000,"state":"unconfigured"},{"active":0,"canReverse":false,"current":0,"frequency":0,"min":60,"max":10000,"state":"unconfigured"}],"state":{"atxPower":null,"atxPowerPort":null,"beep":null,"currentTool":0,"deferredPowerDown":null,"displayMessage":"","dsfVersion":"3.4.1","dsfPluginSupport":true,"dsfRootPluginSupport":false,"gpOut":[],"laserPwm":null,"logFile":null,"logLevel":"off","messageBox":null,"machineMode":"FFF","macroRestarted":false,"msUpTime":230,"nextTool":0,"pluginsStarted":false,"powerFailScript":"","previousTool":-1,"restorePoints":[{"coords":[0,0,0],"extruderPos":0,"fanPwm":0,"feedRate":50,"ioBits":0,"laserPwm":null,"spindleSpeeds":[],"toolNumber":-1},{"coords":[0,0,0],"extruderPos":0,"fanPwm":0,"feedRate":50,"ioBits":0,"laserPwm":null,"spindleSpeeds":[],"toolNumber":-1},{"coords":[0,0,238.806],"extruderPos":0,"fanPwm":0,"feedRate":50,"ioBits":0,"laserPwm":null,"spindleSpeeds":[],"toolNumber":-1},{"coords":[0,0,0],"extruderPos":0,"fanPwm":0,"feedRate":50,"ioBits":0,"laserPwm":null,"spindleSpeeds":[],"toolNumber":-1},{"coords":[0,0,0],"extruderPos":0,"fanPwm":0,"feedRate":50,"ioBits":0,"laserPwm":null,"spindleSpeeds":[],"toolNumber":-1},{"coords":[0,0,0],"extruderPos":0,"fanPwm":0,"feedRate":* Connection #0 to host localhost left intact 50,"ioBits":0,"laserPwm":null,"spindleSpeeds":[],"toolNumber":-1}],"status":"idle","thisInput":null,"time":"2022-07-20T15:44:46","upTime":4052689},"tools":[{"active":[0],"axes":[[0],[1]],"extruders":[0],"fans":[0],"feedForward":[0],"filamentExtruder":0,"heaters":[1],"isRetracted":false,"mix":[1],"name":"Hotend","number":0,"offsets":[0,0,0],"offsetsProbed":0,"retraction":{"extraRestart":0,"length":0.9,"speed":45,"unretractSpeed":45,"zHop":0.1},"spindle":-1,"spindleRpm":0,"standby":[0],"state":"active"}],"userSessions":[{"accessLevel":"readWrite","id":33,"origin":"94.105.126.101","originId":-1,"sessionType":"http"}],"volumes":[{"capacity":236242378752,"freeSpace":220662013952,"mounted":true,"name":null,"openFiles":null,"partitionSize":236242378752,"path":"/","speed":null}]}
However launching the updated executable I get continous json errors:
(I am running rrf 3.4.1 fyi)./reprap_notify_linux_arm64 2022/07/20 15:48:57 Detecting API version... 2022/07/20 15:48:57 Detected firmware revision 2 2022/07/20 15:48:57 Error parsing JSON: unexpected end of JSON input 2022/07/20 15:48:57 Error parsing JSON: unexpected end of JSON input
-
RE: notifications upon start/pause/finish of print
@torin said in notifications upon start/pause/finish of print:
@nxt-1 Right, so the second paste is wrong and missing URI
I did in fact ment to post it without URI, just to show that can I fact make a connection.
Here's the two requests, as requested
curl -v http://localhost:8080/machine/system * Trying 127.0.0.1... * TCP_NODELAY set * Connected to localhost (127.0.0.1) port 8080 (#0) > GET /machine/system HTTP/1.1 > Host: localhost:8080 > User-Agent: curl/7.58.0 > Accept: */* > < HTTP/1.1 404 Not Found < Content-Length: 0 < Date: Tue, 19 Jul 2022 15:39:09 GMT < Server: Kestrel < * Connection #0 to host localhost left intact
curl -v "http://localhost:8080/rr_model?key=boards" * Trying 127.0.0.1... * TCP_NODELAY set * Connected to localhost (127.0.0.1) port 8080 (#0) > GET /rr_model?key=boards HTTP/1.1 > Host: localhost:8080 > User-Agent: curl/7.58.0 > Accept: */* > < HTTP/1.1 404 Not Found < Content-Length: 0 < Date: Tue, 19 Jul 2022 15:39:18 GMT < Server: Kestrel < * Connection #0 to host localhost left intact
-
RE: notifications upon start/pause/finish of print
@torin They result in a 404 for both, though I would not be able to guess why since the base address does seem to be reachable, though understandably complaining about the lack of JS.
curl -v http://localhost:8080/rr_model?key=boards * Trying 127.0.0.1... * TCP_NODELAY set * Connected to localhost (127.0.0.1) port 8080 (#0) > GET /rr_model?key=boards HTTP/1.1 > Host: localhost:8080 > User-Agent: curl/7.58.0 > Accept: */* > < HTTP/1.1 404 Not Found < Content-Length: 0 < Date: Tue, 19 Jul 2022 14:44:56 GMT < Server: Kestrel < * Connection #0 to host localhost left intact
curl -v http://localhost:8080 * Rebuilt URL to: http://localhost:8080/ * Trying 127.0.0.1... * TCP_NODELAY set * Connected to localhost (127.0.0.1) port 8080 (#0) > GET / HTTP/1.1 > Host: localhost:8080 > User-Agent: curl/7.58.0 > Accept: */* > < HTTP/1.1 200 OK < Content-Length: 1441 < Content-Type: text/html < Date: Tue, 19 Jul 2022 14:47:27 GMT < Server: Kestrel < Accept-Ranges: bytes < ETag: "1d8772d0a7368a1" < Last-Modified: Fri, 03 Jun 2022 09:33:54 GMT < <!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width,initial-scale=1,user-scalable=0"><!--[if IE]><link rel="icon" href="/favicon.ico"><![endif]--><title>Duet Web Control</title><link href="/css/app.62f87138.css" rel="preload" as="style"><link href="/js/app.d9dc885b.js" rel="preload" as="script"><link href="/css/app.62f87138.css" rel="stylesheet"><link rel="icon" type="image/png" sizes="32x32" href="/img/icons/favicon-32x32.png"><link rel="icon" type="image/png" sizes="16x16" href="/img/icons/favicon-16x16.png"><link rel="manifest" href="/manifest.json"><meta name="theme-color" content="#2196f3"><meta name="apple-mobile-web-app-capable" content="yes"><meta name="apple-mobile-web-app-status-bar-style" content="black"><meta name="apple-mobile-web-app-title" content="Duet Web Control"><link rel="apple-touch-icon" href="/img/icons/apple-touch-icon-152x152.png"><link rel="mask-icon" href="/img/icons/safari-* Connection #0 to host localhost left intact pinned-tab.svg" color="#2196f3"><meta name="msapplication-TileImage" content="/img/icons/msapplication-icon-144x144.png"><meta name="msapplication-TileColor" content="#000000"></head><body><noscript><strong>We're sorry but Duet Web Control does not work properly without JavaScript enabled. Please enable it to continue.</strong></noscript><div id="app"></div><script src="/js/app.d9dc885b.js"></script```
-
RE: notifications upon start/pause/finish of print
@torin I tried the new version but could not get past identifying v2 of v3 firmware.
Printer is a Duet3 6HC in SBC mode, attached to a Jetson Nano (arm64). That name Nano also runs your project.
Top of rrnotity.yaml looks like this (dwc is running on port 8080)
connection: host: localhost:8080 polling_time: 5 error_count: 50 api_version: v3
Running the rr_notify results is this output:
2022/07/19 00:40:18 Detecting API version... 2022/07/19 00:40:18 Couldn't identify v2 or v3 firmware panic: Couldn't identify v2 or v3 firmware goroutine 1 [running]: log.Panicf({0x463b71?, 0x454fd0?}, {0x0?, 0x1?, 0x400022a030?}) /usr/local/go/src/log/log.go:392 +0x6c main.main() /builds/Toriniasty/reprap_notify/cmd/rr_notify/main.go:71 +0x46c
I am not sure how to proceed from here or how to debug. ¯_(ツ)_/¯
-
RE: Should I pull apart my light preload linear rail?
@threepwood If your rail is out of spec and a genuine part you can always contact the supplier. That being said, if it were my rail I would not mind taking it appart and reassembling it ¯_(ツ)_/¯.
-
RE: Should I pull apart my light preload linear rail?
@threepwood I disassembled a number of linear rails including MGN12's. I don't see a specific reason to not do it appart from that it can be tedious. Once the rail is out of the cariage, there isn't much keeping the balls in check (the little metal bar inside is far from 100%) and boy do they like to go everywhere if they get a chance to bounce. My advice would be to disassemble them inside or over a container so you don't lose any balls. Also getting the cariage back on the rail can a hassle for the same reason.
I have not worked with the MGN9 size personaly but I imagine it is idential, perhaps with even smaller balls.
-
RE: Software version 3.4.1 released
@chrishamm Is it inteded that the release notes for DFS and DWC are identical?
-
RE: notifications upon start/pause/finish of print
@torin I don't know if you planned on maintaining this app, but it sure would be nice if it received an update.
I did some testing and got a contineous stream of JSON parse errors. After checking the sources it seems the program uses the GET /rr_status way of talking to the Duet. However, according to this page on the Duet Github, it is deprecated now.Should you decide to maintain it, I could make time to help out testing.
-Nxt
-
RE: Manually Tuning 1000W Heater
@jrcl Since the new heater tuning model got implemented, tuning on large thermal mass beds has been known to take a while. As it happens I tuned my 2kW bed just last weekend and that took several hours.
So what you encountered might in fact be just normal behaviour. -
RE: Please remove inline styling from DWC
@chrishamm I guess they are new or updated dependencies that DWC uses. I am not sure how I can find out what they belong to appart from the two screenshots I've added that seem to show somewhat of a path?
-
RE: SBC upgrade to 3.4 did not go smooth
@chrishamm I can't really provide any more info I am afaid. Even before I posted the original thread, I already fixed the issue with a mixture of --reconfigures and reinstalls. I mainly posted to raise awareness in case more people encountered the issue.
-
SBC upgrade to 3.4 did not go smooth
Yesterday I took the time to upgrade my Duet 3 MB machine from 3.3 to 3.4. Since I am running it in SBC mode (with a Jetson Nano), I upgraded using
apt
. However, due to the order in which the different packages get installed and configured, a dependency arises. At least in my case it did.Here's the therminal output I got:
Setting up duetcontrolserver (3.4.0) ... Configuration file '/opt/dsf/conf/config.json' ==> Modified (by you or by a script) since installation. ==> Package distributor has shipped an updated version. What would you like to do about it ? Your options are: Y or I : install the package maintainer's version N or O : keep your currently-installed version D : show the differences between the versions Z : start a shell to examine the situation The default action is to keep your current version. *** config.json (Y/I/N/O/D/Z) [default=N] ? Y Installing new version of config file /opt/dsf/conf/config.json ... Setting up duetwebserver (3.4.0) ... Configuration file '/opt/dsf/conf/http.json' ==> Modified (by you or by a script) since installation. ==> Package distributor has shipped an updated version. What would you like to do about it ? Your options are: Y or I : install the package maintainer's version N or O : keep your currently-installed version D : show the differences between the versions Z : start a shell to examine the situation The default action is to keep your current version. *** http.json (Y/I/N/O/D/Z) [default=N] ? Y Installing new version of config file /opt/dsf/conf/http.json ... dpkg: error processing package duetwebserver (--configure): installed duetwebserver package post-installation script subprocess returned error exit status 1 dpkg: dependency problems prevent configuration of duetsoftwareframework: duetsoftwareframework depends on duetwebserver (= 3.4.0); however: Package duetwebserver is not configured yet. dpkg: error processing package duetsoftwareframework (--configure): dependency problems - leaving unconfigured dpkg: dependency problems prevent configuration of duetwebcontrol: duetwebcontrol depends on duetsoftwareframework (>= 3.2.0); however: Package duetsoftwareframework is not configured yet. dpkg: error processing package duetwebcontrol (--configure): dependency problems - leaving unconfigured Setting up duettools (3.4.0) ... dpkg: dependency problems prevent configuration of duetpluginservice: duetpluginservice depends on duetsoftwareframework (>= 3.3); however: Package duetsoftwareframework is not configured yet. dpkg: error processing package duetpluginservice (--configure): dependency problems - leaving unconfigured No apport report written because the error message indicates its a followup error from a previous failure. No apport report written because the error message indicates its a followup error from a previous failure. No apport report written because MaxReports is reached already dpkg: dependency problems prevent configuration of reprapfirmware: reprapfirmware depends on duetsoftwareframework (>= 3.2.0); however: Package duetsoftwareframework is not configured yet. dpkg: error processing package reprapfirmware (--configure): dependency problems - leaving unconfigured No apport report written because MaxReports is reached already Processing triggers for libc-bin (2.27-3ubuntu1.5) ... Processing triggers for systemd (237-3ubuntu10.53) ... Processing triggers for man-db (2.8.3-2ubuntu0.1) ... Processing triggers for ufw (0.36-0ubuntu0.18.04.2) ... Rules updated for profile 'Nginx HTTP' Rules updated for profile 'Nginx HTTPS' Firewall reloaded Errors were encountered while processing: duetwebserver duetsoftwareframework duetwebcontrol duetpluginservice reprapfirmware E: Sub-process /usr/bin/dpkg returned an error code (1)
-
Please remove inline styling from DWC
I just took the time to upgrade to the RRF3.4 softwarebundle and after upgrading I noticed some parts of DWC look weird. A quick look in the chrome development console explained what was going on: certain styles are being blocked.
To give some context, my Duet sits bevind a reverse proxy and part of security measures is the content security policy header (= CSP). This is a system that lets you control what scripts (eg JS and CSS) are allowed to be loaded on your site.
A part of normal CSP behaviour is blocking all inline scripts. This didn't use to be an issue since DWC propery separated it's scripts, but it seems like since DWC 3.4 this is no longer the case in some spots. My chrome reportsindex.tx:169
,index.ts:73
andCart.js:7716
as violations.For now, I have allowed the specific hashes of the files in my CSP header to have a workaround. Yet this is far from idial as it is clunky and the files are bound to change in the future, requiring manual intervention each time.
I hope this can be fixed.
-Nxt
-
RE: Any SBC alternatives out there?
@TLAS @dc42 I can confirm a Jetson Nano works in conjunction with a 6HC. I do plan on releasing a full guide on getting a Jetson Nano to work, including the required pinconfigurations. Sadly I have some other projects with a higher priority at the moment. Maybe if there is considerable interest I can shuffle some things around.
-
RE: I need hands on support upgrading my Delta's firmware.
@ottobawt I find the forums are filled with very helpful people. However if you really want one on one suport, I have offerd such consultancy work in the past for people here though my company Nxt-3D. Fyi, I also have delta printer, running rrf3.
I am in the EU (GMT +1) timezone but shoot be a message if you are interested.
-
RE: Layershift caused by underruns?
Hi @phaedrux , I missed your reply. No not mechanical as I did several prints before and many more since, without as much as a hint of a layershift. At the same time I was not able to reproduce the underrun values while printing that file. The layershift did occur again with that file but I have a part now that is 'good enough' so haven't bothered with it to be completely honest.