DuetWIFI migration



  • I have several delta printers running Duet 0.6 and several more running 0.8.5. I decided to migrate my V1 Rostock Max currently running a 0.6 to the new DuetWIFI beta board. The migration went very smoothly, took less than 40 minutes start to finish. I'll post photos after I finish editing them.

    My Rostock is setup with FSRs and JohnSL board and WIFI for the Duet.

    Some feedback:

    The new DuetWIFI has exactly the same mounting hole locations as both he 0.6 and 0.8.5 so it fit right on my printed Duet Holder for Rostock.
    Most of the wiring was plug & play with the exception of:

    • The PanelDue original 4x2 connector needed to be re-wired to the new 1x4 connector

    • The E0 heater (hotend) changed from a 4pin Molex style connector to a screw terminal (simply clipped the wires, stripped and attached)

    • It appears that the heated bed connector polarity changed? I have a photo of the way my bed was wired before but when wired that way, my bed did not heat. I think for most users this is not an issue but I run my bed via an SSR and polarity matters. Once I realized that and changed it, bed heated fine.

    I have tested homing, heating, delta auto calibration. Next up is to get the WIFI working and then I'll be able to print. So far, the experience to migrate to the new DuetWIFI was very straightforward.


  • administrators

    Hi Michael, thanks for your report.

    The heated bed polarity changed between the Duet 0.6 and the Duet 0.8.5. The Duet WiFi uses the same polarity as the Duet 0.8.5.

    Cheers - David


  • administrators

    Micheal

    Thanks for the update, glad it went so smoothly and I am looking forward to the pictures.

    Cheers

    Tony



  • Thanks David, that makes sense! I just checked one of my 0.8.5 boards and saw that.



  • Getting connected to WIFI was MUCH EASIER than using the TP-Link WR702-N that I use on my other Duets!

    Since I'm on Mac OS X (10.11.5 El Capitan), here's what I did:

    Followed the instructions on https://duet3d.com/wiki/Getting_connected

    Note that sense I have 6 Duets on WIFI, I changed the default MAC address in the config.g file to make sure there are no conflicts.

    No need to install device drivers. Hooked up the USB and DuetWIFI appeared in Pronterface.
    Issued M552 S1 to enable WIFI.
    Next I changed my Mac from my home WIFI network to the DuetWIFI network. Then I launched Chrome and entered 192.16.1.1 and got the network configuration page. I selected my network, entered my network password and named my printer "Maxie". Then submitted the page.
    Then I issued an M552 S0 to stop and M552 S1 to restart the WIFI server. It came right up. I connected from chrome like this:

    http://Maxie.local and I was connected immediately. It took me way longer to write this than it did to actually get WIFI working. Once done, I went to Settings->Configuration File and uncommented the M552 S1 line to enable WIFI on reboot.

    One thing I noticed, I had done a little hack to the Duet Web Control code that I thought got included in the source to use a fixed width font for the Configuration File display. Since the web stuff seems to be rewritten as a bin, I can't make that change now. Is there a simple way to change this in DuetWebControl.bin or does it require recompiling?



  • Photos and steps of converting the Duet 0.6 to the DuetWIFI

    Here is the Duet 0.6 installed on my Rostock Max

    And the new DuetWIFI waiting in the wings for its turn in the spot light

    And here it is installed on the original printed Duet mount on my Rostock Max

    Next it was simply making connections using the DuetWIFI wiring diagram: https://duet3d.com/wiki/Duet_WiFi_wiring_diagrams

    The first minor change was the connector for the E0 (hot end) heater is now a screw terminal. Here was the original connector.

    Simply cut, strip and connect:

    Next was the PanelDue connector. The old style V0.6 had a 2x4 pin connector

    In my case red is VCC, blue is GRND, yellow is URXD and green is UTXD. You can see the connector at the upper right corner of the "finished" photo. From left to right in the photo red-blue-yellow-green

    You can also see how the JohnSL is wired into the E0 endstop connector (the black 1x3 connector in the center with grey-red-black wires).

    Most everything was plug and play so the conversion was easy.


  • administrators

    @mhackney:

    Getting connected to WIFI was MUCH EASIER than using the TP-Link WR702-N that I use on my other Duets!
    One thing I noticed, I had done a little hack to the Duet Web Control code that I thought got included in the source to use a fixed width font for the Configuration File display. Since the web stuff seems to be rewritten as a bin, I can't make that change now. Is there a simple way to change this in DuetWebControl.bin or does it require recompiling?

    The DuetWebControl we are using is chrishamm's version 1.11 with a small number of changes. If you can provide me with your changes, I can include them in the next version. If you want to make any changes yourself, you can find Duet Web Control for the Duet WiFi here https://github.com/dc42/DuetWebControl. The 'scripts' folder contains a Windows batch file for generating DuetWebControl.bin from source files.



  • David, it's a simple change. In defaults.css simply find #text_config and add the font-family line to it.

    #text_config {
    font-family: monospace;
    background-color: inherit;
    border: 0px;
    margin-bottom: 15px;
    min-height: 200px;
    resize: none;
    width: 100%;
    }

    I'll also make my own local .bin version for now to test and use.

    thanks,
    Michael



  • David, I'm attempting to generate the DuetWebControl.bin on a clean Windows 10 system. I run the batch file as administrator from the scripts directory and get:

    C:\Users\XYZ\Desktop\DuetWebControl-master\scripts>dwcspiffs.bat
    Root directory doesn't contain reprap.htm

    What's the correct way to execute the batch file?

    Cheers,
    Michael



  • Ok, looking at the bat file I see it needs to be run above the scripts/ directory. I can do that now and it does everything up to the "zip" stuff. This is a clean Windows 10 system so zip is probably not available. Which zip should I use? I'm really a Mac guy and really haven't had to zip stuff on Windows.


  • administrators

    Thanks, I've implemented that and it's working. Just a few tests do to before I release a new beta.



  • David, I ended up writing a shell script to create the DuetWebControl.bin file that works on OS X and Linux. I have it building and I unpacked your .bin and mine and compared and they are the same layout, files, etc. I need to upload and test it first though as the concat stuff might have a bug. However, I did find several places in your dcwspiff.bat file that I believe have incorrect file paths:

    src\js\jquery-2.2.1.min.js+src\js\jquery.textarea_autosize.min.js+src\js\jquery.flot.min.js+src\js*jquery.resize.min.js*+src\js\jquery.flot.navigate.min.js+src\js\bootstrap.min.js+src\js\bootstrap-notify.min.js+src\js\bootstrap-slider.min.js+src\js*jzip.min.js*+src\js\model.js+src\js\viewmodel.js build\js\all.js

    should be jquery.flot.resize.min.js
    should be jszip.min.js

    I think I got that right!

    Once I have tested my .bin I'll send you the shell script and special instructions for linux and OS X (nothing special, just where to get mkspiffs, etc).
    cheers,
    Michael


  • administrators

    Thanks Michael, I'll incorporate those corrections in my new release. If you send me a pull request or just a copy of your MacOS script, I'll add it to github.



  • David, this is very perplexing. I built DuetWebControl on OS X and verified that it has all the correct files packaged properly. after uploading and restarting, DWC won't stay connected. So I reverted to the .bin from your GIT but the same problem is occurring. I then reverted to the .bin that was on the CF card with the beta Duet WiFi and it's still happening. Once this happens with this message:

    Error

    Could not establish a connection to the Duet firmware! Please check your settings and try again.

    not only can I not reconnect from the same browser, I attempted to connect with Firefox and Safari and they both report server not found. I was attending a wedding all day so haven't had time to investigate further but will do so tomorrow.



  • I see that you posted a 1.11b-dc42 so I tried it and the same thing happens and I also do not see the monospace font in the Configuration File panel so that is odd. Something is going on that doesn't make sense.



  • @mhackney:

    I see that you posted a 1.11b-dc42 so I tried it and the same thing happens and I also do not see the monospace font in the Configuration File panel so that is odd. Something is going on that doesn't make sense.

    For what it's worth…

    I tried to play with the DuetWiFi a bit today and loaded up the new firmware bundle from dc42's beta release earlier today. I don't have a PanelDue and didn't want to use the USB interface, so I did it from the WiFi interface. The main firmware loaded fine and I power cycled after it came back up. Version 1.15beta3 showed up on the web interface settings screen. Then, I uploaded both the webserver and WiFi chip firmware via the web interface. Ran M997 S1 and let it do it's thing for about 90 seconds and then did M997 S2. The blue light on the WiFi antenna lit up (which I never had noticed before), but it never went out. The web interface settings page never showed the newer web server firmware update version. I then power cycled the Duet and tried M997 S1:2 and waited about 5 minutes. After that, I did another power cycle and everything seems to be as it should be. The latest versions showed up on the web interface.


  • administrators

    It takes a few minutes to update DuetWebControl. I am going to use the diagnostic LED to indicate firmware update in progress, but in the mean time the blue LED on the wifi module is a good indicator that the update is still in progress.

    Updating DuetWiFiServer sometimes happens fast enough for DuetWebControl to reconnect after the green firmware updating bar has run its course, and sometimes not.

    DuetWebControl doesn't yet understand what M997 S1 or S2 do, so it won't automatically refresh the web interface after M997 S2.



  • Well, I've had no luck recovering. Here's how I got to this point:

    installed and commissioned the stock beta Duet WiFi
    made 1 print
    updated PanelDue firmware to the latest
    made 1 print
    made my monospace font hack and rebuilt the DuetWebControl.bin
    uploaded via the web interface (via iap4e.bin that was stock to the Duet WiFi)
    web interface would not stay connected very long
    thought maybe a problem with my build of DuetWebControl.bin
    reverted to DuetWebControl.bin from David's GIT (pre v. 1.11b-dc42) via web interface
    same problem, web interface drops connection
    reverted to DuetWebControl.bin from the CF card that came with the Duet WiFi via web interface
    same problem, web interface drops connection
    reverted to DuetWebControl.bin v. 1.11b-dc42 via web interface

    And Ive rebooted the Duet WiFi several times in the process, it just won't stay connected and I'm at a loss at what to do.



  • Interesting, I just rebooted (power off and on) and when it came up and was able to connect for 30ish seconds, I looked at the Settings->General page and see:

    Firmware Name: n/a
    Firmware Version: n/a
    Web Interface Version: HTML: 1.11, JS: 1.11a-dc42

    And this should have been the 1.11b-dc42

    So something is amiss, I am going to reinstall the firmware and all other components via bossac over USB.



  • Ok, this is a bummer. When I erase/reset DuetWiFI I do not see the device show up in /dev on OS X. I've done this hundreds of times on other Duets and was able to do it on this board. I seem to be in a funky state. So without a serial port, I can't reinstall the firmware. I am going to try to do this from a Windows 10 laptop.


Locked
 

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