Pico Piano Helper de Adrian Cruceru usa MicroPython em um Raspberry Pi Pico W para ensinar uma nova melodia
O desenvolvedor Adrian Cruceru transformou um Raspberry Pi Pico W no cérebro de um "Piano Helper" - um dispositivo projetado para ensinar novas músicas iluminando as teclas que você precisa tocar, construído como um complemento para um existente em tamanho real teclado eletrônico.
"Este foi um pequeno projeto divertido", escreve Cruceru sobre sua criação. "É uma faixa de LED [RGB] baseada em WS2812B alinhada com teclas de piano. [Você] pode alimentá-la com arquivos MIDI convertidos e ela acenderá teclas a serem pressionadas em intervalos configurados ou carimbos de data/hora originais. Também possui um efeito de gradiente bacana."
A ferramenta é inspirada em teclados com iluminação embutida, projetada para ajudar a ensinar novas músicas aos usuários sem a necessidade de ler música à primeira vista, iluminando a próxima tecla na sequência quando estiver pronta para ser pressionada. Embora os tutoriais integrados sejam limitados no número de músicas suportadas, a criação do Cruceru é absolutamente ilimitada - suportando a conversão de músicas de arquivos MIDI para seu formato interno.
"Arquivos de música são arquivos de texto em [a] 'pasta de músicas' com informações de tempo", explica Cruceru. Eles vêm da conversão de arquivos MIDI. Para adicionar novas músicas, basta pegar quaisquer arquivos MIDI [e] convertê-los em arquivos de texto na pasta de músicas. Para a reprodução, você pode desacelerar conforme desejar com base nas opções."
A criação de Cruceru vem com uma abordagem interessante para alinhar os LEDs de uma faixa de iluminação comum com as teclas, e que evita a necessidade de soldar os componentes à mão" dobrando a faixa de circuito flexível e colando-a no lugar, permitindo que o a distância entre os LEDs deve corresponder à distância entre as teclas sem danificar a faixa.
O lado do software do projeto é escrito em MicroPython e usa o rádio Wi-Fi integrado do Raspberry Pi Zero W para fornecer acesso a uma página da web listando as músicas disponíveis - permitindo que uma música seja escolhida de qualquer dispositivo na rede, incluindo smartphones. A velocidade da reprodução também pode ser alterada, e Cruceru tem algumas ideias para melhorias futuras - incluindo o uso do microfone de um smartphone para detectar quando a tecla correta foi pressionada para feedback ativo.
O projeto está publicado na íntegra no GitHub sob a licença permissiva do MIT, com mais informações disponíveis no post de Cruceru no Reddit.