Пока рассматриваю два варианта.
Первый конечно проще, но еще не проверен и будет сильно грузить ресурсы процессора потому что шину нужно будет опрашивать постоянно каждые 100мс
Думаю нгужно попробовать оба варианта.