Duet Web Control wishlist notes and priorities
-
This is weird. I had been trying different cards to test a reconnect on file upload issue that I was having. Anyway, I tried a different card and now have all my gcode files back. BUT what's really weird is that these are identical cards (Sandisk Extreme 32GB) and both have exactly the same files and folder structure. My PC reads both of them fine and shows all the files and folders as they should be. But Duet doesn't see the same files on one of the cards. What the ????
-
@deckingman said in Duet Web Control wishlist notes and priorities:
This is weird. I had been trying different cards to test a reconnect on file upload issue that I was having. Anyway, I tried a different card and now have all my gcode files back. BUT what's really weird is that these are identical cards (Sandisk Extreme 32GB) and both have exactly the same files and folder structure. My PC reads both of them fine and shows all the files and folders as they should be. But Duet doesn't see the same files on one of the cards. What the ????
The Duet is seeing the first N files and folders in /gcodes in both cases (actually N varies with the lengths of the filenames). However, the order in which the files and folders are stored in the /gcodes directory is not necessarily the same for both cards.
-
That is just seriously weird behaviour. So by deleting some files and moving some others into existing folders, I now have all my folders showing up. And the order they are displayed in, is as I would expect to see it - folders first then files, in alpha numeric order.
All I did was the remove the SD card, create a new folder on my PC, copy everything from the root of the SD card to the root of the new folder on the PC. Then take a new SD card and copy everything from the root of the PC folder to the root of the new card. On my PC the card contents look identical. So for one card to work fine and the other to have issues unless files are moved or deleted, is just weird.
-
@deckingman said in Duet Web Control wishlist notes and priorities:
That is just seriously weird behaviour. So by deleting some files and moving some others into existing folders, I now have all my folders showing up. And the order they are displayed in, is as I would expect to see it - folders first then files, in alpha numeric order.
All I did was the remove the SD card, create a new folder on my PC, copy everything from the root of the SD card to the root of the new folder on the PC. Then take a new SD card and copy everything from the root of the PC folder to the root of the new card. On my PC the card contents look identical. So for one card to work fine and the other to have issues unless files are moved or deleted, is just weird.
It may seem weird, but when you copied the file to the new SD card (or form the old SD card to your PC), they were copied in a different order to the order in which they appeared in the directory of the old SD card. In particular, the folders have been copied earlier than some files that appear before them in the original directory.
To guarantee that a subfolder will always be visible, after created the /gcodes folder on the new SD card, create a subfolder (or a few subfolders) in it before you copy any files to it. This those subfolders will be at the beginning of the directory, so they will always be visible to DWC.
-
@dc42 how are the plans for "pagination" of g-code file and folder listings coming along?
I remember that you had to reduce the buffer size during the RTOS transition - and I was wondering if you spent any thoughts on improving the situation?
DWC and PanelDue both suffer from this as far as I know... -
@resam said in Duet Web Control wishlist notes and priorities:
@dc42 how are the plans for "pagination" of g-code file and folder listings coming along?
I remember that you had to reduce the buffer size during the RTOS transition - and I was wondering if you spent any thoughts on improving the situation?
DWC and PanelDue both suffer from this as far as I know...I suggested a possible fix to chrishamm, but he didn't like it. I'll liaise with him and see if we can find another solution.
For the benefit of anyone who is already running their own version of DWC, my suggestion was to revert to using rr_files instead of rr_filelist to get the list of files. The rr_files call doesn't return the date stamp or file size (which rr_filelist does), but DWC already has to call rr_fileinfo on each file anyway, which provides that information. However, I'm not familiar with that area of DWC, so there might be a complication to this approach that I haven't thought of.
-
Yes that is right, I did not like the idea of using rr_files because it is only a partial work-around and because it does not resolve the underlying problem. My original idea for a fix was to create a derived class of OutputBuffer which would allow sending a basically unlimited number of chunks of JSON to the web interface, but there were some complications during the implementation so I never finished this part.
Also using rr_files for macros and sys files will not work without further complications because DWC does not use rr_fileinfo for those files and I don't want to send extra rr_fileinfo requests for those files. Anyway, I'll try to change DWC so that it uses rr_files instead of rr_filelist for G-Code files. This will at least improve things a bit.
-
Chris, did you consider the other solution I offered, which was to add an extra "start from file #" field to the rr_filelist request, and in the response include an extra field to say whether there were any files left and the new "start from" number? That would work with gcode files, sys files and macros, and it would be backwards-compatible. It should be simpler in firmware than dividing the json response into fragments.
-
Yes that would work. I already have the rr_files change working for the G-code directories, so I guess this is low-priority though.
FYI I just added support for a new field to the rr_filelist responses to DWC, which could indicate if an overflow occurred and thus warn the user that not all the files are displayed. To get this working from RRF's side, you'd just have to append "truncated":1 to the filelist response when it overflows.
-
@chrishamm, the response to rr_filelist already includes field "next":nn where nn is the number of the first file not returned, and 0 means the list is complete. Likewise it accepts a parameter "first" indicating the number of the first file that is wanted. I implemented this some time ago, but perhaps I forgot to tell you - I'm sorry if that is the case.
-
@dc42 Dang, good to know, I wasn't aware this is already supported. I'll change the corresponding parts in the web interface so we don't need to worry about too long file lists any more. Thanks for the note!
-
I have two issues with DWC:
- an old one, that controls for extrusion multiplier and speed multiplier are not working on iPhone (maybe iOS in general). If you click, sometimes the slider jumps to max, sometimes jumps to the position you clicked. Dragging does not work.
- the down arrow history in G-code console was very handy for portable devices. The question mark for help, not so much
LE: removed the rememberedGcodes.indexOf issue because I've read above about the wrong settings.
-
@chrishamm the webcam rotation is still not working properly...
When I change it, it is rotated correctly.
But once I close the browser tab or reload the page, the rotation setting is lost. -
@chrishamm
can't get around java script gcode is not a function/disconnect. Any entry in gcode field sets it off. I have performed a fresh boot load install 2.01 rtos and dwc 1.22. I erased gcode folder and am using a desktop that hasn't uploaded or connected to board in the past. It persist. I have separated every variable that could cause it on my end. It is something I can't figure out. My bl touch probe works some of the time, but not all and board will start a print via upload ignoring g28 altogether. I have no m code in my config.g to allow movement before printer is homed. Homing button indicate machine not homed but it just start run print. reset factory default,apply setting reflects not diff.RepRapFirmware for Duet 2 WiFi/Ethernet
Firmware Electronics: Duet Ethernet 1.02 or later
Firmware Version: 2.01(RTOS) (2018-07-26b2)
Web Interface Version: 1.22; General preferences
M111 S0 ; Debugging off
G21 ; Work in millimetres
G90 ; Send absolute coordinates...
M83 ; ...but relative extruder moves
M555 P1 ; Set firmware compatibility to look like RepRapFirmare
G31 X-52 Y50 Z.9 P25
M208 X0 Y-21 Z0 S1 ; Set axis minima
M208 X305 Y291 Z247 ; Set axis maxima; Endstops
M574 X1 Y1 S1 ; Set active low endstops
M574 Z0
M558 P9 X0 Y0 Z1 H5 F100 T2000 ; Set Z probe type to switch, the axes for which it is used and the dive height + speeds
G31 P600 X0 Y12 Z.96; Set Z probe trigger value, offset and trigger height
M557 X52:300 Y60:335 S40 ; Define mesh gridM550 Pfamily's printer ; Set machine name
M540 PBE:EF:DE:AD:FE:ED ; Set MAC address
M552 P192.168.1.10 S1 ; Enable network and set IP address
M553 P255.255.254.0 ; Set netmask
M554 P73.214.152.1 ; Set gateway
M586 P0 S1 ; Enable HTTP
M586 P1 S0 ; Disable FTP
M586 P2 S0 ; Disable TelnetI use netgear nighthawk 7800r router
with ethernet connection speed 431 mb/sec speed test
firefox61.0.2/64bit
win 10/64 bit version 1709 build 16299.431
amd fx 8320 8 core 3.5ghzno usb connection 24 v psu
-
Do the same problems persist in DWC 1.22.1? It is part of David's latest firmware release.
-
@chrishamm I just tested your latest 1.22.2 release from an hour ago.
Still the same issue. The webcam rotation gets reset to 0° after a page reload. -
@chrishamm actually, I just checked the browser local storage, and it still shows the correct setting. But it seems it doesn't get loaded or applied to the iframe properly.
When I set the rotation to 180, and click "Apply Settings", the img tag gets a new
class="rotate-180"
option.
When I reload the page, this is missing, although the localStorage contains a valid json setting.edit:
When I load the page, and use the dev tools in my browser at https://github.com/chrishamm/DuetWebControl/blob/a5a74e5335ff6a15279247dedf276ab2694a5d56/core/js/settings.js#L217
settings.webcamRotation
is0
,getLocalSetting("settings", null);
returns the correct rotation setting.I think the issue is here: https://github.com/chrishamm/DuetWebControl/blob/a5a74e5335ff6a15279247dedf276ab2694a5d56/core/js/settings.js#L121
> settings["webcamRotation"].constructor <- Æ’ Number() { [native code] } > loadedSettings["webcamRotation"].constructor <- Æ’ String() { [native code] }
string vs. integer
edit again:
YES! I manually changed my localStorage settings from
webcamRotation: "180"
to "webcamRotation:180` and now it works. -
@resam said in Duet Web Control wishlist notes and priorities:
@chrishamm I just tested your latest 1.22.2 release from an hour ago.
Still the same issue. The webcam rotation gets reset to 0° after a page reload.Where did you get the 1.22.2 release from? Could only find the 1.22.1?
-
-
@chrishamm
I see new DWC but no download/upload button on mobile devices still.
Is it that hard to get them enabled on mobile version as this is turning out to be major pain in the a..
Anyway, any plans?