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

crc32appender now needed for RRF?

Scheduled Pinned Locked Moved
Firmware developers
7
29
1.7k
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.
  • undefined
    gtj0
    last edited by 9 Oct 2019, 15:35

    @smoki3 I also put it in /usr/local/bin and it worked from Eclipse. Did you restart Eclipse? You shouldn't have to but it may help.

    You can also try running "make" manually...
    From the output directory (Duet2_RTOS, Duet3_V06, etc), run make clean and make and see if that works.

    undefined 1 Reply Last reply 9 Oct 2019, 16:51 Reply Quote 0
    • undefined
      gtj0
      last edited by 9 Oct 2019, 16:11

      @wilriker These look like they could be good variables to use:

      HostOsName
      OsType
      target.os

      1 Reply Last reply Reply Quote 0
      • undefined
        smoki3 @gtj0
        last edited by smoki3 10 Sept 2019, 16:57 9 Oct 2019, 16:51

        @gtj0

        Its funny, in the terminal it is working with make... In eclipse not

        I figured out that eclipse only uses:

        /usr/bin:/bin:/usr/sbin:/sbin
        

        But on the mac we dont have permissions to add files to these folders

        Any why to add another path to $PATH?

        undefined 1 Reply Last reply 9 Oct 2019, 21:23 Reply Quote 0
        • undefined
          dc42 administrators @smoki3
          last edited by 9 Oct 2019, 21:23

          The Windows version of Eclipse lets you set up the search path within Eclipse. Does the Mac version offer the same?

          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
          • undefined
            bondus
            last edited by 20 Feb 2020, 23:36

            What does this tool do? I still get the .bin I want.

            I get an error when building:
            arm-none-eabi-objcopy -O binary "C:\eclipse\Firmware\RepRapFirmware\DuetM_RTOS/DuetMaestroFirmware.elf" "C:\eclipse\Firmware\RepRapFirmware\DuetM_RTOS/DuetMaestroFirmware.bin" && crc32appender "C:\eclipse\Firmware\RepRapFirmware\DuetM_RTOS/DuetMaestroFirmware.bin"
            c:/program files/gnu arm eclipse/build tools/2.6-201507152002/bin/sh: crc32appender: not found

            Building again the error goes away, there is an depency error in the makefiles.

            undefined 1 Reply Last reply 21 Feb 2020, 05:14 Reply Quote 0
            • undefined
              wilriker @bondus
              last edited by 21 Feb 2020, 05:14

              @bondus It adds the CRC32 checksum to the end of the generated binary. The firmware updater checks for that. It will certainly complain if it's wrong but I don't know off hand what it does when it's missing.

              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
              • undefined
                dc42 administrators
                last edited by 21 Feb 2020, 07:14

                The firmware will stop at boot up and flash the Diag LED if the CRC is wrong.

                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

                undefined 1 Reply Last reply 21 Feb 2020, 10:16 Reply Quote 0
                • undefined
                  bondus @dc42
                  last edited by 21 Feb 2020, 10:16

                  @dc42 that crc protection certainly worked, I had to use SAM-BA to get my board back. It would be nice if the flasher-updater in the firmware also checked the CRC before updating.

                  undefined 1 Reply Last reply 21 Feb 2020, 10:48 Reply Quote 0
                  • undefined
                    dc42 administrators @bondus
                    last edited by 21 Feb 2020, 10:48

                    @bondus said in crc32appender now needed for RRF?:

                    @dc42 that crc protection certainly worked, I had to use SAM-BA to get my board back. It would be nice if the flasher-updater in the firmware also checked the CRC before updating.

                    Good idea, I'll add this to the work list.

                    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
                    • undefined
                      bondus
                      last edited by 23 Feb 2020, 01:28

                      Checking the CRC in the upgrader will limit downgrading though.

                      And adding the PATH in the dev environment to that tool is missing in the description on how to build the firmware. It's hard enough already to get RRF to build.

                      1 Reply Last reply Reply Quote 0
                      • undefined
                        AJ Quick
                        last edited by 11 Apr 2020, 21:03

                        I'm having the same problem with crc32appender not being found in Eclipse.

                        I had to run it manually from the command line after the binary was generated.

                        Not sure what I need to do to tell Eclipse where to look for the file though.

                        1 Reply Last reply Reply Quote 0
                        • undefined
                          gtj0
                          last edited by 11 Apr 2020, 21:32

                          Oddly enough, the instructions are in BuildInstructions in the dev and v3.01-dev branches but not in the v3-dev branch.

                          You need to copy the appropriate binary from Tools/crc32appender to someplace in your system PATH or update your system PATH to point to the directory where the appropriate binary is located. If you're on Linux, you can just copy Tools/crc32appender/linux-x86_64/crc32appender to /usr/local/bin.

                          1 Reply Last reply Reply Quote 0
                          • undefined avdoverflow referenced this topic 22 Nov 2021, 17:01
                          • First post
                            Last post
                          Unless otherwise noted, all forum content is licensed under CC-BY-SA