Page 1 of 1

v-usb and atxmega?

Posted: Sun Nov 22, 2009 7:53 am
by kmo
Hi,

I have had good success with v-usb and the atmega88. I am now looking at starting a project with an ATxmega. Has anyone used v-usb on any xmega parts? If so, what modifications, if any, were required?

Thanks in advance

Re: v-usb and atxmega?

Posted: Thu Dec 16, 2010 2:10 pm
by ikalogic
any news about that... I want to jump into that way and try to port V-usb to atxmega.. but not sure i am enought confortable with USB to do so...

Re: v-usb and atxmega?

Posted: Thu Dec 16, 2010 7:38 pm
by ikalogic
Okay, can at least someone tell me if it is doable to port the V-USB to ATXMEGA? are there any know (failed) attempts?

Re: v-usb and atxmega?

Posted: Thu Dec 16, 2010 10:53 pm
by maxi
Sorry, I've not gotten hold of an xmega yet or I would gladly give it a shot. However, looking at the spec sheet I am confident that the xmega is easily capable of running a software usb stack. So I guess the only question is whether V-USB will compile and run without too much modification. Since the xmega uses the same instruction set as existing AVR products, the assembler sections should be ok but some changes will be required as some things are done differently on the xmega family, reading input pins is one example.

Out of curiosity I just tried compiling v-usb for Atxmega16, here is the error report.

Code: Select all

../firmware/usbdrv/usbdrv.c: In function 'isNotSE0':
../firmware/usbdrv/usbdrv.c:507: error: 'PINB' undeclared (first use in this function)
../firmware/usbdrv/usbdrv.c:507: error: (Each undeclared identifier is reported only once
../firmware/usbdrv/usbdrv.c:507: error: for each function it appears in.)
../firmware/usbdrv/usbdrv.c: In function 'usbInit':
../firmware/usbdrv/usbdrv.c:569: error: 'MCUCR' undeclared (first use in this function)
../firmware/usbdrv/usbdrv.c:569: error: 'ISC00' undeclared (first use in this function)
../firmware/usbdrv/usbdrv.c:569: error: 'ISC01' undeclared (first use in this function)
../firmware/usbdrv/usbdrv.c:574: error: 'GICR' undeclared (first use in this function)
../firmware/usbdrv/usbdrv.c:574: error: 'INT0' undeclared (first use in this function)
make: *** [usbdrv.o] Error 1
Build failed with 8 errors and 0 warnings...

Well that doesn't look too bad, does it? Nothing a few macros wouldn't fix there i'm sure (see last few lines of usbconfig.h). So in conclusion I am gonna say that yes, it is certainly doable but I would not expect the stock examples to work without some significant modifications.

Re: v-usb and atxmega?

Posted: Mon Dec 27, 2010 3:38 pm
by ikalogic
Thanks for the reply..

well, yes the modifications will be quite significant.. Even the way interrupts is handled in ATXMEGA is quite different. I've done a couple projects on an atXmega256A3.. and i've got to say, it is - of course - much more powerful than regular atmega, but the porting of VUSB will be tough, especially for someone like me who:
1-don't know that much about USB in general
2-don't know that much about the V-USB library.

I guess it would be amazing of someone from ObDev put some time on that issue, i am sure atXmega is the future of Atmel 8 bit micros.. so it is worth it.

My company has already bought a couple licences of V-USB, and we are willing to buy more couple licences if there is support for AtXmega. :)

Thanks,

Re: v-usb and atxmega?

Posted: Thu Jan 06, 2011 11:57 pm
by ganzziani
Similar to ikalogic, I am not much familiar with USB or the V-USB library, but I am looking forward for an XMEGA port.
maxi wrote:Sorry, I've not gotten hold of an xmega yet or I would gladly give it a shot.

I will be happy to donate an Xprotolab for you to implement the XMEGA port, or at least give it a try.
The Xprotolab is a small XMEGA based oscilloscope and I added the hooks for the V-USB library.

Re: v-usb and atxmega?

Posted: Fri Jan 07, 2011 8:57 am
by ayandatta_ece
Hi,
Can you please let us know the details of the fusebits you used to implement the v-usb in atmega88. We are trying it out in atmega 16, and finding that the device is not recognised. We are trying to implement the HID Bootloader for atmega 16.

Thanks in advance,

Ayan