more uart functionality