remove AsyncCall + use buffered input for LCD