3

Use avrdude. The command format is simple, assuming you have installed it from the Linux repositories: avrdude -carduino -patmega328p -P/dev/ttyUSB0 -b115200 -Uflash:w:/path/to/project.bin.hex:i Depending on what bootloader is installed in your nano you may need to change the baud rate (-b115200) to 57600. Also, of course, the USB device should be set to ...


2

The problem is in kernel ch341 driver. Using 5.3.3 on Archlinux and 5.6 rc1. https://github.com/torvalds/linux/blob/e33eab9ded328ccc14308afa51b5be7cbe78d30b/drivers/usb/serial/ch341.c This driver version compiled using this Makefile obj-m += ch341-m.o all: make -C /lib/modules/$(shell uname -r)/build M=$(PWD) modules clean: make -C /lib/...


2

There are several different tools for uploading binaries to a Cortex M3. Depending on the board (not chip) configuration, they include (ht: Majenko): dfu-util through an FT232 adapter stm32flash through serial micronucleus through the Micronucleus bootloader stlink through an STLink programmer Many Arduino flavors use a board with some kind of USB or ...


2

On ATmega328p and similar ATmega MCUs with bootloader support, the application is not allowed to write to flash. Only code running in bootloader area of the flash memory is allowed to write to flash. Bootloader area is at the end of the flash and the beginning is set with the BOOTSZ fuses. The write to flash page is done in two steps. First step is deleting ...


2

Try manually resetting the board: Before uploading, run Verify. Hold the reset button and click Upload. Release the reset button. If that worked, your board's reset isn't fried, it just isn't receiving a reset via the serial cable. If it failed, either part of the board or MCU may be damaged; something attached to the board may be inhibiting the reset ...


2

EEPROM on the ESP32 doesn't work like you would expect. It uses the SDK's "Non-Volatile Ram" storage system to store the data within the nvs partition. This works through a system of "Key / Value" pairs, and the data is stored as a "BLOB" (Binary Large OBject) for the key eeprom in the namespace eeprom. Quite what the internal layout of the data within ...


2

Uno's Mega's and so on have a separate MCU (u3) that contains the boot loader and is responsible for the USB connection and for driving the virtual serial port. Micros ( and also Leonardos and Esploras ) have built in USB support in the main MCU (u4). So if your program does something that breaks the USB part of the MCU the communication breaks also. This ...


1

Download the Arduino software (IDE, or Integrated Development Environment). In our case, we only need to download and run Windows Installer and follow the pop up instructions. When asked if you want to install the Arduino driver, just press Yes. Connect your Arduino Nano board to your computer. In this step, Windows should automatically find the proper ...


1

The board was bad. I just replaced it and it now works. So, to answer my own question, an Arduino board can show up on lsusb and dmesg and yet be faulty. This is what the dmesg output is for a healthy board: [10492.388028] usb 1-1.4: new full-speed USB device number 13 using ehci-pci [10492.500520] usb 1-1.4: New USB device found, idVendor=2341, idProduct=...


1

If the folder is not needed then delete it. The Arduino IDE uses the folders in the library folder to search for library header files (ie. .h files). It expects one library in each folder. When it see's a folder without any header files in it, it will count this as an invalid library.


1

The Arduino.cc developers changed the bootloader on official Arduino Nanos to communicate at a different speed. Try setting Tools → Processor → ATmega328P (Old Bootloader)


1

I appreciate that this is an old post but I have recently been experiencing this problem. I found that the issue was caused when I had a wireless SD shield attached to the Arduino. Taking this shield off allowed me to upload. This occurred across 5 different Arduino's. After some more testing I found that switching the "serial select" toggle on the ...


Only top voted, non community-wiki answers of a minimum length are eligible