Инженер-исследователь программного обеспечения Йорен Сикс придумал уникальный способ управления компьютером.
Он создал устройство, которое позволяет управлять курсором компьютера с помощью флейты, а не традиционной мыши. Проект получил название PiPePoPo.
Йорен использует для проекта плату разработки Arduino Nano RP2040 Connectи с чипом RP2040 для прослушивания флейты и обработки звука, после чего отправляет соответствующие команды для управления курсором компьютерной мыши. Кроме того, он создал расширение для браузера Chrome, которое позволяет флейтисту перемещать виртуальный курсор, а не реальный курсор компьютера в браузере.
Самым сложным аспектом этого проекта было определение частоты аудио, поскольку звук – это не просто одна волна, а комбинация множества различных частот с разной амплитудой. Для того чтобы найти основную частоту, была включена высоко оптимизированная библиотека, реализующая алгоритм YIN.
После того как частота была найдена, следующей задачей RP2040 Connect стало перемещение мыши в соответствии с шагом. Сикс настроил 4 различных взаимоисключающих диапазона, в которых положение курсора изменяется на заданное количество пикселей влево, вправо, вверх или вниз. Пятый, более высокий диапазон, заставляет отправлять событие щелчка перед запуском таймера охлаждения, который помогает предотвратить чрезмерное нажатие.
Более подробная информация о проекте PiPePoPo: https://0110.be/posts/Making_a_flute_controlled_mouse.
Йорен использует для проекта плату разработки Arduino Nano RP2040 Connectи с чипом RP2040 для прослушивания флейты и обработки звука, после чего отправляет соответствующие команды для управления курсором компьютерной мыши. Кроме того, он создал расширение для браузера Chrome, которое позволяет флейтисту перемещать виртуальный курсор, а не реальный курсор компьютера в браузере.
Самым сложным аспектом этого проекта было определение частоты аудио, поскольку звук – это не просто одна волна, а комбинация множества различных частот с разной амплитудой. Для того чтобы найти основную частоту, была включена высоко оптимизированная библиотека, реализующая алгоритм YIN.
После того как частота была найдена, следующей задачей RP2040 Connect стало перемещение мыши в соответствии с шагом. Сикс настроил 4 различных взаимоисключающих диапазона, в которых положение курсора изменяется на заданное количество пикселей влево, вправо, вверх или вниз. Пятый, более высокий диапазон, заставляет отправлять событие щелчка перед запуском таймера охлаждения, который помогает предотвратить чрезмерное нажатие.
Более подробная информация о проекте PiPePoPo: https://0110.be/posts/Making_a_flute_controlled_mouse.