Duet3 0.6 firmware upgrade from RRF 3.0alpha

  • I am working on getting a printer up and running with my Duet3 0.6 board, and am looking to update the firmware

    My board:

    FIRMWARE_NAME: RepRapFirmware for Duet 3 v0.6 
    FIRMWARE_VERSION: 3.0alpha
    ELECTRONICS: Duet 3 version v0.6 FIRMWARE_DATE: 2019-09-05b2

    I run the board in SBC mode with a Raspberry Pi 4, using the SD card that was provided with the board. The installatio

    The releases say Users of Duet 3 with attached Raspberry Pi should update from the Pi using sudo apt-get update followed by sudo apt-get upgrade, but that does not seem to work.

    Do I need to take special provisions coming from RRF 3.0alpha?

  • administrators

    I don't think you need to do anything special coming from 3.0alpha.

  • i assume with "...apt upgrade" we will get a set a set of stable releases for DSF,RRF,DWC "only".
    i don't know if the standard image of the RPI will upgrade to the DSF beta releases too.
    i don't think so.


    you have 3 types of software packages:

    1. DSF (Duet Software Framework on your Pi)
    2. RRF/DUET Firmware
    3. DWC (Duet WebControl)

    DSF will be upgraded only and always with "apt upgrade"
    RRF-Firmware and DWC should be installed over the web interface as usual because they will not be distributed with the "unstable" releases right now.

    PS: to get unstable releases of the DSF software you have to add these repositories

    wget -q https://pkg.duet3d.com/duet3d-unstable.list
    sudo mv duet3d-unstable.list /etc/apt/sources.list.d/duet3d-unstable.list
    sudo chown root:root /etc/apt/sources.list.d/duet3d-unstable.list

  • Trying to upload Duet3Firmware_MB6HC.bin from the 3.0 release

    I get the following trying to apply the update via DWC

    2/4/2020, 10:09:45 AM	Upload of Duet3Firmware_MB6HC.bin successful after 1s
    2/4/2020, 10:09:48 AM	Connection interrupted, attempting to reconnect...
    2/4/2020, 10:09:50 AM	M997 S0
    Error: Code has been cancelled
    2/4/2020, 10:09:51 AM	Connection established
    2/4/2020, 10:09:51 AM	Warning: Lost connection to Duet (Timeout while waiting for transfer ready pin)
    2/4/2020, 10:09:56 AM	Connection to Duet established
    2/4/2020, 10:09:56 AM	Warning: heater 0 appears to be over-powered. If left on at full power, its temperature is predicted to reach 365C.

    (note M997 S0 Error: Code has been cancelled)

    Then the board resets and is still on 3.0 alpha.

    M122 output:

    === Diagnostics ===
    RepRapFirmware for Duet 3 v0.6 version 3.0alpha running on Duet 3 version v0.6
    Board ID: 08DGM-9T66A-G63SJ-6J1D6-3SD6R-9U0BA
    Used output buffers: 1 of 32 (6 max)
    === RTOS ===
    Static ram: 67772
    Dynamic ram: 156056 of which 0 recycled
    Exception stack ram used: 224
    Never used ram: 169164
    Tasks: NETWORK(ready,2044) HEAT(blocked,1236) CanReceiv(suspended,3804) CanSender(suspended,1496) CanClock(blocked,1464) TMC(blocked,592) MAIN(running,4216) IDLE(ready,156)
    Owned mutexes:
    === Platform ===
    Last reset 00:00:09 ago, cause: watchdog
    Last software reset at 2020-02-01 20:24, reason: Unknown, spinning module Platform, available RAM 168948 bytes (slot 1)
    Software reset code 0x0010 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0444a000 BFAR 0x00000000 SP 0xffffffff Task 0x4e49414d
    Error status: 0
    Free file entries: 10
    SD card 0 detected, interface speed: 0.2MBytes/sec
    SD card longest block write time: 0.0ms, max retries 0
    MCU temperature: min 28.8, current 29.5, max 29.6
    Supply voltage: min 24.0, current 24.2, max 24.2, under voltage events: 0, over voltage events: 0, power good: yes
    12V rail voltage: min 12.1, current 12.2, max 12.3, under voltage events: 0
    Driver 0: standstill, reads 19526, writes 14 timeouts 0, SG min/max 0/0
    Driver 1: standstill, reads 19527, writes 14 timeouts 0, SG min/max 0/0
    Driver 2: standstill, reads 19528, writes 14 timeouts 0, SG min/max 0/0
    Driver 3: standstill, reads 19529, writes 14 timeouts 0, SG min/max 0/0
    Driver 4: standstill, reads 19529, writes 14 timeouts 0, SG min/max 0/0
    Driver 5: standstill, reads 19531, writes 14 timeouts 0, SG min/max 0/0
    Date/time: 2020-02-04 10:10:00
    Slowest loop: 7.28ms; fastest: 0.31ms
    === Move ===
    Hiccups: 0, FreeDm: 375, MinFreeDm: 375, MaxWait: 0ms
    Bed compensation in use: none, comp offset 0.000
    === MainDDARing ===
    Scheduled moves: 0, completed moves: 0, StepErrors: 0, LaErrors: 0, Underruns: 0, 0
    === AuxDDARing ===
    Scheduled moves: 0, completed moves: 0, StepErrors: 0, LaErrors: 0, Underruns: 0, 0
    === Heat ===
    Bed heaters = 0 -1 -1 -1, chamberHeaters = -1 -1
    === GCodes ===
    Segments left: 0
    Stack records: 1 allocated, 0 in use
    Movement lock held by null
    http* is ready with "M122" in state(s) 0
    telnet is idle in state(s) 0
    file is idle in state(s) 0
    serial is idle in state(s) 0
    aux is idle in state(s) 0
    daemon* is idle in state(s) 0
    queue is idle in state(s) 0
    lcd is idle in state(s) 0
    spi is idle in state(s) 0
    autopause is idle in state(s) 0
    Code queue is empty.
    === Network ===
    Slowest loop: 0.54ms; fastest: 0.01ms
    Responder states: HTTP(0) HTTP(0) HTTP(0) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0) Telnet(0)
    HTTP sessions: 0 of 8
    - Ethernet -
    State: 0
    Socket states: 0 0 0 0 0 0 0 0
    === Linux interface ===
    State: 0, failed transfers: 1
    Last transfer: 86ms ago
    RX/TX seq numbers: 6589/126
    SPI underruns 4, overruns 4
    Number of disconnects: 0
    Buffer RX/TX: 0/0-0
    === Duet Control Server ===
    Duet Control Server v1.2.4.0
    Code buffer space: 2048
    Configured SPI speed: 2000000 Hz
    Full transfers per second: 28.59

  • Follow the information here https://duet3d.dozuki.com/Wiki/Getting_Started_With_Duet_3#Section_Updating_Duet_3_main_board_firmware
    to update the duet 3 using USB and Bossa

  • @jay_s_uk and here I thought the raspberry pi and SPI connection would save me from BOSSA which always gives me trouble ...

    Also, interesting. On the pi:

    root@vcore-pro:~# dpkg -l reprapfirmware
    Gewünscht=Unbekannt/Installieren/R=Entfernen/P=Vollständig Löschen/Halten
    | Status=Nicht/Installiert/Config/U=Entpackt/halb konFiguriert/
             Halb installiert/Trigger erWartet/Trigger anhängig
    |/ Fehler?=(kein)/R=Neuinstallation notwendig (Status, Fehler: GROSS=schlecht)
    ||/ Name           Version      Architektur  Beschreibung
    ii  reprapfirmware    all          RepRapFirmware Software Bundle
    root@vcore-pro:~# dpkg -L reprapfirmware
    root@vcore-pro:~# strings /opt/dsf/sd/sys/Duet3Firmware_MB6HC.bin | grep version=
    root@vcore-pro:~# shasum /opt/dsf/sd/sys/Duet3Firmware_MB6HC.bin
    a2f94fe8a273f858ae88be9ddba6148bcadd47ca  /opt/dsf/sd/sys/Duet3Firmware_MB6HC.bin
    root@vcore-pro:~# curl -sL -O https://github.com/dc42/RepRapFirmware/releases/download/3.0/Duet3Firmware_MB6HC.bin
    root@vcore-pro:~# shasum Duet3Firmware_MB6HC.bin 
    a2f94fe8a273f858ae88be9ddba6148bcadd47ca  Duet3Firmware_MB6HC.bin

    So it looks like the 3.0 release is already on the SBC, but is not applied to the board.

  • This post is deleted!

  • @oliof There were a few people that had issues updating from either a late alpha or early beta and the only way to get it to update was using Bossa.
    Once you get to the latest version, you should have no issues going forwards

  • OK. I tried to force a reinstallation of the reprapfirmware package and get an Invalid response from IAP:

    root@vcore-pro:~# sudo apt-get install --reinstall reprapfirmware
    Reading package lists... Done
    Building dependency tree       
    Reading state information... Done
    0 upgraded, 0 newly installed, 1 reinstalled, 0 to remove and 0 not upgraded.
    Need to get 0 B/494 kB of archives.
    After this operation, 0 B of additional disk space will be used.
    (Reading database ... 77892 files and directories currently installed.)
    Preparing to unpack .../reprapfirmware_1.2.4.0-1_all.deb ...
    Unpacking reprapfirmware ( over ( ...
    Setting up reprapfirmware ( ...
    Sending update request to DCS... Error: Failed to send update request
    Unhandled exception. DuetAPIClient.Exceptions.InternalServerException: OperationCanceledException in Code: Invalid response from IAP
       at DuetAPIClient.BaseConnection.PerformCommand[T](BaseCommand command, CancellationToken cancellationToken) in /home/christian/duet/DuetSoftwareFramework/src/DuetAPIClient/BaseConnection.cs:line 189
       at DuetControlServer.Program.CheckForAnotherInstance() in /home/christian/duet/DuetSoftwareFramework/src/DuetControlServer/Program.cs:line 216
       at DuetControlServer.Program.Main(String[] args) in /home/christian/duet/DuetSoftwareFramework/src/DuetControlServer/Program.cs:line 63
       at DuetControlServer.Program.<Main>(String[] args)

    I will try to update via BOSSA /-:

  • path /home/christian/duet ? what's that ?

    i am not using the SD card which was in the package of the board. I took the DuetPi image from here https://pkg.duet3d.com/DuetPi.zip.

    the path should be /opt/dsf

  • /home/christian/duet is whatever is compiled into the binary. The SDCard has DuetPi.

  • BOSSA worked fine despite my anxiety about it:

    FIRMWARE_NAME: RepRapFirmware for Duet 3 MB6HC v0.6 or 1.0 
    FIRMWARE_DATE: 2020-01-29b1

    Thanks everyone for their support!

Log in to reply