Page 1 of 1

Automator, WinAVR, AVR Studio ELF Link Error

Posted: Sat Sep 01, 2007 4:13 am
by Steve
1st, thanks for the head start on my HID project.

I am in the initial stages of planning for a custom HID product, and need to complete a "roadmap" document describing the requirements of the project.

One requirement is to estimate how much space we will have once the USB-AVR firmware is loaded. To do this, I downloaded the Automator firmware files and after some work got the source code to compile with WinAVR and AVR Studio.

I could not get an ELF file produced until I commented out two lines in the usbdrv.c file They were lines 229 and 464 in the call to usbCrc16Append().

This should be a screen shot of the AVR Studio output during the error.

Image

I've found the function in usbdrv.h, but can't seem to figure out why the error. I've got the .h file inculded in main.c.

Posted: Sat Sep 08, 2007 8:34 pm
by christian
I guess you compiled the wrong file for the assembler module. Please enter usbdrvasm.S in your project makefile, not one of the specific files. This file contains the usbCrc16Append() function.

If you just want to evaluate the size, download PowerSwitch. If you define the TEST_DRIVER_SIZE macro, it compiles the minimum functional do-nothing USB device with the driver.

Re: Automator, WinAVR, AVR Studio ELF Link Error

Posted: Mon Nov 23, 2009 11:09 pm
by leederKrenon
Apologies in advance if this post is irrelevant or just plain dum:

I also have had to comment out calls to usbCrc16append() in order to get the UsbJoystick library to build.
I have checked (to limit of my ability) that the file usbDrvAsm.S is included in the build.

I am using arduino version 17 running on windows XP.

The UsbJoystick library seems to be a few fixes behind the usbDevice project. I had to make the fixes detailed in this thread before the usbCrc16append() problem became apparant.

Re: Automator, WinAVR, AVR Studio ELF Link Error

Posted: Tue Nov 24, 2009 12:58 pm
by christian
You probably have included assembler parts multiple times or multiple assembler parts. Please see the Makefile provided with our reference projects to see which object files must be linked.