add rough implementation of actual tx/rx