Шаблон репозитория больше подходит для кода, который будет использоваться для хранения данных, а не для обмена сообщениями.
Связь с устройством через последовательный порт лучше всего обслуживать с помощью шаблона проектирования издатель-подписчик.Ваши сообщения будут публиковаться приложением, а подписчик последовательного порта будет получать эти сообщения и обрабатывать специфичные для последовательного порта команды.
Конечно, вероятно, существует более одного шаблона, который будет соответствовать вашим требованиям,но вы должны решить, какой из них лучше всего подходит для вашего сценария.