Colegas, tenho uma novidade incrível para quem gosta de música e sintetizadores!
Encontrei um projeto opensource de um sintetizador usando o RaspBerry Pi, com qualidade de som fenomenal.
Você vai precisar de:
- um Raspberry Pi 3 ou 4 (acho que o Zero funciona)
- placa I2S de audio
- display
- chave rotatória (rotary encoder)
- GPIO expander
Link do projeto:
https://github.com/probonopd/MiniDexed
Vou montar um. Quem quiser me acompanhar, fique à vontade para perguntas.
Para tocar os instrumentos no Raspberry Pi, vai precisar de teclado MIDI (com interface USB).
Tenho estudado sobre sintetizadores, MIDI desde a muitos anos. A teoria eu sei muito, mas não tinha verba para desembolsar em um sintetizador. Apesar de não saber tocar um...
Dá uma olhadinha nesse vídeos :
Tags:
Galera boa noite,
Consegui montar grande parte do miniDexed!
Mas faltam algumas coisas. Como por exemplo, a interface MIDI.
Aguardem, pois assim que possível, irei postar tudo o que eu fiz.
O tutorial do Floyd Steinberg me ajudou bastante:
A montagem do hardware foi baseado nesse link:
https://github.com/probonopd/MiniDexed/wiki/Hardware
Usei um LCD 16x2 com interface I2C para simplificar as conexões com o Raspberry Pi.
Eu fixei o LCD/Interface I2C com dois suportes de bronze.
Não quis conectar a interface I2C do display diretamente no Raspberry, pois ela é 5V.
Para converter os pinos SCL e SDA (I2C) de 5V para 3,3V, usei um conversor bidirecional de nível lógico.
Como eu não tinha o Encoder KY-040, montei o circuito com o encoder que eu tinha, com resistores e capacitores.
Para não ter que usar o switch do encoder, acrescentei uma mini chave botão. Acho que ficou muito melhor.
Aguardem!
Boa noite colegas,
Estou montando o turorial também no Github:
https://github.com/Gustavomurta/miniDexed_RaspPi_synthesizer
Montando o Display LCD com interface I2C:
Guia Completo do Display LCD – Arduino
LCD 16×2 com Interface I2C:
Nesse módulo I2C, resistores de PULL UP (4,7 K ohms) já existem.
Portanto acrescentei resistores de 10K conectados ao terra, para reduzir a tensão da interface para 3,3V.
Dessa forma, não é necessário o conversor de nível lógico (de 5V para 3,3V).
O chip PCF8574 possui alguns endereços I2C já definidos, dependendo do modelo (identifique o chip do seu módulo):
O potenciômetro Azul nessa interface é usado para ajuste do contraste.
Após o Display energizado e programado, ajuste-o para tornar a imagem visível.
O jumper LED é usado para ativar o LED Backlight.
Clique na imagem para ampliá-la.
Teclado para o miniDexed:
Para tocar o multi-instrumento miniDexed, é necessário o uso de um teclado MIDI. Teclado MIDI só serve para enviar as notas musicais, os parâmetros e a duração de cada uma, para um sintetizador onde o som é gerado.
No meu caso, para testes estou usando um mini teclado MIDI da AKAI - modelo MPK Mini que é da minha filha. A interface MIDI é transimitida pela USB, como a maioria dos teclados MIDI atuais. Hoje também existe MIDI através do Bluetooth. O miniDexed suporta MIDI através da USB.
https://www.akaipro.com/mpk-mini-mkii
Outra opção existe para uso com o miniDexed - é a interface MIDI original, antiga usando aqueles cabos com conectores RCA. Mas é preciso montar um circuito com acopladores óticos.
Interface MIDI clássica :
https://diyelectromusic.wordpress.com/2022/07/28/minidexed-raspberr...
https://github.com/diyelectromusic/sdemp_pcbs/tree/main/RpiMiniDexe...
ou
https://github.com/gmcn42/clumsyMIDI
clique na imagem para ampliá-la
Se você não tem um teclado MIDI (não são baratos), não se desepere, pois pretendo no futuro divulgar um projeto de Teclado MIDI - USB. Esse projeto pode ser uma demonstração de como ele será.
Preparando o SD card do Raspberry Pi:
Observação importante:
Como estou usando um Raspberry Pi Zero, o meu miniDexed emula somente um Sintetizador DX7. Se for usar um Raspberry Pi 3B ou modelo 4, poderá ter até 8 sintetizadores DX7 (Geradores de Tons) ! Para quem esta começando, acho que é um exagero.
Instruções de como criar o SD card estão no link abaixo:
https://github.com/probonopd/MiniDexed
Mas vou explicar tudo detalhadamente!
1) Baixe no seu PC, o arquivo zipado do link abaixo - MiniDexed_2023-07-09-571816f.zip
https://github.com/probonopd/MiniDexed/releases
(O nome do arquivo poderá mudar após atualizações da versão)
2) Descompacte o arquivo zipado no seu PC. Dentro da pasta descompactada, precisará editar alguns arquivos de configuração do miniDexed.
3) Como estamos usando o módulo DAC PCM5102, é necessário alterar a configuração. Abra o arquivo minidexed.ini com qualquer editor de texto, como o editor de notas do Windows.
# Sound device
SoundDevice=i2s <= retire o caracter # para selecionar I2S do PCM5102
#SoundDevice=pwm <= acrescente o caracter # para desativar essa opção
#SoundDevice=hdmi
SampleRate=48000
#ChunkSize=256
DACI2CAddress=0
ChannelsSwapped=0
4) Ainda no arquivo minidexed.ini:
Se estiver usando o LCD 16x2 com interface I2C como eu montei, mude o endereço I2C para 0x3F ou 0x20, dependendo do endereçamento do chip PCF8574A da interface. Salve as alterações no arquivo.
# HD44780 LCD
LCDEnabled=1
LCDPinEnable=17
LCDPinRegisterSelect=4
LCDPinReadWrite=0
LCDPinData4=22
LCDPinData5=23
LCDPinData6=24
LCDPinData7=25
LCDI2CAddress=0x3F
5) Gravando os arquivos SYS dos instrumentos musicais:
Veja no próximo tópico, mais informações sobre os arquivos SYS.
6) No arquivo performance.ini poderá editar algumas configurações, como o ajuste do volume do som de cada Tone Generator:
# TG1
BankNumber1=0
VoiceNumber1=1
MIDIChannel1=255
Volume1=10 (ajuste 0 a 100)
7) Copie toda a pasta descompactada e já configurada em um micro SD Card (Classe 10). O cartão SD deve ser antes formatado no Windows, com o formato FAT32. Insira o SD Card no Rasp Pi.
Acople um amplificador de som (abaixe o volume) na saída do módulo PCM5102. Conecte um teclado MIDI na USB do Rasp Pi e ligue a fonte do miniDexed! Pronto para testá-lo!
Se o seu não funcionar, me avise.
Carregando os arquivos de Instrumentos - SYS:
Como eu informei no tópico anterior:
Gravando os arquivos SYS dos bancos de instrumentos musicais: (cada banco possui 32 instrumentos)
Esses bancos são na verdade derivados dos cartuchos do sintetizador original Yamaha DX7.
Nos meus testes iniciais, veja como eu identifiquei os arquivos. Inseri uma numeração na frente do nome do arquivo, para facilitar a seleção dos Bancos de Instrumentos (Bank), no display LCD do miniDexed.
Na pasta sysex/voice
0001_ROM1A.syx
0002_ROM1B.syx
0003_ROM2A.syx
0004_ROM2B.syx
Mas onde conseguir esses arquivos de bancos de instrumentos?
Você poderá baixar o arquivo zipado Dexed_cart_1.0.zip no link abaixo:
http://hsjp.eu/downloads/Dexed/
Nesse link abaixo existem uma grande quantidade de cartuchos!
http://synthzone.com/midi/yamaha/dx7/
Descompacte os arquivos zipados e copie os arquivos SYS na pasta sysex/voice.
Mas atenção na organização dos arquivos.
exemplo:
Dexed_cart_1.0\Dexed_cart_1.0\Original Yamaha\DX7 ROM1
ROM1A.syx
ROM1B.syx
copie somente os arquivos tipo SYS.
====================================================
Dica interessante:
Você pode testar todos os instrumentos de todos os cartuchos (arquivos SYS) usando o emulador de sintetizador DEXED no seu PC:
https://asb2m10.github.io/dexed/
Qualquer arquivo .syx no diretório Cartridges estará disponível na janela "CART". Encontre este diretório usando o botão "CARRINHO" e depois o botão "MOSTRAR DIR".
Você pode arrastar e soltar qualquer programa DX7 do que está carregado no dexed e/ou do que você carregou no navegador do cartucho.
Clicar duas vezes em um programa carregará o programa atualmente selecionado no plug-in.
==========================================
Se quiser aprender sobre o funcionamento do Yamaha DX7, recomendo esse livro:
http://synthzone.com/midi/yamaha/dx7/The%20Complete%20DX7.pdf
Algumas paginas da Wiki do miniDexed: (recomendo a leitura de todos os itens)
Mini-amplificador de aúdio:
Para amplificar o som stéreo do Audio DAC PCM5102, eu usei um módulo PAM8403:
Data sheet PAM8403:
https://www.mouser.com/datasheet/2/115/PAM8403-247318.pdf
O PAM8403 é um amplificador de áudio classe D de 3 W. Oferece baixo THD+N,
permitindo-lhe obter uma reprodução de som de alta qualidade. Alimentação com 5V.
Wiki do módulo PAM8403:
https://www.sunrom.com/p/stereo-audio-amplifier-pam8403
Para a alimentação do miniDexed, usei um regulador LM2596.
Alimentei o LM2596 com uma fonte de 12V (pode ser 9V também).
Ajustei a tensão de sáida do regulador para 5,15V.
O regulador LM2596 pode alimentar o Raspberry Pi, o mini-amplificador PAM8403 e o teclado MIDI através de uma conexão USB adaptada.(depois eu explicarei).
Na entrada do circuito do mini-amplificador PAM8403 usei um potenciômetro duplo de 10K ohms linear.
Para conectar as mini caixas de som eu interliguei as sáidas com dois capacitores de 47uF/25V (um em cada canal).
Usei duas mini caixas de som Pioneer (antigas) com 6 ohms e 100W! Era o que eu tinha aqui e são de ótima qualidade sonora. Recomendo caixas de som com no mínimo 5W.
Para conectar o fone de ouvido stéreo (headphone), acrescentei dois resistores de 100 ohms em série, um em cada canal. Se for usar o headphone, desconecte as caixas de som.
OBS: quando for usar o headphone, ajuste o potenciômetro para o mínimo. Depois ajuste o volume. O som poderá estar ajustado para um volume muito alto!
Diagrama do circuito do meu mini amplificador:
Procedimentos para operação do miniDexed:
Aqui estão todas as instruções de operação do miniDexed.
Se tiver alguma dúvida, me pergunte. Sugiro que veja os vídeos já citados.
https://github.com/probonopd/MiniDexed/wiki/Menu#menu-tree
Muito interessante isso aqui :
performance.ini
ou para o performance
diretório. A bandeira "[L]" no canto superior esquerdo da tela indica o arquivo de performance carregado no momentoperformance.ini
performance
diretórioperformance.ini
arquivo padrão, substituindo-o. Esta performance será carregada toda vez que o dispositivo for ligadoperformance.ini
arquivo de desempenho padrão não pode ser excluídoEste é meu primeiro protótipo montado com um Raspberry Pi Zero (modelo antigo). E o Audio DAC PCM5102 funciona muito bem. Usei um display LCD com interface I2C e um regulador LM2596 para fornecer 5V para todo o miniDexed. Ajuste a saída de 5V antes de conectar qualquer circuito!
Para testar o miniDexed, estou usando um teclado Akai MPK mini MIDI, conectado na porta USB. Para não sobrecarregar os 5V do Raspberry Pi Zero, adaptei o conector USB (fonte de alimentação 5V separada).
E para amplificar o som, usei um mini-amplificador PAM8403 que pode ser conectado a caixas de som (3W) ou a um Headphone. Muito feliz!
Se alguém tiver algum problema ou dúvida em relação ao projeto, pode me pedir ajuda.
https://github.com/Gustavomurta/miniDexed_RaspPi_synthesizer/tree/main
Bem-vindo a
Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)
© 2024 Criado por Marcelo Rodrigues. Ativado por