DueUI 1.1.0 is released!



  • DueUI 1.0.0-beta4 is available for testing.
    https://github.com/gtjoseph/DueUI/releases/tag/1.0.0-beta4
    http://dueui.org/

    Added a Heightmap Heatmap display

    • A new widget "heightmap" has been added that grabs /sys/heightmap.csv
      from the Duet and creates a simple 2D heat map and statistics.

    • dueui_config_default.json was updated with a new "HeightMap" page
      inserted between Movement and Console.

      I'm somewhat embarassed by the implementation but it does work
      and it doesn't require any new third-party libraries.

    Fixed issue where GCode responses weren't being shown

    • GCode responses for long running commands (like bed levelling)
      are now being displayed correctly.

    • The "get_reply" parameter of the "gcode" action is now ignored
      since all gcode replies are automatically displayed.

    Here's a sample of the HeightMap:

    0_1554124207445_heightmap.png



  • @gtj0 said in DueUI 1.0.0-beta4 is available for testing:

    from the Duet and creates a simple 2D heat map and statistics.

    Nice, but there is a speeling error 🙂



  • @stephen6309 said in DueUI 1.0.0-beta4 is available for testing:

    @gtj0 said in DueUI 1.0.0-beta4 is available for testing:

    from the Duet and creates a simple 2D heat map and statistics.

    Nice, but there is a speeling error 🙂

    It was an April Fool's joke. 🙂



  • So if we choose the option of having the software on the DueUI website, it will automagically be updated as changes are pushed out?!

    Thanks for your work on this, as a chronic early adopter I look forward to taking a run at it!

    Pat



  • @bearcattd said in DueUI 1.0.0-beta4 is available for testing:

    So if we choose the option of having the software on the DueUI website, it will automagically be updated as changes are pushed out?!

    Thanks for your work on this, as a chronic early adopter I look forward to taking a run at it!

    Pat

    Yep. A new version will be up tomorrow in fact.



  • DueUI 1.0.0 is released!

    https://github.com/gtjoseph/DueUI/releases/tag/1.0.0
    http://dueui.org

    Menubar Improvements

    • You can now add a "button_defaults" parameter to the "menubar"
      widget to set things like common styles.

         "menubar": {
                 "id": "dueui_menubar",
                 "type": "panel",
                 "enabled": true,
                 "button_defaults": {
                         "style": {
                                 "margin-right": "5px"
                         }
         }
      
    • You can now add a "menubar_button" parameter to "tab_panel"
      panels to set custom styles for a menubar button.

         "id": "dueui_panel_main",
         "type": "tab_panel",
         "enabled": true,
         "menu_button": {
                 "value": "Main",
                 "style": {
                         "background-color": "yellow"
                 }
         }
      

    Fix handling of "macro" action

    • The macro action was double-prepending macro names with "/macros"

    • Now the "macro" action can take EITHER a "file" or "macro"
      parameter. If "file", you must supply the full path to the
      macro file such as "/macros/mymacro". If "macro", you must
      supply a file name relative to the "/macros" directory such as
      "mymacro" which will automatically be converted to "/macros/mymacro".

    Added "message" parameter to gcode action

    • You can now add a "message" parameter to a gcode action
      to display a message in the console window when the action
      is executed.

    Fix heightmap auto-refresh

    • The heightmap widget was listening to the wrong event to
      detect when a mesh probe was completed.

    Add new "cgi" and "http" actions

    • You can now use "cgi" as an action to run one of the built-in
      Duet CGI programs like rr_delete, rr_move, etc.

    • You can now use "http" as an action to execute any HTTP GET
      you like.

    Examples:
    
      "actions": [
            {"type": "cgi", "cgi": "rr_delete",
                    "params": "name=/sys/heightmap.csv",
                    "message": "Heightmap deleted"},
            {"type": "http", "uri": "http://any.url.com?someparam=ZZZ"}
    ]
    

    Fix autocomplete results showing all entries

    Send M115 after connecting to get firmware info

    Correct the description of the 'Simulate GCode' settings button

    Fix typo in heightmap legend low character and spacing in stats


  • administrators

    @gtj0 looking really good in the screen shots. Tried to load it from the http://dueui.org/ but CORB is not allowing connection.

    VM21:1 Cross-Origin Read Blocking (CORB) blocked cross-origin response http://192.168.4.20//rr_connect?password=reprap with MIME type text/html. See https://www.chromestatus.com/feature/5629709824032768 for more details.
    

    looks to be a feature of Chromium rather than an issue with DueUI, just wondered if i was missing something obvious?



  • @t3p3tony said in DueUI 1.0.0 is released!:

    @gtj0 looking really good in the screen shots. Tried to load it from the http://dueui.org/ but CORB is not allowing connection.

    VM21:1 Cross-Origin Read Blocking (CORB) blocked cross-origin response http://192.168.4.20//rr_connect?password=reprap with MIME type text/html. See https://www.chromestatus.com/feature/5629709824032768 for more details.
    

    looks to be a feature of Chromium rather than an issue with DueUI, just wondered if i was missing something obvious?

    Hmmm. I tried Chrome, Chromium, Firefox and Vivaldi all without issue. Is it possible that the build of RRF you're running isn't sending the Access-Control-Allow-Origin: * HTTP header?


  • administrators

    @gtj0 thats indeed very possible! I am DWC 1.22.6 & 2.03beta3 on that particular printer - what are you using?



  • @t3p3tony said in DueUI 1.0.0 is released!:

    @gtj0 thats indeed very possible! I am DWC 1.22.6 & 2.03beta3 on that particular printer - what are you using?

    That's exactly what I'm using. @gtj0 scratches head.

    If you have a few minutes to troubleshoot, could you right click and "Inspect", then select the "Network" tab, then refresh. If you then click on the request. You should see something like the following...

    0_1556134688507_Screenshot_2019-04-24_13-36-07.png

    Do the response headers have the Access-Control-Allow-Origin: *?


  • administrators

    @gtj0 I don't think the request is getting as far as the Duet to get a response:
    0_1556215841505_25abc108-3bdf-480d-872c-841970f96c17-image.png

    DuetUi tries but i think my browser is saying no!

    0_1556215933630_e4395d8c-a179-48c7-a790-3f4bcf3c3c5c-image.png



  • @t3p3tony OK, I've enabled CORS on the google storage bucket so let's see what that does.
    Give it a shot when you get a chance.



  • @gtj0 said in DueUI 1.0.0 is released!:

    @t3p3tony OK, I've enabled CORS on the google storage bucket so let's see what that does.
    Give it a shot when you get a chance.

    @T3P3Tony Did you ever get a chance to test after I set up the CORS stuff on the storage bucket?



  • DueUI 1.1.0 is released!
    https://github.com/gtjoseph/DueUI/releases/tag/1.1.0
    http://dueui.org

    Update version for Android App

    • There are no functional changes to the app itself.

    Make reconnecting to the Duet more resilient

    • Decrease poll timeouts to ensure timely detection of disconnects.
    • Increase number of reconnection attempts before fatal failure.
    • Increase time between retry attempts.
    • Refresh on successful reconnect.
    • Fix connection listener event names.

    Added "Reset Fault" and "Tune" to header widget menu.

    • You can now reset a heater fault and start tuning on a heater
      using the currently set active temperature directly from the
      heater widget's drop down. Actually, you always could do this
      if you specified your own "state_commands" on a heater widget
      but they're there by default now.

    Remove references to old 'dueui-' classes

    New File List Widget

    • The original file grid widget was just plain ugly and not very
      easy to use. Although it remains for backwards compatibility,
      the new file_list widget looks and works better. See the example
      in the dueui_config_default.json file for more info.

    Add ability to remove default classes

    • If you have a widget that you need to remove a default class from
      you can now use "-classname" in any "classes" widget attribute.
      For example if you have "button" widget but you don't want it to
      look like a button and want to add some other class, you can
      say "classes": "-btn someotherclass" to remove the default
      bootstrap btn class then add your own.
      WARNING: You MAY have to update some of your widget definitions
      to keep some custom classes. For instance, if you previously set
      "classes": "btn btn-secondary" on a button widget, you may need
      to change it to "-btn-primary btn-secondary" to remove the
      default "btn-primary" class.

    Fix file/macro lists not fully populating

    • When there are lots of files in the /macros or /gcodes
      directories and the Duet can't allocate enough memory to
      return them all in one reply, it returns a "next" parameter
      to indicate that the client should make another request
      to get the remainder. We were ignoring the "next" parameter
      so the lists were short. We now check the "next" parameter
      and continue retrieving files until there are no more to
      retrieve.

    Minor UI tweaks

    • Add DueUI version info to log and settings panel.
    • Slight refactor of gcode echo to log.


  • Thanks for this. Attached is a screenshot of my first draft of a single page version for a 22 in monitor. This is the shot from a windows 10 machine that has moved the elements around a bit compared to the active version. (Both in Firefox). The "production" version is running on another PC running Arch Linux with xampp with 2 virtual servers - one for each of my 2 printers.

    I have an idea to also have a minimalist version running on the Duet using an Android Tablet as the client. As long as this doesn't overload the Duet as I also will need the DWC running in the background for other functions.

    I have included 2 baby stepping sections which I thought to be useful for me. I wrote 2 widgets added to dueui_widgets.js. The stepping widget works (wonderful for a person that knows no javascript) but the widget for displaying the babystep "position" requires your assistance (see next post). ie display "M290 " z output.

    The issues:
    ... The sense endstops widget doesn't work and this is of course critical.
    ... The Extruder temp control won't turn the heater off.
    ... I haven't yet worked out how to style the heater widget as the temperatures are very close to the up/down arrows.
    ... How do I style the console log to have a larger default height?

    So far I haven't used it other than preliminary testing until the sense endstop is fixed.

    0_1562724991175_dueui_1.png



  • A babystep widget that works.

    0_1562725385655_baystep.txt

    A babystep_position widget (a display of complete ignorance).

    0_1562725404394_baystep_position.txt

    The json code.

    0_1562725725571_baystep_json.txt



  • There is an lpc1768 processor port of duet reprap firmware over on the reprap forum.
    https://reprap.org/forum/read.php?147,810214,page=1
    For some boards they are limited to the old 0.x dwc
    Are there any special requirements for interfacing with the board and serving up web pages with this interface compared with dwc 2.0?



  • @garis I have the sense endstop working now by modifying the widget and the corresponding lines in the json file and also a separate jog widget for E. So far so good and I can now use it.



  • @4lathe said in DueUI 1.1.0 is released!:

    There is an lpc1768 processor port of duet reprap firmware over on the reprap forum.
    https://reprap.org/forum/read.php?147,810214,page=1
    For some boards they are limited to the old 0.x dwc
    Are there any special requirements for interfacing with the board and serving up web pages with this interface compared with dwc 2.0?

    There shouldn't be. We use the same basic commands.



  • @garis Nice work! Give me another day and I'll respond to your questions. Then I'll get the Baby Step widget merged in.


 

Looks like your connection to Duet3D was lost, please wait while we try to reconnect.