Продолжаю так же сражаться со стэком btstack. И чем дальше, тем всё сильнее убеждаюсь в справедливости высказывания о том, что если хочешь, чтобы что-то работало, сделай это сам -- оный стэк так залихватски запутан, что распутать его мне не хватает мозгов. Я добился того, что вроде бы нормально выполняется программа запуска протокола, в чипзаливается его бинарный конфиг,... но после этого по-прежнему ничего не происходит. Какие-то процессы идут, но ничего не работает. Как это починить, тоже непонятно: автор(ы) btstack постарались всё усложнить сверх меры. Хорошо, конечно, что они догадались отделить HAL от всего остального, но остальное осталось в дико перемешанном состоянии. Да и HAL тот крайне странный - вроде, задел на использование DMA есть, но "в лоб" использовать просто не получится. Нужно глубоко модифицировать этот слой, т.е. фактически заново всё написать (чем я и был занят последнюю неделю-две).
Однако, во время отладки всего этого написал простейший парсер HCI-событий. Осталось всего-ничего: прикрутить к нему конечный автомат и генератор HCI-команд и нижний-средний уровень bluetooth-стэка будет готов.