Restoring bricked Caddx Turtle after failed firmware update

        If you have failed to update the Caddx Turtle firmware, then you’ll probably have “bricked” device that refuses to work (black screen, no video out, no reaction to buttons, etc). Don’t be upset and don’t throw it away – it is relatively easy to restore the firmware by using the Arduino board.

        Hardware

        USB to TTL adapter. Better get one with 3.3V option. I have tested the cheap CH340G adapters and they work flawlessly, therefore I recommend them.

        (Possible variants on ebay: https://www.ebay.com/sch/i.html?_nkw=USB+to+TTL+CH340G+3.3V)

        Arduino Mini Pro with Atmega328P. Probably any Atmega328 based Arduino board should fit, just have in mind that we need 3.3V power supply and logic levels.

        (possible variants on ebay:?https://www.ebay.com/sch/i.html?_nkw=Arduino+Mini+Pro+atmega328)

        Software

        You can download all the software in one package here:?http://bit.ly/Google-Drive-Caddx-Turtle-Firmware-Flashing?or you can download the individual packages from the list down below:

        Note! It seems that the Caddx has changed the Turtle Cam sensor board for the latest batches and you should pay attention what firmware you are uploading. There are two firmware files: for old sensor board and the new sensor board. The provided firmware may not work for particular your version of Caddx Turtle. Do the firmware backup!

        Procedure step by step

        First you need to flash Serprog firmware to Arduino Mini Pro:

        1. Connect USB – TTL converter to Arduino Mini Pro board
        2. If everything is ok, You should see “FTDI” or “USB-SERIAL CH340” device in device manager
        3. Connect Arduino Mini Pro to USB-TTL adapter (check that your FTDI or USB Serial adapter uses 3v for powering)
        4. Start Xloader, open [fser-duino.hex] file, set the? COM port and hit “Upload” (tip: Press and hold Reset button on the Arduino board and release right before you hit the “Upload” button).

        Now You have Flashrom compatible programmer.

        Connect the Turtle serial flash IC to the Arduino. Use supplied connection schematic. Solder 6 wires: VCC, GND, CS, CLK, MOSI and MISO.?Try to keep them as short as possible, better about 10cm. Use small diameter wire.

        Connection table:

        FLASH CHIP ARDUINO BOARD
        VCC (pin 8 ) 3.3V output (5V can kill the board!)
        GND (pin 4) GND pin
        CS (pin 1) pin 10
        MISO (pin 2) pin 12
        MOSI (pin 5) pin 11
        Clock (pin 6) pin 13

        Connection schematic:

        Caddx Turtle Flash chip connected to the Arduino board should look like that:

        Do not power the Caddx Turtle board with alternative power source. It should be left only connected to Arduino board.

        Once you have everything connected, try reading the contents of flash IC by running this command in Windows Command prompt:

        mingw32-w64-flashrom-r1781.exe --programmer serprog:dev=COM7:115200 -c MX25L6445E --read test.hex

        Here in the parameter?--programmer serprog:dev=COM7:115200?change COM7 to whatever COM number your USB-TTL adapter has.

        You should get similar output to this:

        E:\My\RC\Flashrom\Caddx.Turtle>mingw32-w64-flashrom-r1781.exe --programmer serprog:dev=COM7:115200 -c MX25L6445E?--read test.hex
        flashrom v0.9.7-r1781 on Windows 6.2 (x86)
        flashrom is free software, get the source code at http://www.flashrom.org

        Calibrating delay loop... OK.
        serprog: Programmer name is "frser-duino"
        Found Macronix flash chip "MX25L6445E" (8192 kB, SPI) on serprog.
        Reading flash... done.

        Be patient – reading 8Mbytes of the data takes ~ 10 min.

        If everything goes OK by this far, you are ready to flash the firmware. To flash the device, start this command:

        mingw32-w64-flashrom-r1781.exe --programmer serprog:dev=COM7:115200 -c MX25L6445E --write flash.hex

        You should get similar output to this:

        E:\My\RC\Flashrom\Caddx.Turtle>mingw32-w64-flashrom-r1781.exe --programmer serprog:dev=COM7:115200 -c MX25L6445E?--write flash.hex
        flashrom v0.9.7-r1781 on Windows 6.2 (x86)flashrom is free software, get the source code at http://www.flashrom.org?
        Calibrating delay loop... OK.

        serprog: Programmer name is "frser-duino"
        Found Macronix flash chip "MX25L6445E" (8192 kB, SPI) on serprog.

        Reading old flash chip contents... done.
        Erasing and writing flash chip... Erase/write done.
        Verifying flash... VERIFIED.

        Note: Flashing 8Mbytes of the data takes a lot of time – be patient. Arduino flashing device uses slow SPI connection with 115200 baud rate. (approx 14kb per second, or 840kb per minute) so it takes about 10 min to read, 20 min to erase-write and 10 min to verify…

        Note: Caddx Turtle can not boot normally while the Arduino board is connected. Options – you can disconnect the wires after the flashing or you can hold the reset button on the Arduino board while the Caddx Turtle is booting to check if everything is working after the flash process.

        Note: Windows command prompt can be opened by selecting the File – Open command prompt from the file explorer menu.

        You are done! You have successfully restored the firmware.

        If you have questions or you need more details, then leave a comment below.

        Mandatory disclaimer: Do it on your own risk. Flashing the firmware can result in bricking your device.

        Comments
        1. Aldo
          • montis
        2. David
        3. PatrikE
          • montis
        4. Agnus
          • montis
          • Reza
          • Helder Vieira
            • dfebrihardy6
        5. taurusfpv
          • montis

        Leave a Reply to taurusfpv Cancel reply

        Your email address will not be published.

        *

        主站蜘蛛池模板: 锡林郭勒盟| 鄂托克旗| 麦盖提县| 奉贤区| 嘉黎县| 营山县| 大庆市| 元阳县| 台中市| 呼和浩特市| 郑州市| 三亚市| 沙坪坝区| 赫章县| 平罗县| 麻栗坡县| 高陵县| 柞水县| 久治县| 玉溪市| 仁寿县| 莱州市| 富裕县| 区。| 漳平市| 武强县| 始兴县| 大石桥市| 庆阳市| 金门县| 万盛区| 凌源市| 中江县| 青河县| 泰州市| 建瓯市| 淅川县| 鹤峰县| 龙州县| 治县。| 廉江市|