Skip to content
  • MySensors
  • OpenHardware.io
  • Categories
  • Recent
  • Tags
  • Popular
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Brand Logo
  1. Home
  2. Hardware
  3. Trouble while flashing Sensebender Micro: protocol error, expect=0x14, resp=0x90

Trouble while flashing Sensebender Micro: protocol error, expect=0x14, resp=0x90

Scheduled Pinned Locked Moved Hardware
7 Posts 2 Posters 2.7k Views 1 Watching
  • 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.
  • christiangC Offline
    christiangC Offline
    christiang
    wrote on last edited by
    #1

    Hello,

    I have a problem flashing one of my Sensebender Micros, maybe someone can help.
    The board is not connected to anything but the FTDI programmer. I already used this programmer on several other Sensebenders and all worked flawless. The error message from avrdude is: "stk500_getparm(): (a) protocol error, expect=0x14, resp=0x90"

    The board itself is ok, the initial software worked and was able to send messages to the gateway and print serial debug messages. I also can burn sketches directly using the spi programmer. I also burned the dualboot bootloader again, but that didnt solve the flash problem.

    Here is the complete output of the flash procedure:

    avrdude: Version 6.3, compiled on Jun 22 2016 at 16:05:21
             Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
             Copyright (c) 2007-2014 Joerg Wunsch
    
             System wide configuration file is "C:\Program Files (x86)\Arduino\hardware\tools\avr/etc/avrdude.conf"
    
             Using Port                    : COM15
             Using Programmer              : arduino
             Overriding Baud Rate          : 57600
             AVR Part                      : ATmega328P
             Chip Erase delay              : 9000 us
             PAGEL                         : PD7
             BS2                           : PC2
             RESET disposition             : dedicated
             RETRY pulse                   : SCK
             serial program mode           : yes
             parallel program mode         : yes
             Timeout                       : 200
             StabDelay                     : 100
             CmdexeDelay                   : 25
             SyncLoops                     : 32
             ByteDelay                     : 0
             PollIndex                     : 3
             PollValue                     : 0x53
             Memory Detail                 :
    
                                      Block Poll               Page                       Polled
               Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
               ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
               eeprom        65    20     4    0 no       1024    4      0  3600  3600 0xff 0xff
               flash         65     6   128    0 yes     32768  128    256  4500  4500 0xff 0xff
               lfuse          0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
               hfuse          0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
               efuse          0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
               lock           0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
               calibration    0     0     0    0 no          1    0      0     0     0 0x00 0x00
               signature      0     0     0    0 no          3    0      0     0     0 0x00 0x00
    
             Programmer Type : Arduino
             Description     : Arduino
    
    avrdude: stk500_getparm(): (a) protocol error, expect=0x14, resp=0x90
    
    avrdude: stk500_getparm(): (a) protocol error, expect=0x14, resp=0x90
    
    avrdude: stk500_getparm(): (a) protocol error, expect=0x14, resp=0x90
    
    avrdude: stk500_getparm(): (a) protocol error, expect=0x14, resp=0x90
             Hardware Version: 4728160
             Firmware Version: 0.4598627
    
    avrdude: stk500_getparm(): (a) protocol error, expect=0x14, resp=0x90
    
    avrdude: stk500_getparm(): (a) protocol error, expect=0x14, resp=0x90
             Vtarget         : 0.3 V
             Varef           : 200212948.0 V
             Oscillator      : 921.600 kHz
             SCK period      : 3.3 us
    
    avrdude: AVR device initialized and ready to accept instructions
    
    Reading | 
    avrdude: arduino_read_sig_bytes(): (a) protocol error, expect=0x10, resp=0x90
    avrdude: error reading signature data for part "ATmega328P", rc=-3
    avrdude: error reading signature data, rc=-1
    avrdude: stk500_disable(): unknown response=0x90
    
    1 Reply Last reply
    0
    • tbowmoT Offline
      tbowmoT Offline
      tbowmo
      Admin
      wrote on last edited by
      #2

      @christiang

      What supply voltage do you use? Is it stable during programming?

      I did some google searching, and found this https://forum.arduino.cc/index.php?topic=50889.0

      christiangC 2 Replies Last reply
      0
      • tbowmoT tbowmo

        @christiang

        What supply voltage do you use? Is it stable during programming?

        I did some google searching, and found this https://forum.arduino.cc/index.php?topic=50889.0

        christiangC Offline
        christiangC Offline
        christiang
        wrote on last edited by christiang
        #3
        This post is deleted!
        1 Reply Last reply
        0
        • tbowmoT tbowmo

          @christiang

          What supply voltage do you use? Is it stable during programming?

          I did some google searching, and found this https://forum.arduino.cc/index.php?topic=50889.0

          christiangC Offline
          christiangC Offline
          christiang
          wrote on last edited by christiang
          #4

          @tbowmo
          Supply voltage are the 3.3v from the ftdi programmer. Nothing else is connected to the USB so it should be stable. Tried few other sensebender today and the ftdi programming worked flawless every time.

          Could that be a timing problem, because UART communication is also not very stable at that particular sensebender with 57600 baud. The other ones work even at 115200 without a problem.

          1 Reply Last reply
          0
          • tbowmoT Offline
            tbowmoT Offline
            tbowmo
            Admin
            wrote on last edited by
            #5

            Could be timing then, if the internal RC oscillator is not running at the expected 8mhz.

            I haven't made any calculations on how much it can deviate from 8mhz before serial is having troubles

            christiangC 1 Reply Last reply
            0
            • tbowmoT tbowmo

              Could be timing then, if the internal RC oscillator is not running at the expected 8mhz.

              I haven't made any calculations on how much it can deviate from 8mhz before serial is having troubles

              christiangC Offline
              christiangC Offline
              christiang
              wrote on last edited by christiang
              #6

              @tbowmo
              You think a lower baud rate at programming could solve that issue temporarily?
              Am I correct that to test that I would need to change the rate in boards.txt and rebuild the bootloader (Baud rate has to be changed via the Makefile I guess)

              The option to solve the problem if it is indeed timing would be to solder an external quarz.
              Would that be the right type for the soldering pads on the sensebender?: https://www.conrad.de/de/smd-quarz-49usmx-serie-crystal-euroquartz-8000mhz-49usmx-30504018pfatf-frequenz-8000000-mhz-l-x-b-x-h-1135-x-47-x-42-mm-155384.html

              Thanks for your time :)

              1 Reply Last reply
              0
              • tbowmoT Offline
                tbowmoT Offline
                tbowmo
                Admin
                wrote on last edited by
                #7

                Probably a lower baudrate would fix things. You need to build a new bootloader with correct baudrate though.

                I can't remember which crystal I designed to be used on the sensebender. It was with 32khz oscillator in mind though, as there is no external load capacitors (you need to add them if you want to use 8mhz crystal)

                1 Reply Last reply
                0
                Reply
                • Reply as topic
                Log in to reply
                • Oldest to Newest
                • Newest to Oldest
                • Most Votes


                22

                Online

                11.7k

                Users

                11.2k

                Topics

                113.1k

                Posts


                Copyright 2025 TBD   |   Forum Guidelines   |   Privacy Policy   |   Terms of Service
                • Login

                • Don't have an account? Register

                • Login or register to search.
                • First post
                  Last post
                0
                • MySensors
                • OpenHardware.io
                • Categories
                • Recent
                • Tags
                • Popular