Time for a complete re-write or start over with v2 of DWC
-
Everyone views the world through a different lens.
I happen to think the current DWC works just fine. I have no complaints whatsoever.
My computer is a middle of the road setup and it has no problems with the computational load.
And trying to use the DWC on anything less than an actual desktop computer is just asking for disappointment.
Frederick
-
I use a Hewlett-Packard HP Compaq Elite 8300 SFF, I5-3570, 8Gb memory, 512Gb SSD
I guess it is about 10 years old
Running Ubuntu 22.04 LTS, used to run Windows10 on it but ran like a dog.
On board graphics, shared memory, using both VGA and HDMI ports on the PC.Currently running 3 Firefox browsers, one browser window streaming video, Superslicer, VLCMedia player watching a live CCTV stream. Also VPN'd into a remote site running SQL queries.
Both of my printers run Duet3 Mini5's, hardwired, v3.4.1, no SBC, I found that I gained no benefit running a SBC on my Railcore.
Both printers sit in their own vlan, while my Linux and Windows PCs sit in an another Vlan. All vlans residing on a layer3 GigaBit switch.Using the the highly accurate timing method of "one elephant, 2 elephant" I can just about to get to "2 elephant" and the page has loaded, with a full refresh.
I used to get Disconnects until DC42 found and fixed the issue, back in an earlier release of v3.
I welcome the new DWC with its new functions and features. I have experienced some issues with DWC, that were fixed promptly in previous versions, namely when the Mini5 was freshly released.
Loading the webpage on my Galaxy s21 Ultra 5g using firefox browser, takes more one more elephant, not that I use DWC on my phone on a regular basis.
With Klipper firmware, I had lots more problems, especially after an update, you then have to change so many params just to get the front end or Klipper working again.
I can firmly say that DWC and RRF is my preferred work solution and if there has been a problem, it is normally fixed promptly.
Al in all, no problems here.
Paul
-
Thank you for that post. It made me aware that I left out something from my post that might be relevant.
I normally have all 5 of my printers connected to my computer, at the same time, each in their own tab in Chrome.
It all is very responsive.
I do have to wait, sometimes for hours, when something is printing. But I don't think that has anything to do with DWC.
Frederick
-
I know the OP is running a highly capable board and processor compared to my clunky old PC, but I have experienced high spec PCs running basic things like browsers, tripping themselves up, due how the app accesses memory and resources.
But when something like AutoCAD is used it brings speed to a new level as it can handle the extra memory and processors, as it knows how to address the extra capabilities. -
@PaulHew most browsers based on Chromium these days do their own memory management. Ironically, I've found Edge to blow Chrome out of the water, both in terms of responsiveness, v8 performance, and memory usage (with medium complexity wasm apps, Edge seems to use about half the memory of Chrome).
-
DWC is open source, so anyone is free to add, modify or replace it as they see fit.
Perhaps start with some interface changes and submit a pull request. -
I don't agree with the OP, but there could be some improvement in the interface for CNC users. Some of the acreage is used to provided irrelevant printer-related information for us, but this is editable with the work @MintyTrebor has done. I just haven't had the time to try ity out, yet!
As I understand it, there are moves afoot to develop the interface, though.
-
This post is deleted! -
@arnold_r_clark what alternatives would you recommend for web based control of Duet boards?
-
This post is deleted! -
@arnold_r_clark your comment is absolutely correct, and not helpful at all, and besides the point. I think that especially for people that choose to use RRF and DWC, discussions about performance regressions are super interesting.
-
This post is deleted! -
To be contentious, I tend to agree with the OP but not for the same reasons. IMO, the performance is OK but the layout and functionality leave a lot to be desired. I have submitted numerous requests on the forums, but nobody who can fix it takes much notice
e.g. https://forum.duet3d.com/topic/24841/anoying-behaviour-with-the-status-page-of-dwc,
and https://forum.duet3d.com/topic/27067/request-to-reduce-the-amount-of-padding?_=1656321685718
The latter was upvoted by two moderators and when I bumped it 3 months later, it was further upvoted by one user and seconded by another. But nothing has changed.
I guess the reason why these things never get fixed is that the majority of users only have a single tool and 3 axes, so they don't have any issue with the interface. Most of the replies to the OP are in the form "it works fine for me so it isn't a problem". But to those people I would say, try it with 6 or more tools and 7 axes then tell me it is just fine. It isn't - even on a large monitor - but with smart phone or similar? - well forget it. And while I'm in rant mode, I've said before that the estimates to completion are as much use as an ashtray on a motor bike and seem to have gotten worse over the years.
I use something called Home Assistant for my smart home devices which is another open source project. It has the ability for users to create their own "tabbed" views based on whatever information they want to see and where on the screen they want to see it, both on large screens and small mobile devices, all without writing any code. Just drag, drop, copy, paste, select from drop down list etc etc. I also use video editing software which enables me to hide/unhide, move, dock, and resize windows depending on what information is relevant to the task in hand. DWC on the other hand gives users almost no control over what information they want to see and uses fixed windows with acres of padding meaning that a scroll wheel mouse is an absolute essential (IMO).
-
This post is deleted! -
@deckingman I don't know if a complete rewrite is required, but I think it's worth discussing the issue at hand.
I see almost entirely identical performance numbers on my laptop which is by all means compared to the machine the original posts values were sampled a potato, so I don't think this can be blamed on a client machine.
Drilling further into the numbers, I see that the main causes for the slow load are three files: app.js (565k,3.84sec), materdialdesignicons-webfont (354k, 3.32sec, and HeightMap.js (486k, 4.3sec (I've skipped the unique identifiers for them). webfont and heightmap.js mostly overlap due to the magic of multiple HTTP connections at the same time, so deferring the load of HeightMap.js until someone clicks on the HeightMap menu item would only shave off a second (still about 10% performance increase).
Considering DOMContentLoaded is at roughly 40% of total load time, I think it should be possible to get load time down to maybe 5 seconds by carefully inspecting why those files are so big.
PS: Here is an article how to reduce the material designs icons font and javascript to only those selectors actually in use:
https://www.shedloadofcode.com/blog/reduce-material-design-icons-font-to-7kb-and-automate-with-pyautogui -- getting that under 10k certainly would be interesting.
-
@oliof I don't really understand much of that and as I said, speed for me isn't really much of an issue. But I was replying to the OP's title, rather than the OPs specific issues.
But just out of interest, I have shortcuts on my desktop to urls for both my printer and home assistant. My printer is hardwired with (Gigabit) Ethernet (running stand alone - no SBC), as is my PC and my Odroid running home assistant. With my browser open, if I click the shortcut for home assistant, the page appears fully loaded in less than a second. That's displaying data from over 40 devices, each with multiple "entities" as well as long term statistics graphs. If I click the shortcut for my printer (which is powered up) it takes around 6 seconds for DWC to connect and load. I don't know enough to say it's a DWC issue or a Duet board issue.
I'm just putting that out there - it's neither here nor there to me personally if DWC takes 6 seconds to load or 1 second but I kind of "get" what the OP is saying. The only speed issue I have is with the ancient laptop that is connected to my network via WiFi and which takes a long time to upload large gcode files. The fix is easy - I just use my (wired) desktop PC instead.
-
@deckingman surely one contributing factor is that home assistant runs on a computer (Odroid), and the DWC UI comes from an ESP chip which has it's own IO and resource limits. I don't have an SBC setup because I don't see the point, but it may be worth looking if that loads faster or not, because that would prove a hypothesis that the ESP chip is the bottleneck. Other similarily sized files of DWC load much faster by the way, so it's something specific to the JavaScript/font files and not just an issue with their size.
-
@oliof with a H7 board running an ESP32 at the faster transfer speed (effectively 2.4mb/s), DWC for me loads in about 3 seconds
-
@oliof It sounds like @deckingman may have an ethernet board rather than one using WiFi. My experience (with a Duet2 Ethernet based board), is that wired connections to Duet boards are significantly slower than WiFi based ones....
But for most people I'd guess that speed is not really a big deal. I'd say some of the UI issues are more important.
-
@gloomyandy his ethernet board is still about 60% faster than my STM RRF board on wifi. I agree the UI aspects are worth discussing, but this thread was about speed originally, so I am trying to stick to that topic.