Substantial changes and uart implementation