Skip to main content
Replaced Amazon affiliate link with equivalent plain link.
Source Link
SamGibson
  • 18.3k
  • 5
  • 41
  • 63

Finally, I bought this USBtinyISPUSBtinyISP and burned my bootloader in 20 seconds without any wiring to do or complicated post to read

Finally, I bought this USBtinyISP and burned my bootloader in 20 seconds without any wiring to do or complicated post to read

Finally, I bought this USBtinyISP and burned my bootloader in 20 seconds without any wiring to do or complicated post to read

Adding my final working solution
Source Link

WIP solutionTries

Working solution

I'll editFinally, I bought this message once it's done (I hadUSBtinyISP and burned my bootloader in 20 seconds without any wiring to buy a new arduino which I'm waiting now).do or complicated post to read

Meanwhile, my use case may help somebody else!enter image description here

WIP solution

I'll edit this message once it's done (I had to buy a new arduino which I'm waiting now).

Meanwhile, my use case may help somebody else!

Tries

Working solution

Finally, I bought this USBtinyISP and burned my bootloader in 20 seconds without any wiring to do or complicated post to read

enter image description here

Source Link

I have a similar issue with a Leonardo: Dumping too much data at once to Serial.print(), it seems I broke my programmer. As a result, my sketch still starts but I can't update/upload it anymore.

Problem

  • Given my sketch is started
  • When I upload any sketch
  • Then the build fails as the Serial connection is broken
Global variables use 149 bytes (5%) of dynamic memory, leaving 2411 bytes for local variables. Maximum is 2560 bytes.
Forcing reset using 1200bps open/close on port /dev/ttyACM0
PORTS {/dev/ttyACM0, /dev/ttyS4, } / {/dev/ttyS4, } => {}
PORTS {/dev/ttyS4, } / {/dev/ttyS4, } => {}
...
PORTS {/dev/ttyS4, } / {/dev/ttyS4, } => {}
Couldn't find a Board on the selected port. Check that you have the correct port selected.  If it is correct, try pressing the board's reset button after initiating the upload.
  • Given the arduino is starting (double press reset)
  • When I upload any sketch
  • Then the build fails with the following error
Connecting to programmer: .
Found programmer: Id = "Frames:"; type = e
    Software Version = F.r; Hardware Version = a.m
avrdude: error: buffered memory access not supported. Maybe it isn't
a butterfly/AVR109 but a AVR910 device?

As yo can see the id is "Frames:" and if you concatenate the software version, hardware version and type, you get "F.r_a.m_e", which is what I printed to Serial.

Breaking sketch

Here is the piece of code I think broke:

template <typename T, typename... Types>
void printLine(T first, Types... other) {
  Serial.print(first);
  printLine(other...) ;
}

String byteToString(int value) {
  String out;
  for (int i = 7; i >= 0; i--) {
      bool b = bitRead(value, i);
      out += b ? '1' : '0';
  }

  return out;
}


...


    printLine("Frames: ");
    for (int i = 0; i < 16; i++) {
      printLine(
        // printf("%04d", i),
        i,
        " => "
            ,byteToString(leftFrame[0][i])
        ,",",byteToString(leftFrame[1][i])
        ,",",byteToString(leftFrame[2][i])
        ,",",byteToString(leftFrame[3][i])
        ,",",byteToString(leftFrame[4][i])
        ,",",byteToString(leftFrame[5][i])
        ,",",byteToString(leftFrame[6][i])
        ,",",byteToString(leftFrame[7][i])
        ,":"
            ,byteToString(rightFrame[0][i])
        ,",",byteToString(rightFrame[1][i])
        ,",",byteToString(rightFrame[2][i])
        ,",",byteToString(rightFrame[3][i])
        ,",",byteToString(rightFrame[4][i])
        ,",",byteToString(rightFrame[5][i])
        ,",",byteToString(rightFrame[6][i])
        ,",",byteToString(rightFrame[7][i])
      );
    }

The funny part here is the fact that the Leonardo seems to have written in itself when I asked him to write "outside" (Serial).

WIP solution

I'll edit this message once it's done (I had to buy a new arduino which I'm waiting now).

Meanwhile, my use case may help somebody else!

Some other resources