I am trying to build the Arduino firmware on Win7 using WinAVR and FLIP. I have successfully built the firmware and have a "arduino-usbserial.hex" file to upload, but when I flash the Uno and plug it back in to my computer Windows no longer recognizes the device and won't use the Arduino drivers for it. If I reflash to the "arduino-usbserial-uno.hex" file that comes in the folder everything works fine. Am I missing a part of the build process? My steps are

  • set arduino to DFU mode (connect jumper and release)
  • make clean
  • make all
  • manually download with Flip via USB (run, start application, then unplug and plug in)

The makefile has the ARDUINO_MODEL_PID set to 0x0001 and MCU = atmega8u2

Thanks!

up vote 3 down vote accepted

Okay, problem found. The Vendor ID and the Product ID of the firmware was changed in subsequent non-factory firmware releases which prevented the Arduino drivers from recognizing it. The solution is to use either the drivers in the LUFA project folders, or change these lines in Descriptors.c

.VendorID               = 0x03EB, // Atmel
.ProductID              = 0x204B, // LUFA USB to Serial Demo Application

to this

.VendorID               = 0x2341, // Arduino
.ProductID              = 0x0001,

Hope this helps someone in the future.

Your Answer

 
discard

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.