Duet3D Logo Duet3D
    • Tags
    • Documentation
    • Order
    • Register
    • Login

    New RepRapFirmware 3.0 early beta

    Scheduled Pinned Locked Moved
    Firmware wishlist
    14
    79
    8.5k
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • gtj0undefined
      gtj0
      last edited by

      @dc42 Homing still seems to be an issue as well as the "slightly off" home positions.

      1 Reply Last reply Reply Quote 0
      • wilrikerundefined
        wilriker @dc42
        last edited by wilriker

        @dc42 said in New RepRapFirmware 3.0 early beta:

        @gtj0 said in New RepRapFirmware 3.0 early beta:

        Also, there's a typo in src/Heating/RemoteHeater.cpp 🙂
        #include <CanMessageformats.h> should be
        #include <CanMessageFormats.h>

        Now fixed. For RRF3 use the v3-dev branch of RepRapFirmware and the dev branches of everything else (except CANlib which doesn't have a dev branch).

        The case-issue is still not fixed in latest v3-dev branch (I also sent a Pull Request a couple of days ago). EDIT: That was an issue with not correctly fetching the latest changes.

        More problematic for me is that I cannot build RRF 3 for DUET3_V05 (or DUET3_V06). It bombards me with linker errors:

        /usr/lib/gcc/arm-none-eabi/9.2.0/../../../../arm-none-eabi/bin/ld: /home/manuel/github/FreeRTOS/SAME70/libFreeRTOS.a(tasks.o): in function `prvIdleTask':
        /home/manuel/github/FreeRTOS/SAME70/../src/tasks.c:3266: warning: undefined reference to `vPortYield'
        /usr/lib/gcc/arm-none-eabi/9.2.0/../../../../arm-none-eabi/bin/ld: /home/manuel/github/FreeRTOS/SAME70/libFreeRTOS.a(tasks.o): in function `prvAddCurrentTaskToDelayedList':
        /home/manuel/github/FreeRTOS/SAME70/../src/tasks.c:4929: warning: undefined reference to `portRESET_READY_PRIORITY'
        /usr/lib/gcc/arm-none-eabi/9.2.0/../../../../arm-none-eabi/bin/ld: /home/manuel/github/FreeRTOS/SAME70/libFreeRTOS.a(tasks.o): in function `prvAddNewTaskToReadyList':
        /home/manuel/github/FreeRTOS/SAME70/../src/tasks.c:1084: warning: undefined reference to `portRECORD_READY_PRIORITY'
        /usr/lib/gcc/arm-none-eabi/9.2.0/../../../../arm-none-eabi/bin/ld: /home/manuel/github/FreeRTOS/SAME70/../src/tasks.c:1096: warning: undefined reference to `vPortYield'
        /usr/lib/gcc/arm-none-eabi/9.2.0/../../../../arm-none-eabi/bin/ld: /home/manuel/github/FreeRTOS/SAME70/libFreeRTOS.a(tasks.o): in function `vTaskDelete':
        /home/manuel/github/FreeRTOS/SAME70/../src/tasks.c:1125: warning: undefined reference to `portRESET_READY_PRIORITY'
        /usr/lib/gcc/arm-none-eabi/9.2.0/../../../../arm-none-eabi/bin/ld: /home/manuel/github/FreeRTOS/SAME70/../src/tasks.c:1190: warning: undefined reference to `vPortYield'
        /usr/lib/gcc/arm-none-eabi/9.2.0/../../../../arm-none-eabi/bin/ld: /home/manuel/github/FreeRTOS/SAME70/libFreeRTOS.a(tasks.o): in function `xTaskIncrementTick':
        /home/manuel/github/FreeRTOS/SAME70/../src/tasks.c:2676: warning: undefined reference to `portRECORD_READY_PRIORITY'
        /usr/lib/gcc/arm-none-eabi/9.2.0/../../../../arm-none-eabi/bin/ld: /home/manuel/github/FreeRTOS/SAME70/libFreeRTOS.a(tasks.o): in function `xTaskResumeAll':
        /home/manuel/github/FreeRTOS/SAME70/../src/tasks.c:2134: warning: undefined reference to `portRECORD_READY_PRIORITY'
        /usr/lib/gcc/arm-none-eabi/9.2.0/../../../../arm-none-eabi/bin/ld: /home/manuel/github/FreeRTOS/SAME70/../src/tasks.c:2196: warning: undefined reference to `vPortYield'
        /usr/lib/gcc/arm-none-eabi/9.2.0/../../../../arm-none-eabi/bin/ld: /home/manuel/github/FreeRTOS/SAME70/libFreeRTOS.a(tasks.o): in function `vTaskDelayUntil':
        /home/manuel/github/FreeRTOS/SAME70/../src/tasks.c:1275: warning: undefined reference to `vPortYield'
        /usr/lib/gcc/arm-none-eabi/9.2.0/../../../../arm-none-eabi/bin/ld: /home/manuel/github/FreeRTOS/SAME70/libFreeRTOS.a(tasks.o): in function `vTaskDelay':
        /home/manuel/github/FreeRTOS/SAME70/../src/tasks.c:1320: warning: undefined reference to `vPortYield'
        /usr/lib/gcc/arm-none-eabi/9.2.0/../../../../arm-none-eabi/bin/ld: /home/manuel/github/FreeRTOS/SAME70/../src/tasks.c:1320: warning: undefined reference to `vPortYield'
        /usr/lib/gcc/arm-none-eabi/9.2.0/../../../../arm-none-eabi/bin/ld: /home/manuel/github/FreeRTOS/SAME70/libFreeRTOS.a(tasks.o): in function `vTaskSwitchContext':
        /home/manuel/github/FreeRTOS/SAME70/../src/tasks.c:2896: warning: undefined reference to `portGET_HIGHEST_PRIORITY'
        /usr/lib/gcc/arm-none-eabi/9.2.0/../../../../arm-none-eabi/bin/ld: /home/manuel/github/FreeRTOS/SAME70/libFreeRTOS.a(tasks.o): in function `vTaskSuspend':
        /home/manuel/github/FreeRTOS/SAME70/../src/tasks.c:1646: warning: undefined reference to `portRESET_READY_PRIORITY'
        /usr/lib/gcc/arm-none-eabi/9.2.0/../../../../arm-none-eabi/bin/ld: /home/manuel/github/FreeRTOS/SAME70/../src/tasks.c:1699: warning: undefined reference to `vPortYield'
        /usr/lib/gcc/arm-none-eabi/9.2.0/../../../../arm-none-eabi/bin/ld: /home/manuel/github/FreeRTOS/SAME70/libFreeRTOS.a(tasks.o): in function `xTaskRemoveFromEventList':
        /home/manuel/github/FreeRTOS/SAME70/../src/tasks.c:3009: warning: undefined reference to `portRECORD_READY_PRIORITY'
        /usr/lib/gcc/arm-none-eabi/9.2.0/../../../../arm-none-eabi/bin/ld: /home/manuel/github/FreeRTOS/SAME70/libFreeRTOS.a(tasks.o): in function `xTaskPriorityInherit':
        /home/manuel/github/FreeRTOS/SAME70/../src/tasks.c:3834: warning: undefined reference to `portRESET_READY_PRIORITY'
        /usr/lib/gcc/arm-none-eabi/9.2.0/../../../../arm-none-eabi/bin/ld: /home/manuel/github/FreeRTOS/SAME70/../src/tasks.c:3843: warning: undefined reference to `portRECORD_READY_PRIORITY'
        /usr/lib/gcc/arm-none-eabi/9.2.0/../../../../arm-none-eabi/bin/ld: /home/manuel/github/FreeRTOS/SAME70/libFreeRTOS.a(tasks.o): in function `xTaskPriorityDisinherit':
        /home/manuel/github/FreeRTOS/SAME70/../src/tasks.c:3933: warning: undefined reference to `portRECORD_READY_PRIORITY'
        /usr/lib/gcc/arm-none-eabi/9.2.0/../../../../arm-none-eabi/bin/ld: /home/manuel/github/FreeRTOS/SAME70/../src/tasks.c:3917: warning: undefined reference to `portRESET_READY_PRIORITY'
        /usr/lib/gcc/arm-none-eabi/9.2.0/../../../../arm-none-eabi/bin/ld: /home/manuel/github/FreeRTOS/SAME70/libFreeRTOS.a(tasks.o): in function `vTaskPriorityDisinheritAfterTimeout':
        /home/manuel/github/FreeRTOS/SAME70/../src/tasks.c:4042: warning: undefined reference to `portRECORD_READY_PRIORITY'
        /usr/lib/gcc/arm-none-eabi/9.2.0/../../../../arm-none-eabi/bin/ld: /home/manuel/github/FreeRTOS/SAME70/../src/tasks.c:4035: warning: undefined reference to `portRESET_READY_PRIORITY'
        /usr/lib/gcc/arm-none-eabi/9.2.0/../../../../arm-none-eabi/bin/ld: /home/manuel/github/FreeRTOS/SAME70/libFreeRTOS.a(tasks.o): in function `ulTaskNotifyTake':
        /home/manuel/github/FreeRTOS/SAME70/../src/tasks.c:4433: warning: undefined reference to `vPortYield'
        /usr/lib/gcc/arm-none-eabi/9.2.0/../../../../arm-none-eabi/bin/ld: /home/manuel/github/FreeRTOS/SAME70/libFreeRTOS.a(tasks.o): in function `xTaskGenericNotify':
        /home/manuel/github/FreeRTOS/SAME70/../src/tasks.c:4619: warning: undefined reference to `portRECORD_READY_PRIORITY'
        /usr/lib/gcc/arm-none-eabi/9.2.0/../../../../arm-none-eabi/bin/ld: /home/manuel/github/FreeRTOS/SAME70/../src/tasks.c:4644: warning: undefined reference to `vPortYield'
        /usr/lib/gcc/arm-none-eabi/9.2.0/../../../../arm-none-eabi/bin/ld: /home/manuel/github/FreeRTOS/SAME70/libFreeRTOS.a(tasks.o): in function `vTaskNotifyGiveFromISR':
        /home/manuel/github/FreeRTOS/SAME70/../src/tasks.c:4818: warning: undefined reference to `ulSetInterruptMaskFromISR'
        /usr/lib/gcc/arm-none-eabi/9.2.0/../../../../arm-none-eabi/bin/ld: /home/manuel/github/FreeRTOS/SAME70/../src/tasks.c:4839: warning: undefined reference to `portRECORD_READY_PRIORITY'
        /usr/lib/gcc/arm-none-eabi/9.2.0/../../../../arm-none-eabi/bin/ld: /home/manuel/github/FreeRTOS/SAME70/../src/tasks.c:4870: warning: undefined reference to `vClearInterruptMaskFromISR'
        /usr/lib/gcc/arm-none-eabi/9.2.0/../../../../arm-none-eabi/bin/ld: /home/manuel/github/FreeRTOS/SAME70/../src/tasks.c:4870: warning: undefined reference to `vClearInterruptMaskFromISR'
        /usr/lib/gcc/arm-none-eabi/9.2.0/../../../../arm-none-eabi/bin/ld: /home/manuel/github/FreeRTOS/SAME70/libFreeRTOS.a(queue.o): in function `xQueueGenericReset':
        /home/manuel/github/FreeRTOS/SAME70/../src/queue.c:274: warning: undefined reference to `vPortYield'
        /usr/lib/gcc/arm-none-eabi/9.2.0/../../../../arm-none-eabi/bin/ld: /home/manuel/github/FreeRTOS/SAME70/libFreeRTOS.a(queue.o): in function `xQueueGenericSend':
        /home/manuel/github/FreeRTOS/SAME70/../src/queue.c:901: warning: undefined reference to `vPortYield'
        /usr/lib/gcc/arm-none-eabi/9.2.0/../../../../arm-none-eabi/bin/ld: /home/manuel/github/FreeRTOS/SAME70/../src/queue.c:767: warning: undefined reference to `vPortYield'
        /usr/lib/gcc/arm-none-eabi/9.2.0/../../../../arm-none-eabi/bin/ld: /home/manuel/github/FreeRTOS/SAME70/libFreeRTOS.a(queue.o): in function `xQueueSemaphoreTake':
        /home/manuel/github/FreeRTOS/SAME70/../src/queue.c:1538: warning: undefined reference to `vPortYield'
        /usr/lib/gcc/arm-none-eabi/9.2.0/../../../../arm-none-eabi/bin/ld: /home/manuel/github/FreeRTOS/SAME70/../src/queue.c:1450: warning: undefined reference to `vPortYield'
        

        Manuel
        Duet 3 6HC (v0.6) with RPi 4B on a custom Cartesian
        with probably always latest firmware/DWC (incl. betas or self-compiled)
        My Tool Collection

        gtj0undefined 1 Reply Last reply Reply Quote 0
        • gtj0undefined
          gtj0 @wilriker
          last edited by

          @wilriker said in New RepRapFirmware 3.0 early beta:

          @dc42 said in New RepRapFirmware 3.0 early beta:

          @gtj0 said in New RepRapFirmware 3.0 early beta:

          Also, there's a typo in src/Heating/RemoteHeater.cpp 🙂
          #include <CanMessageformats.h> should be
          #include <CanMessageFormats.h>

          Now fixed. For RRF3 use the v3-dev branch of RepRapFirmware and the dev branches of everything else (except CANlib which doesn't have a dev branch).

          The case-issue is still not fixed in latest v3-dev branch (I also sent a Pull Request a couple of days ago). EDIT: That was an issue with not correctly fetching the latest changes.

          More problematic for me is that I cannot build RRF 3 for DUET3_V05 (or DUET3_V06). It bombards me with linker errors:

          Yeah same here .

          1 Reply Last reply Reply Quote 0
          • martinkundefined
            martink
            last edited by

            The SAME70 configuration include paths for FreeRTOS include src/portable/GCC/ARM_CM0. Changing that to src/portable/GCC/ARM_CM7/r0p1 helps. I haven't tried using the resulting firmware binary.

            wilrikerundefined dc42undefined 2 Replies Last reply Reply Quote 1
            • wilrikerundefined
              wilriker @martink
              last edited by wilriker

              @martink Thanks for spotting that! This fixes linker errors. And it flashs fine so far.

              Manuel
              Duet 3 6HC (v0.6) with RPi 4B on a custom Cartesian
              with probably always latest firmware/DWC (incl. betas or self-compiled)
              My Tool Collection

              1 Reply Last reply Reply Quote 0
              • dc42undefined
                dc42 administrators @martink
                last edited by

                @martink said in New RepRapFirmware 3.0 early beta:

                The SAME70 configuration include paths for FreeRTOS include src/portable/GCC/ARM_CM0. Changing that to src/portable/GCC/ARM_CM7/r0p1 helps. I haven't tried using the resulting firmware binary.

                Thanks, fixed in latest commit.

                Duet WiFi hardware designer and firmware engineer
                Please do not ask me for Duet support via PM or email, use the forum
                http://www.escher3d.com, https://miscsolutions.wordpress.com

                gtj0undefined 1 Reply Last reply Reply Quote 0
                • gtj0undefined
                  gtj0 @dc42
                  last edited by

                  @dc42 said in New RepRapFirmware 3.0 early beta:

                  @martink said in New RepRapFirmware 3.0 early beta:

                  The SAME70 configuration include paths for FreeRTOS include src/portable/GCC/ARM_CM0. Changing that to src/portable/GCC/ARM_CM7/r0p1 helps. I haven't tried using the resulting firmware binary.

                  Thanks, fixed in latest commit.

                  @dc42 Any idea on the homing issues?

                  dc42undefined 1 Reply Last reply Reply Quote 0
                  • dc42undefined
                    dc42 administrators @gtj0
                    last edited by dc42

                    @gtj0 said in New RepRapFirmware 3.0 early beta:

                    @dc42 said in New RepRapFirmware 3.0 early beta:

                    @martink said in New RepRapFirmware 3.0 early beta:

                    The SAME70 configuration include paths for FreeRTOS include src/portable/GCC/ARM_CM0. Changing that to src/portable/GCC/ARM_CM7/r0p1 helps. I haven't tried using the resulting firmware binary.

                    Thanks, fixed in latest commit.

                    @dc42 Any idea on the homing issues?

                    I'm sorry, this thread has got so long that it's difficult to track the different issues raised in it. Please start a new thread for that issue.

                    Duet WiFi hardware designer and firmware engineer
                    Please do not ask me for Duet support via PM or email, use the forum
                    http://www.escher3d.com, https://miscsolutions.wordpress.com

                    1 Reply Last reply Reply Quote 0
                    • smoki3undefined
                      smoki3 @dc42
                      last edited by

                      @dc42 said in New RepRapFirmware 3.0 early beta:

                      @smoki3 said in New RepRapFirmware 3.0 early beta:

                      @dc42
                      It was definitely not like this on 2.02 and the older 3.0.

                      And its a really wired behaviour. Because I use:

                      ; tfree0.g
                      ; called when tool 0 is freed
                      ;
                      ; generated by RepRapFirmware Configuration Tool on Wed Sep 19 2018 21:12:53 GMT+0200 (Mitteleuropäische Sommerzeit)
                      G91
                      G1 Z10 F7200
                      G90
                      G53 G1 X0 F25000 ;XPOS
                      G53 G1 Y190
                      G53 G1 Y195 F5000
                      M400
                      M98 P"/macros/Toolhead/1. Toolhead unlock"
                      G4 P320
                      G53 G1 Y207 F5000
                      M400
                      G53 G1 Y165 F25000
                      M400
                      
                      ; tpre1.g
                      ; called before tool 0 is selected
                      ;
                      ; generated by RepRapFirmware Configuration Tool on Wed Sep 19 2018 21:12:53 GMT+0200 (Mitteleuropäische Sommerzeit)
                      G1 X76 F25000
                      M400
                      G1 Y192
                      M400
                      M98 P"/macros/Toolhead/1. Toolhead unlock"
                      G4 P400
                      G1 Y207 F5000
                      M116 P3
                      M400
                      M98 P"/macros/Toolhead/2. Toolhead lock"
                      G4 P260
                      G1 Y150 F15000
                      

                      The I only expect that only a X movement is done while the start of the tpre1.g but it first moves in X and Y.

                      @smoki3, I am looking into this but I need your config.g file, also the toolhead unlock files that you call from the tool change files.

                      I uploaded my config files and my tool changer macros:

                      Config:
                      https://drive.google.com/file/d/1xQ5j9E2WvJNFzIum62W02iligk8rOv4T/view?usp=sharing

                      Macros:
                      https://drive.google.com/file/d/1QcHqPQBpafr3AlDOjGM3XtQ7nB4VcalO/view?usp=sharing

                      1 Reply Last reply Reply Quote 0
                      • smoki3undefined
                        smoki3
                        last edited by smoki3

                        @dc42 have you downloaded the files?

                        1 Reply Last reply Reply Quote 0
                        • dc42undefined
                          dc42 administrators
                          last edited by

                          Sorry, I've no time to look into it this week - I'm working on a very tight deadline for Duet 3. I expect to have time next Tuesday/Wednesday.

                          Duet WiFi hardware designer and firmware engineer
                          Please do not ask me for Duet support via PM or email, use the forum
                          http://www.escher3d.com, https://miscsolutions.wordpress.com

                          1 Reply Last reply Reply Quote 0
                          • Marco Bonaundefined
                            Marco Bona
                            last edited by

                            Is it possible to have an example of the parameter m308 connected to the pt100 sensor board?

                            1 Reply Last reply Reply Quote 0
                            • dc42undefined
                              dc42 administrators
                              last edited by

                              M308 S1 Y"rtdmax31865" P"spi.cs1"

                              Duet WiFi hardware designer and firmware engineer
                              Please do not ask me for Duet support via PM or email, use the forum
                              http://www.escher3d.com, https://miscsolutions.wordpress.com

                              1 Reply Last reply Reply Quote 0
                              • Marco Bonaundefined
                                Marco Bona
                                last edited by

                                Perfect, work with Y"rtd-max31865".
                                Thanks

                                1 Reply Last reply Reply Quote 0
                                • blt3dpundefined
                                  blt3dp
                                  last edited by

                                  I had a question about RRF3 on a Duet 3 Pre-Release 0.6 board. Is there an inbuilt fan behavior like the Duet 2. For example, Fan1 was "kind of specified" as the heatsink fan and was configured to power on the fan when the Duet was powered up just in case the temperature was above the set theromstatic threshold. Then when config.g kicked in it would actually begin checking if it were at the threshold or not and decide what to do with the fan.

                                  My 3D Printing YouTube Channel
                                  Better Living Through 3D Printing

                                  Follow me on Instagram and Twitter
                                  Instagram
                                  Twitter

                                  1 Reply Last reply Reply Quote 0
                                  • dc42undefined
                                    dc42 administrators
                                    last edited by dc42

                                    No. https://duet3d.dozuki.com/Wiki/RepRapFirmware_3_overview#Section_Default_pin_assignments

                                    Duet WiFi hardware designer and firmware engineer
                                    Please do not ask me for Duet support via PM or email, use the forum
                                    http://www.escher3d.com, https://miscsolutions.wordpress.com

                                    1 Reply Last reply Reply Quote 0
                                    • blt3dpundefined
                                      blt3dp
                                      last edited by

                                      Gotcha, so it could be plugged in anywhere on out4-out9, be defined as fan1 using M950. M106 can be used somewhere after that M950 to set that fan to thermostatic? The feature to turn that fan on full at power on I'm guessing isn't possible or needed because the fan won't be defined until config.g is loaded as well as config loads so quick that it doesn't matter if that fan is on at power up cause it's only a fraction of a second that it might not be.

                                      My 3D Printing YouTube Channel
                                      Better Living Through 3D Printing

                                      Follow me on Instagram and Twitter
                                      Instagram
                                      Twitter

                                      deckingmanundefined 1 Reply Last reply Reply Quote 0
                                      • deckingmanundefined
                                        deckingman @blt3dp
                                        last edited by

                                        @blt3dp Sort of. But because nothing is defined by default, then before you can use a fan in thermostatic mode, you first have to define a sensor, then a heater that you can associate the fan with.

                                        So starting with the sensor and assuming that you have already defined S0 to be the bed sensor, and if you want to replicate the behaviour of Duet 2, you would probably elect to use S2 as the hot end sensor. So you would have something like:

                                        M308 S1 A"Hot End Temp" P0.temp1" Y"thermistor" Tnnn Bnnn C etc....

                                        Then you define the heater so something like:

                                        M950 H1 C"0.out1" T1 .

                                        You might find that a little confusing because in M308 the sensor is referred to by the "S" parameter but in M950 the sensor is referred to be the "T" parameter.

                                        Then for you fan you'd have something like

                                        M950 F1 C"0.out6"
                                        followed by something like:

                                        M106 P1 S255 H1 T60 C "Hot End Fan". (where T is the value that you want the fan to turn on at). Here "P" is the fan number ad "H" is the heater number.

                                        Substitute your own pin numbers in the above.

                                        Ian
                                        https://somei3deas.wordpress.com/
                                        https://www.youtube.com/@deckingman

                                        1 Reply Last reply Reply Quote 0
                                        • blt3dpundefined
                                          blt3dp
                                          last edited by

                                          Thanks for clarifying, I was going off the assumption that I had already defined sensors and heaters.

                                          My 3D Printing YouTube Channel
                                          Better Living Through 3D Printing

                                          Follow me on Instagram and Twitter
                                          Instagram
                                          Twitter

                                          1 Reply Last reply Reply Quote 0
                                          • First post
                                            Last post
                                          Unless otherwise noted, all forum content is licensed under CC-BY-SA