update uart driver (almost working)