I am new to the Arduino environment. I can not get Arduino 1.8.5 to talk to my Arduino PRO through a USBasp device. I have defined my board as a 'Arduino PRO or PRO mini', my processor as 'ATmega328P(5V, 16MHZ)', my programmer as 'USBasp'. I have tried two USBasp programmers, one is an old LC Technology V2.0, the other is a new 'Atomic Market USBasp AVR Programming Device'.
They both seem to NOT work the same way. I am using the 10 pin to 6 pin converter plugged into a 6 pin header on the Arduino Pro.
When I compile and try to download I get the following messages:-Arduino: 1.8.5 (Windows 10), Board: 'Arduino Pro or Pro Mini, ATmega328P (5V, 16 MHz)'Sketch uses 928 bytes (3%) of program storage space. Maximum is 30720 bytes.Global variables use 9 bytes (0%) of dynamic memory, leaving 2039 bytes for local variables. Maximum is 2048 bytes.avrdude: seropen: can't open device '.COM1': The system cannot find the file specified.Problem uploading to board.
Libusb Com Port
See for suggestions.This report would have more information with'Show verbose output during compilation'option enabled in File - Preferences.-The Device Manager reports the USBasp as a 'libusb-win32 devices' 'USBasp'Device Type libusb-win32 devicesI am using the drivers from www.fischl.de as defined by Atomic Market.The USBasp device reports 'The device is working properly.' The Arduino PRO does light up when everything is plugged in.It appears that I can not communicate at all with the Arduino PRO.The 'Port' option under 'Tools' is grayed out.Design Manager does report the USBasp Properties, Location as Port#0001.Hub#0001.I don't know if this 'Port' is the same as or similar to a COM Port?Any assistance would be greatly appriciated. Thanks for the quick responce. I was not aware of the shift key usage.I recompiled and used the shift key to upload.Here is the new response:-Arduino: 1.8.5 (Windows 10), Board: 'Arduino Pro or Pro Mini, ATmega328P (5V, 16 MHz)'Sketch uses 928 bytes (3%) of program storage space.
Maximum is 30720 bytes.Global variables use 9 bytes (0%) of dynamic memory, leaving 2039 bytes for local variables. Maximum is 2048 bytes.avrdude: Warning: cannot query manufacturer for device: No such file or directoryavrdude: Warning: cannot query product for device: Input/output erroravrdude: error: could not find USB device with vid=0x16c0 pid=0x5dc vendor='www.fischl.de' product='USBasp'avrdude: error: could not find USB device with vid=0x16c0 pid=0x5dc vendor='www.fischl.de' product='USBasp'This report would have more information with'Show verbose output during compilation'option enabled in File - Preferences.-Seems to be a device definition problem? You are saving me hours of time and frustration.I now can upload the Blink sketch. I see activity on the USBasp and the Arduino lights.I have also burned the bootloader.I do not see the Blink program running. What do I do to start it?What is the purpose of the Bootloader.Should the Bootloader and the Sketch both be on the Arduino together for general usage?Is there someplace I can get this type of information.I thought I was following the introduction But I did not see this type of info.I may have gotten sidetracked due to my USBasp problems. The bootloader allows you to upload sketches to the microcontroller via serial. It's just some code running in a special area of the microcontroller's memory that takes data from the serial line and writes it to flash memory.
That code runs every time the microcontroller is reset.Most Arduino boards have a USB-serial chip so you can just plug the board into your computer with a USB cable, select the virtual com port that was created by the USB-serial chip from the Tools Port menu, and click the Upload button. Best dvd player software. It's much less common to do an 'Upload using programmer' in the Arduino world.
The Arduino Pro does not have a USB-serial chip on it. Instead it has an 'FTDI header' that you can plug an external USB-serial adapter breakout board or cable.The benefit to uploading over serial is that typically in the Arduino world serial prints are used for debug output.
So if you already need to have a serial connection to your computer, why not use it for uploads as well as debug communication, etc.?The downside to uploading over serial is it requires the bootloader. The bootloader takes up some of your flash memory. If you use the USBasp programmer to upload to your Arduino then you can use the full 32 kB of flash memory. Unfortunately the hardware definition for the Pro or Pro Mini reserves the boot section of flash whether you are doing an Upload or an Upload Using Programmer so you would only actually be able to use that memory if you used a different hardware definition, modified the definition, or used AVRDUDE directly from the command line.What you need to remember is that whenever you do an Upload Using Programmer it erases the bootloader so you can no longer do a standard Upload until you have burned the bootloader again. Also, every time you do a Burn Bootloader it erases the sketch you have uploaded to the board. So the only way (using the Arduino IDE) that you can have the bootloader and the sketch on your microcontroller at the same time is to do a burn bootloader and then an upload via serial.Another thing to note is that when you do a Burn Bootloader it also sets the fuses according to the settings in the hardware definition for the currently selected board.