I am trying to transfer 256 bytes of at data 1M baud rate from my PC to an = Atmega328 microcontroller. I am using checksum to verify the integrity of t= he data and I am emptying the received data into a ring buffer as quickly a= s possible. This is all I have in my interrupt subroutine: temp =3D UDR0; BufferWrite(&rx_buffer,&temp);=20 The data is transferred properly only at speeds upto 250K baud rate. It res= ults in error beyond that point. The Atmega 328 datasheet specifies that it= possible to transfer at speeds upto 2M baud rate. The ring buffer size is = about 400 bytes and I am looking for some suggestions to achieve higher bau= d rates while maintaining the data integrity. Sai --=20 http://www.piclist.com/techref/piclist PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist .