I have a XMEGA-A1 Xplained board which I am building a fast data logger project. The XMEGA device is quite capable and as I have progressed with the development work, the amount of data is quickly growing. In my application, I am writing all the acquired data out to a PC. Currently via UART-USB brigde through the AT32UC3B1256 board controller. The UART-USB bridge works but is increasingly becoming a bottleneck with the data throughput. I am using 57600 baud on the UART, I have tried 115200 baud, couldn't make it work. I am trying to solve the data throughput bottleneck problem, here are some ideas:
1. Make the existing UART-USB bridge run at 115200 bd or faster? 115200 bd would only provide 2x speed-up, which would be less than I'd need. And I have read that 115200 bd is the maximum for the UART on XMEGA.
2. Could the AT32UC3B1256 board controller firmware be upgraded (via JTAG) to go above 115200 bd? Anybody know such solution? How about using the SPI or TWI, which are mentioned in AVR1924:
"The AT32UC3B1256 is also connected to the shared SPI and TWI lines, and so it is also possible to add TWI and SPI gateway functionality for these serial interfaces, if desired. This gateway functionality is not available in the default firmware for the AT32UC3B1256. Please refer to the schematics for more information about these connections."
Has anybody done this and could that enable 1M speeds for USB?
3. My data is in text format, in short lines like (nn.nnnn nnn.nn). Could I pack it using f.ex. ZIP protocol, transfer it over UART-USB in binary and save as ZIP file on PC?
4. Is it possible to make the board SDRAM available as mass storage via the AT32UC3B1256. My application could first do the data acquisition and organize it in file system format into a RAM disk. Then it could switch to mass storage mode and enable Access via UART/SPI/TWI-USB?
5. Should I upgrade to a more capable board with mass storage readily available (worst and last option)?
I'd welcome any thoughts, ideas and information on this issue.