Autor |
Mensagem |
kiki Moderador |
# abr/18
· votar
Casper Mas quem quiser transformar algum teclado inutilizado em controlador MIDI, tem um monte de projetos na internet que é só copiar:
Eu arrumei um keytar de Rock Band 3, serve como controlador midi!
|
Casper Veterano
 |
# abr/18
· votar
Caro Beto Guitar Player:
Eu só estou juntando pedaços das ideias de outras pessoas. Eu sou incapaz de fazer o que as bibliotecas MIDI e Mozzi fazem. E qualquer contribuição será bem vinda.
|
Casper Veterano
 |
# abr/18
· votar
Caro kiki:
100%:
https://spinditty.com/artists-bands/Rockband-3-Keyboard-as-a-MIDI-Cont roller
|
kiki Moderador |
# abr/18
· votar
Casper Legal! Eu tô usando ele com um synth mesmo, um Korg volca Mas eu queria fazer ele no mozzi, igual vc tá fazendo. Tem um amigo me ajudando (eu manjo muito pouco dessas partes eletrônica)
|
kiki Moderador |
# abr/18
· votar
A gente já tá usando o mozzi apenas como theremin https://www.instagram.com/p/Bg-UWS-gsg2/
|
kiki Moderador |
# abr/18
· votar
http://synthino.com/
|
Casper Veterano
 |
# abr/18
· votar
Caros colegas:
Estou ausente nesses dias porque estou viajando a trabalho, mas continuo (em ritmo mais lento) trabalhando nesse projeto. Minhas encomendas do e-bay estão a caminho.
Alguém já instalou o Mozzi para testar?
|
xmarhunterx Membro Novato |
# mai/18
· votar
Casper E como vai o projeto?
|
Casper Veterano
 |
# mai/18
· votar
Ainda não retornei, e não chegaram oa arduinoa. Mas já adiantei um pouco do código MIDI
|
xmarhunterx Membro Novato |
# mai/18
· votar
Casper Mais de um mês e os arduinos ainda não chegaram? Cara, esse treco custa 40 conto aqui, pra que comprar do aliexpress?
|
kiki Moderador |
# mai/18
· votar
Casper E aí mano, beleza? Você é de SP, né? Descobri recentemente que existe um grupo aberto de Arduíno no Fab Lab Livre da Galeria Olido, às quintas de tarde. Eu tô esperando ter uma folga no trabalho pra ir lá conhecer.
xmarhunterx Casper Mais de um mês e os arduinos ainda não chegaram? Cara, esse treco custa 40 conto aqui, pra que comprar do aliexpress? Pois é, eu fui até a luz e comprei ali na região da Santa ifigênia. Mas depende se ele encomendou em quantidade, ele queria usar um Uno e 5 Nano, pode valer a diferença (porém, a previsão atual é de enroscar beeeeeem nos correios.
|
rodolfo1982 Veterano |
# jun/18
· votar
Casper Show de bola esse tópico, pena que só ví agora.
Fiquei sem olhar o fórum por uns meses, e agora me deparei com este tópico show de bola ! Bom, se eu puder contribuir... eu montei um sintetizador, e meu prof. orientador do mestrado montou também.
Vou postar aqui alguns links para quem quiser olhar/ler. Tô com pouco tempo para acessar o fórum, mas posso ajudar e contribuir como for possível.
Aqui o código-fonte do synth que eu criei: https://github.com/rppirotti/rgsynth
Nunca fiz um vídeo pra demonstrar ele todo, mas tenho esse abaixo, quando ainda era um protótipo: https://www.youtube.com/watch?v=asuycIvozhg
No vídeo acima eu usei ele como MIDI, mas na versão final tenho ele anexado em um teclado de um Casio antigo.
Aqui página no face com fotos e vídeos: https://www.facebook.com/arduinoduesynth/
Bom, espero que isso ajude. Qualquer coisa é só perguntar...
|
Casper Veterano
 |
# jun/18
· votar
Caro rodolfo1982:
Ainda estou em viagem se trabalho, por mais um mês. Olhei rapidamente seu código... parabéns!
Tem mais detalhes do hardware em algum lugar?
Obrigado por compartilhar seu conhecimento.
|
rodolfo1982 Veterano |
# jun/18 · Editado por: rodolfo1982
· votar
Casper Grande Casper !
Sim ! Na verdade, a implementação desse synth foi parte da minha dissertação de mestrado. O arquivo da dissertação pode ser encontrado no link abaixo (é o repositório digital da UFRGS, podem clicar sem medo).
http://hdl.handle.net/10183/157542
Lá tem o capítulo de desenvolvimento prático com detalhes (e recomendo também olhar as referências - algumas me ajudaram muito no desenvolvimento).
Um dos principais pontos que eu cito é o algoritmo PolyBLEP, para gerar osciladores sem aliasing. Melhora muito a qualidade do som (para formas de onda com descontinuidade, como quadrada, dente-de-serra, etc).
Outro ponto interessante é a abordagem para usar síntese aditiva (usando a ideia dos osciladores do Hammond) de forma mais eficiente. Tem um capítulo sobre isso, mas sem muitos detalhes. Porém eu aponto algumas referências que detalham mais.
|
Casper Veterano
 |
# jun/18
· votar
Caro rodolfo1982:
Lerei tudo, com certeza. Minha abordagem é diferente: decidi usar o arduino mais simples com biblioteca Mozzi. Seu projeto utiliza um processador muito mais requintado.
Meu objetivo é fazer um sintetizador extremamente simples e acessível.
Mas tenho certeza que a leitura de seu texto irá ajudar muito.
Obrigado!
|
rodolfo1982 Veterano |
# jun/18
· votar
Casper Tens razão.
Meu objetivo era um misto entre qualidade e custo/benefício. Eu queria algo simples e barato, mas que tivesse uma qualidade de áudio "mínima". E por qualidade de áudio, no meu caso me refiro à não existência de aliasing no sinal de saída (que para ondas quadradas e dente-de-serra em síntese subtrativa são bem chatas) e também um DA de alta qualidade na saída (com baixo nível de ruído).
Mas ainda considero o Due um processador barato pois não usei unidade de ponto flutuante em HW, e isso deixa uma ampla gama de processadores baratos possíveis (especialmente ARMs M0, M3 e similares). Mas ainda assim foquei em processadores 32 bits (e não 8 bits como esses Arduinos mais baratos). BTW, tu encontra o Arduino Due por uns 100 reais por aí ou menos (mercado livre).
No caso do Aruino Nano ou menores, realmente não dá pra fazer tudo o que fiz. Mas se tu fores utilizar síntese subtrativa (e já que está fazendo experimentos) recomendo se for possível testar esses algoritmos anti-aliasing (PolyBLEP), pois melhoram muito a qualidade de saída.
Hoje, se eu fosse continuar meu projeto, tentaria usar o Teensy 3.2. É mais caro (em torno de 200 reais aqui no Brasil comprado em loja - deve ter mais barato vindo da china), mas é um processador com FPU, ou seja, dá pra fazer maravilhas com ele.
Por fim, realmente para fazer um synth bem barato e simples, usar o Mozzy como referÊncia é um ótimo ponto de partida.
Valeu !
|
Jonathas Lacerda Veterano |
# jun/18 · Editado por: Jonathas Lacerda
· votar
rodolfo1982 E se considerarmos módulos como nodeMCU (ESP8266) ou ESP32, que hoje custam equivalentes ao preço de um arduino uno?
|
Casper Veterano
 |
# jun/18
· votar
Caro Jonathas Lacerda:
Eu descobri que existia o Teensy 3.2 quando instalei o Mozzi. Me parece realmente uma excelente opção, com um custo intermediário.
Mesmo assim vou dar andamento no projeto usando uno/nano, que são (acredito eu) os módulos mais baratos e mais populares hoje em dia. Sei que isso implica em sacrificar a qualidade final do áudio, mas faz parte.
Lerei com calma todas suas referências. Novamente obrigado!
|
Casper Veterano
 |
# jun/18
· votar
Caro Jonathas Lacerda:
Sobre o ESP8266, eu não sei ao certo, tem que pensar sobre o ambiente de programação. Eu sei que fazer coisas simples com lua é tarefe simples, mas em C++ já ouvi muita gente falando que patina bastante.
A escolha do arduino se deve principalmente pela facilidade do IDE, que realmente é de fácil acesso até para quem nunca usou.
E gostaria que o projeto tivesse essa característica: atrair novos usuários.
|
Jonathas Lacerda Veterano |
# jun/18
· votar
A ESP8266 também funciona com a IDE do Arduino e aceita código em C++.
|
Cleber Vaz Veterano |
# jun/18
· votar
Casper
Excelente ideia/tópico. Parabéns pela iniciativa Apesar de programação ainda não ser tão popular entre tecladistas, não me parece exagero sugerir que este tópico seja fixo pois cada vez mais arduino e similares estão se tornando mais populares e é muito importante concentrar essas informações para a comunidade diy.
Sintetizadores analógicos sempre foram a minha praia mas quando comecei a pensar em construir um "string machine" a ideia de programar ficou extremamente tentadora, pela economia de hardware, sem falar no fato de poder optar facilmente por usar midi e não acumular teclados.
Acompanhando!
|
rodolfo1982 Veterano |
# jun/18
· votar
Jonathas Lacerda Sobre o ESP8266/ESP32, pelo que lí ele parece ter um processador muito similar ao Arduino Due, que eu utilizei. Neste caso seria possível sim usar ele para fazer algo similar ao que eu fiz, e com mais poder de processamento que usando o Arquido Nano/Uno.
Só não encontrei muitos detalhes sobre o processador utilizado no ESP32. Achei apenas que é 32 bits e roda a 160Mhz, mas não consegui comparar sua eficiência diretamente com um ARM M0 ou M3, por exemplo.
|
Casper Veterano
 |
# jun/18
· votar
Caro rodolfo1982:
Em uma pesquisa rápida também não consegui muita informação útil sobre os ESP32. Eu ví que existem versões de 80Mhz e de 160Mhz, ambas com bastante ROM e RAM. Quem sabe em um próximo projeto...
|
Casper Veterano
 |
# jun/18
· votar
Links interessantes para quem está interessado no projeto:
http://linksprite.com/wiki/index.php5?title=MIDI_Shield_for_Arduino
https://www.farnell.com/datasheets/1682209.pdf
http://www.farnell.com/datasheets/1682238.pdf
Abaixo o Mega, para quem quiser colocar display e/ou outras firulas:
http://www.farnell.com/datasheets/810077.pdf
|
Casper Veterano
 |
# jun/18
· votar
Chegaram os nano, depois de 2 meses!
Já estou com tudo pronto para montar:
1 arduino uno 1 shield MIDI para uno 8 bases para nano 8 arduinos nano (na verdade 20) 1 fonte 12V x 1A (exagerada)
Daqui a 6 dias iniciarei os trabalhos.
|
Casper Veterano
 |
# jul/18 · Editado por: Casper
· votar
Fiz um Blog para o projeto, mas continuarei a postar antes por aqui.
http://menegasso.blogspot.com/2018/07/fentuino-sintetizador-com-arduin o.html
Todas as informações relevantes estarão lá e aqui.
Habilite o Menu Lateral para vert tudo que está lá.
|
Casper Veterano
 |
# jul/18
· votar
Primeira implementação do Arduino master, que distribui as notas para os outros arduinos:
https://menegasso.blogspot.com/2018/07/distribuindo-as-notas-entre-os. html
|
Casper Veterano
 |
# jul/18
· votar
Atualização dos pinos do Uno (master):
//========================================================= // Project: Fentuino Open Source Musical Synthesizer // Module: Arduino Uno (Master) // V1.10 // 12/07/2018 // // MIDI Library: // https://github.com/FortySevenEffects/arduino_midi_library // Serial Library: // http://gammon.com.au/Arduino/SendOnlySoftwareSerial.zip // // Hardware // 0 - RX (MIDI In) // 1 - TX (MIDI Out) // 2 - "All Notes Off" (Panic) - Active on 0 (pull-up) // 3 - SERIAL OSC1 (31250 Hz) // 4 - SERIAL OSC2 (31250 Hz) // 5 - SERIAL OSC3 (31250 Hz) // 6 - SERIAL OSC4 (31250 Hz) // 7 - SERIAL OSC5 (31250 Hz) // 8 - SERIAL OSC6 (31250 Hz) // 9 - SERIAL OSC7 (31250 Hz) // 10 - SERIAL OSC8 (31250 Hz) // 11 - CH1_LED // 12 - CH2_LED // 14 (A0) - CH3_LED // 15 (A1) - CH4_LED // 16 (A2) - CH5_LED // 17 (A3) - CH6_LED // 18 (A4) - CH7_LED // 19 (A5) - CH8_LED //=========================================================
|
Casper Veterano
 |
# jul/18
· votar
Atualização do estado atual de montagem:
Fazendo uns testes para ver se mudo a comunicação serial por software (SendOnlySoftwareSerial) para uma saída TX apenas no master, da UART, que vai para os 8 RX dos nanos.
Hoje: O Uno recebe o MIDI no canal 1 e manda o MIDI individualmente para cada oscilador, que também responde no canal 1 (individualmente). Prós: A mesma programação em todos os Nanos, e o MIDI OUT funciona perfeitamente Contra: Mais fios passeando, implementação de 8 seriais por software (que são uma merda).
Teste: O Uno recebe o MIDI no canal 1, e manda pela mesma serial para os 8 Nanos, cada um em um canal exclusivo (de 1 a 8, internos). Prós: Mais estabilidade, menos fios Contras: O MIDI OUT morre (mas eu não ia usar mesmo) e dada Nano tem um endereço diferente, que pode ser resolvido de muitas formas, não decidi qual é a melhor.
Essa questão do serial atrasou o projeto, mas estou caminhando para uma solução definitiva.
|
TrebleH Veterano |
# jul/18
· votar
Bom dia galera blz? Tô um tanto por fora e não pude nem ler direito o que tá rolando... mas talvez alguma dica possa ajudar:
1 - Sobre o MIDI OUT morrer, talvez seja por algum problema de alimentação mesmo. É bom verificar se o Arduino sozinho é capaz de gerar a corrente necessária para alimentar a comunicação do dispositivo.
2 - Sobre a questão dos fios, talvez, pelo menos na comunicação com o arduino, fosse interessante o uso de shields com interfaces I2C para econimizar pinos do microcontrolador.
Tá fino de mais gente. Desculpem não estar contribuindo com nada, mas gostaria de em breve estar aprendendo com vcs sobre sintetização com Arduino.
Talvez, futuramente, a gente poderia utilizar soluções mais específicas com um outro microcontrolador (talvez um ARM da ST, por exemplo) e desenvolvendo nossas próprias placas para brincar. Estou tentando arrumar tempo pra isso, mas tá foda :/
Tá destruindo mestre Casper, parabéns
|