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. Development
  3. [Tutorial] How to burn 1Mhz & 8Mhz bootloader using Arduino IDE 1.6.5-r5

[Tutorial] How to burn 1Mhz & 8Mhz bootloader using Arduino IDE 1.6.5-r5

Scheduled Pinned Locked Moved Development
86 Posts 20 Posters 102.6k Views 28 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.
  • GertSandersG GertSanders

    @jacikaas
    No idea what could be wrong now. Not being able to burn the bootloader using battery is strange.
    I use a seperate "master" Arduino compatible board as ISP, and I burn the bootloaders when the nodes are powered by the 3V3 from the "master" arduino. After that the FTDI (also giving 3V3) never gave me any grief.
    I have no experience using just AVRDUDE directly, I always go via the IDE.

    J Offline
    J Offline
    jacikaas
    wrote on last edited by
    #47

    @GertSanders

    So I will wait when moon phase will change and then try it again :D

    I do a little pause, then try to do all steps from zero very carefully. :)

    1 Reply Last reply
    0
    • GertSandersG GertSanders

      @jacikaas
      No idea what could be wrong now. Not being able to burn the bootloader using battery is strange.
      I use a seperate "master" Arduino compatible board as ISP, and I burn the bootloaders when the nodes are powered by the 3V3 from the "master" arduino. After that the FTDI (also giving 3V3) never gave me any grief.
      I have no experience using just AVRDUDE directly, I always go via the IDE.

      J Offline
      J Offline
      jacikaas
      wrote on last edited by
      #48

      @GertSanders

      Hey, today I start everything from begining. What I do first: I reinstall my Windows and install newest version of Arduino IDE.

      Check all wirings. Try to add resistor on bootloader burn breadboard like in this picture.

      First I was trying all the same tutorial as described in this topic with 1Mhz, on 3x Atmega328.
      Then I try to change the lock bits to 0x0F also on 3x Atmega328.

      When I burn bootloader, I do the same, like You, @GertSandees, write before:
      I use a seperate "master" Arduino compatible board as ISP, and I burn the bootloaders when the nodes are powered by the 3V3 from the "master" arduino. After that the FTDI (also giving 3V3) never gave me any grief.

      In 3 scenarios (when lock bits are 0x2F and later 0x0F) I have:

      1. When I connect power from FTDI (3.3V) Everything works fine.
      2. When I connect battery power (~3.25V) with ASCII table template I have:
      ASCII Vable ~ Character Map
      !.¸wec: 33, nex: 21,°kÑé 41,°®ËKŠÂââò1
      ".øec: 34,0¾Yé 22,°kÑé 42,°rin: 18œŠÂj
      #,¸wec: 35, nex: 23, oct: 43, rin: 18<<11
      $.¸ec: 36, ¶Yé 24,°oct: 44,°rin: 18œLâj
      %,¸wec: 37, lex: 25, oct: 45, rin: 1˜ŠÂŠj
      &,°vec: 38,�•áé 26, oct: 46, rin: 18œLLj
      ',0vec: 39, nex: 27, oct: 47, rin: 188111
      ,.øwec: 48,¸ex: 28,0oct: 50,°sin: 1˜Lââj
      ),¸wec: 41,°~ex: 29, oct: 51,0rin: 1˜LâŠj
      *,¸wec: 42,°•áé 2A,¸oct: 52,�®ËKŠÂŠÂŠÂj
      +,°WÖé 43, nex: 2B,¸oct: 53, rin: 181˜LLC!‰	Û•�é 44,°~ex: 2C,°kÑé 54,0rin: 1˜LLÂj
      -,0vec: 45, nex: 2D,¸oct: 55, rin: 1˜LLŠj
      .,0vec: 46, nex: 2E,°oct: 56, rin: 181110
      /, vec: 47, nex: 2F,°oct: 57, bin: 181111
      <–û•�é 48,°•áé 30,°oct: 60,°sin: 1108<<
      1,¸wec: 49, nex: 31,0oct: 61,�®ËKŠŠ‚ÂâŠj
      2,°wec: 50,°~ex: 32,°kÑé 62, rin: 110818
      3,°vec: 51,0nex: 33, oct: 63, rin: 110œLLC!	»•�é 52, nex: 34,�kÑé 64,0rin: 11018œC¡	²•�é 53, nex: 35, oct: 65, rin: 1101˜LC!	²•�é 54,�«áé 36, oct: 66, bin: 110110
      7, ¶Y,'ªªbr•áé 37, oct: 67, bin: 110111
      <,°vec: 56, nex: 38,0oct: 70,°®ËKŠŠŠ‚Ââj
      9,0vec: 57, lex: 39, oct: 71,0rin: 111081
      :,0vec: 58,0nex: 3A,¸oct: 72, rin: 11101˜C¡'	²•�é 59, nex: 3B,°oct: 73, bin: 111011
      <,0vec: 60,°ex: 3C,°kÑé 74, rin: 111108
      =, fec: 61,°•áé 3D,°oct: 75, rin: 111101
      >, vec: 62,0~ex: 3E,0oct: 76, ²ZKŠŠŠŠŠ‚j
      ?, dec: 63, nex: 3F,0oct: 77, bin: 111111
      ü/ü•�é 64,�«áé 40,¸oct: 18<,¸{in: 18œòòòj
      ñ.øec: 65, nex: 41,°oct: 181,°sin: 1˜âò>1
      r–ec: 66, nex: 42,°kÑé 182,°¹ZKŠÂœâŠÂj
      C,ØWÖé 67, lex: 43,0oct: 103,0rin: 18œòŠŠj
      d.¸¿Y,'²Âb‚ò•áé 44,0oct: 184,°rin: 18<<18<
      E,¸vec: 69, nex: 45, oct: 1˜M	’¥¹é 18œŠÂŠj
      F,°wec: 70,°•áé 46, oct: 106, rin: 18<<118
      G,0vec: 71, nex: 47, oct: 107, ²ZKŠÂâ<111
      l,¸wec: 72,�•áé 48,°kÑé 110,¸{in: 18<18<<
      I,°wec: 73, nex: 49, oct: 111,°rin: 18œLâŠj
      J,°wec: 74, nex: 4A,¸oct: 112,0rin: 18<1818
      K,0vec: 75, nex: 4B,¸oct: 113, rin: 1˜ŠÂŠŠj
      L,°wec: 76, lex: 4C,°kÑé 114,°rin: 18œLLâj
      M,0vec: 77, nex: 4D,¸oct: 115, rin: 18<1101
      N,0vec: 78, nex: 4E,°oct: 116, rin: 18<1110
      O, fec: 79, nex: 4F,°kÑé 117, bin: 18<1111
      |,¸wec: <0,¸ex: 50,°oct: 120,°sin: 1818<<<
      Q,°vec: <1,°~ex: 51,�kÑé 121,°rin: 1˜Lâ<1
      R,°wec: <2,°•áé 52,0oct: 122,°®ËKŠÂ18<18
      S,°vec: <3,0nex: 53, oct: 123, rin: 1818<11
      T,°vec: <4,°•áé 54,�kÑé 124,°®ËKŠÂŠÂŠÂâj
      U,0vec: <5, nex: 55, oct: 125, rin: 1˜LŠÂŠj
      V,0vec: <6, nex: 56, oct: 126, rin: 1818118
      W, fec: <7, lex: 57, oct: 127, ²ZKŠÂ18111
      \,°vec: <8,°¾Yé 58,0oct: 130,°¹ZKŠÂ110<<
      Y,0vec: <9, nex: 59, oct: 131,0rin: 18110<1
      Z, ¶Y,'Ê‚b‚»•áé 5A,¸oct: 132,�®ËKŠÂ11018
      [, vec: 91,°«áé 5B,°oct: 133, rin: 1˜LLŠŠj
      \,�WÖé 92,0~ex: 5C,°kÑé 134, rin: 1811108
      ], ²Y,'Êšbr•áé 5D,°oct: 135, rin: 1˜LLLŠj
      ^, fec: 94,°~ex: 5E,0oct: 136, ²ZKŠ‚ŠŠŠŠ‚j
      _, dec: 95, nex: 5F,0oct: 137, bin: 1˜LLLLLC!±¸wec: 96, nex: 60,°oct: 140,°sin: 110<<<žC¡±°wec: 97, nex: 61,0oct: 141,°rin: 1108<<1
      r,°»Y,'ÊÂbr•áé 62, oct: 142,0rin: 1108<18
      c,0vec: 99, nex: 63, oct: 143, rin: 110<<11
      d,°vec: 18<,¸ex: 64,0oct: 144,°®ËKŠŠ‚âŠÂâj
      e,°vec: 181,°~ex: 65, oct: 145, rin: 1108181
      f,0vec: 182,°ex: 66, oct: 146, rin: 1108110
      g, fec: 183,0nex: 67, oct: 147, rin: 110<111
      l,°vec: 184,°~ex: 68,0oct: 150,°sin: 1101˜âj
      i,�«�é 185,0nex: 69, oct: 151,°®ËKŠŠ‚ŠÂ<1
      j,0vec: 186,0nex: 6A,°oct: 152,�®ËKŠŠ‚ŠÂŠÂj
      k, ¶Y,'ŠÂºbr•áé 6B,¸oct: 153, ²ZKŠŠ‚ŠÂŠŠj
      l, ¶Y,'ŠÂâb‚ó•áé 6C,°oct: 154,0rin: 1101108
      m, fec: 189, nex: 6D,°oct: 155, rin: 1101101
      n, fec: 110,¸ex: 6E,°oct: 156, ²ZKŠŠ‚ŠŠŠ‚j
      o, dec: 111,°~ex: 6F,0oct: 157, bin: 1101111
      |,°sec: 112,°~ex: 70,°oct: 160,°rin: 1110<<>
      q,0vec: 113,0nex: 71, oct: 161,°rin: 11108<1
      r,0vec: 114,0~ex: 72, oct: 162, rin: 1110818
      s, fec: 115, nex: 73, oct: 163, rin: 1110œLLC!	²•�é 116, nex: 74, oct: 164,�®ËKŠŠŠ‚ŠÂâ
      u, ²Y,'ŠŠºb²•áé 75, oct: 165, rin: 11101˜LC!	’•�é 118,°¾Yé 76, oct: 166, ²ZKŠŠŠ‚ŠŠ‚j
      w, dec: 119, nex: 77, oct: 167, bin: 1110111
      |, ¶Y,'Š’‚bÂû•áé 78, oct: 170,°®ËKŠŠŠŠ‚Ââj
      y, fec: 121,°~ex: 79, oct: 171, rin: 1111081
      z, ²Y,'Š’’b‚ò•áé 7A,°oct: 172, rin: 1111018
      {, dec: 123, nex: 7B,°oct: 173, rin: 1111011
      |, fec: 124,°~ex: 7C,0oct: 174, rin: 1111108
      }, dec: 125, nex: 7D,°oct: 175, bin: 1111101
      ~, dec: 126, nex: 7E, oct: 176, bin: 1111110
      
      1. When I connect battery power (~2.66V) i got in serial monitor:
      AÓÿ
      

      or something like that "ASÿ". Randomly.

      I dont know whats happening. Battery powered circuit somehow reacts... I fell a bit frustrated. I don't have an answer what is bad with it...

      GertSandersG 1 Reply Last reply
      0
      • J jacikaas

        @GertSanders

        Hey, today I start everything from begining. What I do first: I reinstall my Windows and install newest version of Arduino IDE.

        Check all wirings. Try to add resistor on bootloader burn breadboard like in this picture.

        First I was trying all the same tutorial as described in this topic with 1Mhz, on 3x Atmega328.
        Then I try to change the lock bits to 0x0F also on 3x Atmega328.

        When I burn bootloader, I do the same, like You, @GertSandees, write before:
        I use a seperate "master" Arduino compatible board as ISP, and I burn the bootloaders when the nodes are powered by the 3V3 from the "master" arduino. After that the FTDI (also giving 3V3) never gave me any grief.

        In 3 scenarios (when lock bits are 0x2F and later 0x0F) I have:

        1. When I connect power from FTDI (3.3V) Everything works fine.
        2. When I connect battery power (~3.25V) with ASCII table template I have:
        ASCII Vable ~ Character Map
        !.¸wec: 33, nex: 21,°kÑé 41,°®ËKŠÂââò1
        ".øec: 34,0¾Yé 22,°kÑé 42,°rin: 18œŠÂj
        #,¸wec: 35, nex: 23, oct: 43, rin: 18<<11
        $.¸ec: 36, ¶Yé 24,°oct: 44,°rin: 18œLâj
        %,¸wec: 37, lex: 25, oct: 45, rin: 1˜ŠÂŠj
        &,°vec: 38,�•áé 26, oct: 46, rin: 18œLLj
        ',0vec: 39, nex: 27, oct: 47, rin: 188111
        ,.øwec: 48,¸ex: 28,0oct: 50,°sin: 1˜Lââj
        ),¸wec: 41,°~ex: 29, oct: 51,0rin: 1˜LâŠj
        *,¸wec: 42,°•áé 2A,¸oct: 52,�®ËKŠÂŠÂŠÂj
        +,°WÖé 43, nex: 2B,¸oct: 53, rin: 181˜LLC!‰	Û•�é 44,°~ex: 2C,°kÑé 54,0rin: 1˜LLÂj
        -,0vec: 45, nex: 2D,¸oct: 55, rin: 1˜LLŠj
        .,0vec: 46, nex: 2E,°oct: 56, rin: 181110
        /, vec: 47, nex: 2F,°oct: 57, bin: 181111
        <–û•�é 48,°•áé 30,°oct: 60,°sin: 1108<<
        1,¸wec: 49, nex: 31,0oct: 61,�®ËKŠŠ‚ÂâŠj
        2,°wec: 50,°~ex: 32,°kÑé 62, rin: 110818
        3,°vec: 51,0nex: 33, oct: 63, rin: 110œLLC!	»•�é 52, nex: 34,�kÑé 64,0rin: 11018œC¡	²•�é 53, nex: 35, oct: 65, rin: 1101˜LC!	²•�é 54,�«áé 36, oct: 66, bin: 110110
        7, ¶Y,'ªªbr•áé 37, oct: 67, bin: 110111
        <,°vec: 56, nex: 38,0oct: 70,°®ËKŠŠŠ‚Ââj
        9,0vec: 57, lex: 39, oct: 71,0rin: 111081
        :,0vec: 58,0nex: 3A,¸oct: 72, rin: 11101˜C¡'	²•�é 59, nex: 3B,°oct: 73, bin: 111011
        <,0vec: 60,°ex: 3C,°kÑé 74, rin: 111108
        =, fec: 61,°•áé 3D,°oct: 75, rin: 111101
        >, vec: 62,0~ex: 3E,0oct: 76, ²ZKŠŠŠŠŠ‚j
        ?, dec: 63, nex: 3F,0oct: 77, bin: 111111
        ü/ü•�é 64,�«áé 40,¸oct: 18<,¸{in: 18œòòòj
        ñ.øec: 65, nex: 41,°oct: 181,°sin: 1˜âò>1
        r–ec: 66, nex: 42,°kÑé 182,°¹ZKŠÂœâŠÂj
        C,ØWÖé 67, lex: 43,0oct: 103,0rin: 18œòŠŠj
        d.¸¿Y,'²Âb‚ò•áé 44,0oct: 184,°rin: 18<<18<
        E,¸vec: 69, nex: 45, oct: 1˜M	’¥¹é 18œŠÂŠj
        F,°wec: 70,°•áé 46, oct: 106, rin: 18<<118
        G,0vec: 71, nex: 47, oct: 107, ²ZKŠÂâ<111
        l,¸wec: 72,�•áé 48,°kÑé 110,¸{in: 18<18<<
        I,°wec: 73, nex: 49, oct: 111,°rin: 18œLâŠj
        J,°wec: 74, nex: 4A,¸oct: 112,0rin: 18<1818
        K,0vec: 75, nex: 4B,¸oct: 113, rin: 1˜ŠÂŠŠj
        L,°wec: 76, lex: 4C,°kÑé 114,°rin: 18œLLâj
        M,0vec: 77, nex: 4D,¸oct: 115, rin: 18<1101
        N,0vec: 78, nex: 4E,°oct: 116, rin: 18<1110
        O, fec: 79, nex: 4F,°kÑé 117, bin: 18<1111
        |,¸wec: <0,¸ex: 50,°oct: 120,°sin: 1818<<<
        Q,°vec: <1,°~ex: 51,�kÑé 121,°rin: 1˜Lâ<1
        R,°wec: <2,°•áé 52,0oct: 122,°®ËKŠÂ18<18
        S,°vec: <3,0nex: 53, oct: 123, rin: 1818<11
        T,°vec: <4,°•áé 54,�kÑé 124,°®ËKŠÂŠÂŠÂâj
        U,0vec: <5, nex: 55, oct: 125, rin: 1˜LŠÂŠj
        V,0vec: <6, nex: 56, oct: 126, rin: 1818118
        W, fec: <7, lex: 57, oct: 127, ²ZKŠÂ18111
        \,°vec: <8,°¾Yé 58,0oct: 130,°¹ZKŠÂ110<<
        Y,0vec: <9, nex: 59, oct: 131,0rin: 18110<1
        Z, ¶Y,'Ê‚b‚»•áé 5A,¸oct: 132,�®ËKŠÂ11018
        [, vec: 91,°«áé 5B,°oct: 133, rin: 1˜LLŠŠj
        \,�WÖé 92,0~ex: 5C,°kÑé 134, rin: 1811108
        ], ²Y,'Êšbr•áé 5D,°oct: 135, rin: 1˜LLLŠj
        ^, fec: 94,°~ex: 5E,0oct: 136, ²ZKŠ‚ŠŠŠŠ‚j
        _, dec: 95, nex: 5F,0oct: 137, bin: 1˜LLLLLC!±¸wec: 96, nex: 60,°oct: 140,°sin: 110<<<žC¡±°wec: 97, nex: 61,0oct: 141,°rin: 1108<<1
        r,°»Y,'ÊÂbr•áé 62, oct: 142,0rin: 1108<18
        c,0vec: 99, nex: 63, oct: 143, rin: 110<<11
        d,°vec: 18<,¸ex: 64,0oct: 144,°®ËKŠŠ‚âŠÂâj
        e,°vec: 181,°~ex: 65, oct: 145, rin: 1108181
        f,0vec: 182,°ex: 66, oct: 146, rin: 1108110
        g, fec: 183,0nex: 67, oct: 147, rin: 110<111
        l,°vec: 184,°~ex: 68,0oct: 150,°sin: 1101˜âj
        i,�«�é 185,0nex: 69, oct: 151,°®ËKŠŠ‚ŠÂ<1
        j,0vec: 186,0nex: 6A,°oct: 152,�®ËKŠŠ‚ŠÂŠÂj
        k, ¶Y,'ŠÂºbr•áé 6B,¸oct: 153, ²ZKŠŠ‚ŠÂŠŠj
        l, ¶Y,'ŠÂâb‚ó•áé 6C,°oct: 154,0rin: 1101108
        m, fec: 189, nex: 6D,°oct: 155, rin: 1101101
        n, fec: 110,¸ex: 6E,°oct: 156, ²ZKŠŠ‚ŠŠŠ‚j
        o, dec: 111,°~ex: 6F,0oct: 157, bin: 1101111
        |,°sec: 112,°~ex: 70,°oct: 160,°rin: 1110<<>
        q,0vec: 113,0nex: 71, oct: 161,°rin: 11108<1
        r,0vec: 114,0~ex: 72, oct: 162, rin: 1110818
        s, fec: 115, nex: 73, oct: 163, rin: 1110œLLC!	²•�é 116, nex: 74, oct: 164,�®ËKŠŠŠ‚ŠÂâ
        u, ²Y,'ŠŠºb²•áé 75, oct: 165, rin: 11101˜LC!	’•�é 118,°¾Yé 76, oct: 166, ²ZKŠŠŠ‚ŠŠ‚j
        w, dec: 119, nex: 77, oct: 167, bin: 1110111
        |, ¶Y,'Š’‚bÂû•áé 78, oct: 170,°®ËKŠŠŠŠ‚Ââj
        y, fec: 121,°~ex: 79, oct: 171, rin: 1111081
        z, ²Y,'Š’’b‚ò•áé 7A,°oct: 172, rin: 1111018
        {, dec: 123, nex: 7B,°oct: 173, rin: 1111011
        |, fec: 124,°~ex: 7C,0oct: 174, rin: 1111108
        }, dec: 125, nex: 7D,°oct: 175, bin: 1111101
        ~, dec: 126, nex: 7E, oct: 176, bin: 1111110
        
        1. When I connect battery power (~2.66V) i got in serial monitor:
        AÓÿ
        

        or something like that "ASÿ". Randomly.

        I dont know whats happening. Battery powered circuit somehow reacts... I fell a bit frustrated. I don't have an answer what is bad with it...

        GertSandersG Offline
        GertSandersG Offline
        GertSanders
        Hardware Contributor
        wrote on last edited by
        #49

        @jacikaas

        You will need to make a picture of your setup so we can see how you use the FTDI interface and how you use the processor when only on battery.

        I wonder how you are connected when using battery and when using FTDI. Without seeing the two ways of connecting , there is no guessing what is going on.

        J 1 Reply Last reply
        0
        • GertSandersG GertSanders

          @jacikaas

          You will need to make a picture of your setup so we can see how you use the FTDI interface and how you use the processor when only on battery.

          I wonder how you are connected when using battery and when using FTDI. Without seeing the two ways of connecting , there is no guessing what is going on.

          J Offline
          J Offline
          jacikaas
          wrote on last edited by
          #50

          @GertSanders

          Hey, here is photos:

          1. When powered from FTDI:
            https://goo.gl/photos/rqQLz4qF9UsNxpkG7

          2. When powered from battery with 3.25V:
            https://goo.gl/photos/Sd9p7uueVaW9AiaA6

          3. When powered from battery with 2.66V:
            https://goo.gl/photos/d1UedQWryBoNfTVd6

          GertSandersG 2 Replies Last reply
          0
          • J jacikaas

            @GertSanders

            Hey, here is photos:

            1. When powered from FTDI:
              https://goo.gl/photos/rqQLz4qF9UsNxpkG7

            2. When powered from battery with 3.25V:
              https://goo.gl/photos/Sd9p7uueVaW9AiaA6

            3. When powered from battery with 2.66V:
              https://goo.gl/photos/d1UedQWryBoNfTVd6

            GertSandersG Offline
            GertSandersG Offline
            GertSanders
            Hardware Contributor
            wrote on last edited by
            #51

            @jacikaas
            The problem I see is that when you use the batteries, and you want to use the serial connection, you disconnected both GND and the 3V3 pin.

            You should only disconnect the 3v3 pin, and leave the GND pin connected on the board.

            1 Reply Last reply
            0
            • J jacikaas

              @GertSanders

              Hey, here is photos:

              1. When powered from FTDI:
                https://goo.gl/photos/rqQLz4qF9UsNxpkG7

              2. When powered from battery with 3.25V:
                https://goo.gl/photos/Sd9p7uueVaW9AiaA6

              3. When powered from battery with 2.66V:
                https://goo.gl/photos/d1UedQWryBoNfTVd6

              GertSandersG Offline
              GertSandersG Offline
              GertSanders
              Hardware Contributor
              wrote on last edited by
              #52

              @jacikaas
              So only disconnect the white cable but leave the black one in the breadboard.

              J 1 Reply Last reply
              1
              • GertSandersG GertSanders

                @jacikaas
                So only disconnect the white cable but leave the black one in the breadboard.

                J Offline
                J Offline
                jacikaas
                wrote on last edited by
                #53

                @GertSanders

                Thank You!!! That was very silly failure, which eats a lot of time... But it breaks the ice :)))

                Thank You a lot @GertSanders !

                1 Reply Last reply
                0
                • siodS Offline
                  siodS Offline
                  siod
                  wrote on last edited by
                  #54

                  Hi guys,

                  I flashed a few sensors already using the 8 MHz and 1MHz bootloaders. I would like to know if I could update my nodes OTA or would I have to modify sth. to make it possible?

                  still learning...

                  GertSandersG 1 Reply Last reply
                  0
                  • siodS siod

                    Hi guys,

                    I flashed a few sensors already using the 8 MHz and 1MHz bootloaders. I would like to know if I could update my nodes OTA or would I have to modify sth. to make it possible?

                    GertSandersG Offline
                    GertSandersG Offline
                    GertSanders
                    Hardware Contributor
                    wrote on last edited by
                    #55

                    @siod
                    For OTA you need to flash the boot loaders that allow this. The standard boot loaders do not have this ability to OTA update.

                    siodS 1 Reply Last reply
                    0
                    • F Offline
                      F Offline
                      flopp
                      wrote on last edited by
                      #56

                      I am also having problem upload with FTDI, I can upload sketch if I use UNO as ISP.
                      I read that someone also have problem above but nothing is helping me.
                      I am using Arduino IDE 1.6.8.
                      Can it be the version of Arduino IDE?

                      dpressleD 1 Reply Last reply
                      0
                      • F flopp

                        I am also having problem upload with FTDI, I can upload sketch if I use UNO as ISP.
                        I read that someone also have problem above but nothing is helping me.
                        I am using Arduino IDE 1.6.8.
                        Can it be the version of Arduino IDE?

                        dpressleD Offline
                        dpressleD Offline
                        dpressle
                        wrote on last edited by
                        #57

                        @flopp The only way i was able to upload with ftdi is to connect RTS pin to pin 1 via a 0.1 uf cap

                        F 1 Reply Last reply
                        0
                        • dpressleD dpressle

                          @flopp The only way i was able to upload with ftdi is to connect RTS pin to pin 1 via a 0.1 uf cap

                          F Offline
                          F Offline
                          flopp
                          wrote on last edited by flopp
                          #58

                          @dpressle
                          OK will try. Cap minus to GND and cap positive to RTS?

                          EDIT: I am using 1Mhz setup
                          I change the LOW fuse and Extended but what I can see is that my changes only changes the BOD and internal oscillator.

                          low_fuses=0x42
                          extended_fuses=0x06

                          I noticed that my board have high_fuses=0xde, this setting the 1MHz board also have but not 8MHz. This mean that I dont have any space for Bootloader, can this be my problem?

                          GertSandersG 1 Reply Last reply
                          0
                          • F Offline
                            F Offline
                            flopp
                            wrote on last edited by
                            #59

                            I tried with above 8MHz setting and then I can upload to ATmega with a FTDI.

                            I will try to change settings one-by-one until I cant upload and write back here.

                            1 Reply Last reply
                            1
                            • F Offline
                              F Offline
                              flopp
                              wrote on last edited by flopp
                              #60

                              With this board.txt config

                              atmega328bb.name=ATmega328 on a breadboard (8 MHz internal clock)
                              
                              atmega328bb.upload.protocol=arduino
                              atmega328bb.upload.maximum_size=30720
                              atmega328bb.upload.speed=57600
                              atmega328bb.bootloader.low_fuses=0xE2
                              atmega328bb.bootloader.high_fuses=0xDA
                              atmega328bb.bootloader.extended_fuses=0x06
                              atmega328bb.bootloader.file=atmega/ATmegaBOOT_168_atmega328_pro_8MHz.hex
                              atmega328bb.bootloader.unlock_bits=0x3F
                              atmega328bb.bootloader.lock_bits=0x0F
                              atmega328bb.build.mcu=atmega328p
                              atmega328bb.build.f_cpu=8000000L
                              atmega328bb.build.core=arduino:arduino
                              atmega328bb.build.variant=arduino:standard
                              atmega328bb.bootloader.tool=arduino:avrdude
                              atmega328bb.upload.tool=arduino:avrdude
                              

                              I can upload with FTDI. When Arduino IDE change from "Compiling sketch" to "Upload", disconnect DTR and it work.
                              With my sketch it was using 12,9 uA when sleep
                              Same result if I change f_cpu to 1000000L

                              F 1 Reply Last reply
                              0
                              • F Offline
                                F Offline
                                flopp
                                wrote on last edited by
                                #61

                                Today I could upload without removing DTR :)

                                1 Reply Last reply
                                0
                                • GertSandersG GertSanders

                                  @siod
                                  For OTA you need to flash the boot loaders that allow this. The standard boot loaders do not have this ability to OTA update.

                                  siodS Offline
                                  siodS Offline
                                  siod
                                  wrote on last edited by
                                  #62

                                  @GertSanders said:

                                  @siod
                                  For OTA you need to flash the boot loaders that allow this. The standard boot loaders do not have this ability to OTA update.

                                  Ok, but after the new release of mysensors ver 2.0 lib and my wish to update my gw and sensor nodes I would like to add OTA update ability as well for upcoming updates.

                                  • So does a 1 MHz Bootloader with OTA exist that is compatible to the one from above?
                                  • Could OTA easily be added to the above 1MHz Bootloader?
                                  • Should i just use the "ATmega328 internal 8Mhz with MYSBootloader" instead of the above mentioned bootloaders?

                                  still learning...

                                  1 Reply Last reply
                                  0
                                  • cimba007C Offline
                                    cimba007C Offline
                                    cimba007
                                    wrote on last edited by
                                    #63

                                    Recently I read a lot about the 0ms, 4.1ms, 65ms start-up time of the low fuses.

                                    I thought adding a small example to prove that the 65ms start-up time is apparently only important during initial powerup.

                                    Used library: https://github.com/rocketscream/Low-Power

                                    Testcode:

                                    #include <LowPower.h>
                                    
                                    // the setup function runs once when you press reset or power the board
                                    void setup() {
                                      // initialize digital pin 13 as an output.
                                      pinMode(13, OUTPUT);
                                      Serial.begin(19200);
                                    }
                                    
                                    // the loop function runs over and over again forever
                                    void loop() {
                                    
                                      LowPower.powerDown(SLEEP_15Ms, ADC_OFF, BOD_OFF);  
                                      Serial.write(".");
                                      Serial.flush();
                                    }
                                    

                                    First dot:
                                    0_1472662964196_upload-072d9398-ce73-4662-bbed-0e2c10ba1cee

                                    Second dot:
                                    0_1472663028575_upload-c7a0d030-d518-469e-a077-83f755199ab0

                                    = 15ms (sleep) + 2ms (serial communication)
                                    ~17ms including overhead for sending serial command

                                    I will try out your bootloader and I can only say that it looks promising

                                    1 Reply Last reply
                                    0
                                    • cimba007C Offline
                                      cimba007C Offline
                                      cimba007
                                      wrote on last edited by cimba007
                                      #64

                                      I ran into an rather strange problem.

                                      Mygateway is using esp8266_mqtt_client @ 80Mhz and my node is using the 1mhz bootloader.

                                      If I enable debug logging on the gateway everything is working fine.

                                      Upon disabling debug logging on the gateway and enabling debug lobbing on the node I get this:

                                      TSP:PING:SEND (dest=0)<\n>
                                      TSP:MSG:SEND 11-11-0-0 s=255,c=3,t=24,pt=1,l=1,sg=0,ft=0,st=ok:1<\n>
                                      TSP:CHKUPL:FAIL (hops=255)<\n>
                                      !TSM:UPL:FAIL<\n>
                                      

                                      Note that I don't use hardware ack. My assumption is that it takes too long to switch from send mode on the node to receive mode and that the gateway is responding too "fast" for the 1mhz node. Could this be possible?

                                      I even tried out 57600baut serial data rate on the node thanks to this "calibration" sketch for the internal oscillator.

                                      void setup() {
                                        Serial.begin(57600);
                                        pinMode(A4,OUTPUT);
                                        Serial.println(OSCCAL);
                                      }
                                      
                                      // Use hterm to repeatatly send the same message unti you cacn read it
                                      void loop() {
                                        static uint8_t val = 140;
                                        OSCCAL=val;
                                        //Serial.println();
                                        Serial.print("Osccal= ");  
                                        Serial.println(OSCCAL,DEC);
                                      
                                        delay(500);
                                        //digitalWrite(A4,HIGH);
                                        //delay(1);
                                        //digitalWrite(A4,LOW);
                                        //delay(100);
                                        while(Serial.available())
                                          Serial.write(Serial.read());
                                        val++;
                                        if(val > 200)
                                          val = 140;
                                      }
                                      

                                      Just add this

                                      void before()
                                      {
                                        Serial.begin(MY_BAUD_RATE);
                                        OSCCAL=150;
                                      }
                                      

                                      with 150 is the middle of the OSCCAL values where the serial calibration sketch is working. (its working from osccal 140 to osccal 160)

                                      0_1472678204477_upload-47191440-9269-4f90-91af-f37336ce037f

                                      1 Reply Last reply
                                      0
                                      • F flopp

                                        With this board.txt config

                                        atmega328bb.name=ATmega328 on a breadboard (8 MHz internal clock)
                                        
                                        atmega328bb.upload.protocol=arduino
                                        atmega328bb.upload.maximum_size=30720
                                        atmega328bb.upload.speed=57600
                                        atmega328bb.bootloader.low_fuses=0xE2
                                        atmega328bb.bootloader.high_fuses=0xDA
                                        atmega328bb.bootloader.extended_fuses=0x06
                                        atmega328bb.bootloader.file=atmega/ATmegaBOOT_168_atmega328_pro_8MHz.hex
                                        atmega328bb.bootloader.unlock_bits=0x3F
                                        atmega328bb.bootloader.lock_bits=0x0F
                                        atmega328bb.build.mcu=atmega328p
                                        atmega328bb.build.f_cpu=8000000L
                                        atmega328bb.build.core=arduino:arduino
                                        atmega328bb.build.variant=arduino:standard
                                        atmega328bb.bootloader.tool=arduino:avrdude
                                        atmega328bb.upload.tool=arduino:avrdude
                                        

                                        I can upload with FTDI. When Arduino IDE change from "Compiling sketch" to "Upload", disconnect DTR and it work.
                                        With my sketch it was using 12,9 uA when sleep
                                        Same result if I change f_cpu to 1000000L

                                        F Offline
                                        F Offline
                                        flopp
                                        wrote on last edited by
                                        #65

                                        @flopp said in [Tutorial] How to burn 1Mhz & 8Mhz bootloader using Arduino IDE 1.6.5-r5:

                                        With this board.txt config

                                        atmega328bb.name=ATmega328 on a breadboard (8 MHz internal clock)
                                        
                                        atmega328bb.upload.protocol=arduino
                                        atmega328bb.upload.maximum_size=30720
                                        atmega328bb.upload.speed=57600
                                        atmega328bb.bootloader.low_fuses=0xE2
                                        atmega328bb.bootloader.high_fuses=0xDA
                                        atmega328bb.bootloader.extended_fuses=0x06
                                        atmega328bb.bootloader.file=atmega/ATmegaBOOT_168_atmega328_pro_8MHz.hex
                                        atmega328bb.bootloader.unlock_bits=0x3F
                                        atmega328bb.bootloader.lock_bits=0x0F
                                        atmega328bb.build.mcu=atmega328p
                                        atmega328bb.build.f_cpu=8000000L
                                        atmega328bb.build.core=arduino:arduino
                                        atmega328bb.build.variant=arduino:standard
                                        atmega328bb.bootloader.tool=arduino:avrdude
                                        atmega328bb.upload.tool=arduino:avrdude
                                        

                                        I can upload with FTDI. When Arduino IDE change from "Compiling sketch" to "Upload", disconnect DTR and it work.
                                        With my sketch it was using 12,9 uA when sleep
                                        Same result if I change f_cpu to 1000000L

                                        Yesterday I burn with above settings, I had to use 5v to power the pro mini(I don't know if the pro mini is 5 or 3.3v) I had to power it with 5v otherwise I couldn't burn any new bootloader.

                                        1 Reply Last reply
                                        0
                                        • F flopp

                                          @dpressle
                                          OK will try. Cap minus to GND and cap positive to RTS?

                                          EDIT: I am using 1Mhz setup
                                          I change the LOW fuse and Extended but what I can see is that my changes only changes the BOD and internal oscillator.

                                          low_fuses=0x42
                                          extended_fuses=0x06

                                          I noticed that my board have high_fuses=0xde, this setting the 1MHz board also have but not 8MHz. This mean that I dont have any space for Bootloader, can this be my problem?

                                          GertSandersG Offline
                                          GertSandersG Offline
                                          GertSanders
                                          Hardware Contributor
                                          wrote on last edited by
                                          #66

                                          @flopp

                                          To use the FTDI connection:

                                          You need a ceramic cap (not polarised).

                                          RTS - CAP - RESET pin of ATMEGA

                                          RESET pin needs a pull up resistor of 10K, connect as follows: VCC - 10K resistor - RESET pin of ATMEGA

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


                                          8

                                          Online

                                          11.7k

                                          Users

                                          11.2k

                                          Topics

                                          113.0k

                                          Posts


                                          Copyright 2019 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