StepperMulti - позволяет асинхронно управлять шаговыми двигателями. Библиотека работает без блокировки потока программы. Можно одновременно крутить двигателем и делать что-то еще, например, мигать лампочкой или крутить еще одним двигателем.
В основу моей библиотеки лег код из известной библиотеки Stepper, которая проста в использовании, но блокирует программу на время управления двигателем.
Моя библиотека была написана еще пару лет назад, но до публикации руки дошли только сейчас. Процесс публикации оказался крайне простой, нужно сделать pull request с добавлением url своей библиотеки в списке library-registry. Далее все в руках робота, который проверяет добавленный репозиторий на соответствие требованиям и, если все хорошо, мерджит. После чего примерно в течении суток библиотека будет доступна для поиска и установки в Arduino IDE.
Куда сложнее было написать документацию и подогнать репозиторий под требования к публикуемым библиотекам. Затраченное время окупилось и все получилось с первого раза. Теперь моя библиотека доступа всем желающим.
Хорошо, что процесс публикации полностью автоматизирован и проходит без участия человека. В противном случае были опасения, что может произойти ситуация, аналогичная той, что случилась в сообществе разработчиков ядра Linux, когда линус торвальдс (я намеренно пишу его с маленькой буквы в знак неуважения) исключил российских разработчиков из списка ответственных (maintainers). Сделано это было без внятных причин, просто по наличию емейла в зоне .ru. Это чудовищная несправедливость и, надеюсь, она не повторится в других сообществах разработки открытого ПО.