LIVE: Build Your Custom MIDI Controller in 2026 — From Idea to PCB, Firmware & Enclosure
Live em inglês sobre layout MIDI, 32 potenciômetros com multiplexadores, fitas de LED, faders motorizados, PCB no KiCad e gabinete.

Um fluxo completo de layout à fabricação
Nesta live em inglês, Gustavo Silveira percorre o MIDI Controller Builder como um sistema integrado de projeto. O fluxo vai da escolha dos controles e configuração MIDI à expansão de entradas, geração do firmware, gabinete, feedback por LED, PCB e painel no KiCad. O foco é sair do protótipo de breadboard e chegar a um instrumento que possa ser montado, testado e usado num setup musical.
Silveira se apresenta como músico e compositor, e conta que começou a construir controladores físicos para tocar música eletrônica com controles definidos conforme o próprio fluxo de trabalho. A placa microcontroladora lê botões, potenciômetros ou sensores, executa o código e envia ou recebe MIDI. Na live, ele mostra exemplos já construídos: um controlador DJ com jog wheels, uma superfície tipo launchpad para samples e bateria, um controlador de movimento e luz, uma ideia de pedaleira para efeitos de guitarra e uma grande superfície para sintetizador inspirada no Minimoog. Os exemplos ilustram objetivos diferentes; o foco da fabricação é essa última superfície.
Posicione os controles e defina as mensagens
Um projeto novo começa numa grade. É possível alterar o número de células, arrastar os controles para o lugar e selecionar uma faixa para preencher de uma só vez com o mesmo componente. A live demonstra quatro potenciômetros e doze botões como exemplo e depois cria uma área de oito por quatro para preencher 32 potenciômetros. Componentes repetidos são mais rápidos de posicionar em grupos; cada um também pode ser movido e configurado depois.
Cada controle tem propriedades editáveis. Um botão pode enviar nota MIDI ou Control Change em um canal escolhido. Pode ser momentâneo — ativo enquanto está pressionado — ou toggle, alternando de estado a cada pressão. O app também pode configurar um botão para mensagens Mackie Control. Potenciômetros podem enviar Control Change, inverter a faixa de valores ou transmitir pitch bend. Como o firmware é gerado a partir do projeto, alterar uma mensagem no layout e gerar novamente o código é mais simples do que editar números espalhados pelo programa.
A tela do projeto mostra o total de entradas da placa e quantas já foram usadas. Silveira demonstra o Pro Micro como opção compacta para um projeto final e menciona placas como Teensy e RP2040 com outros números de pinos ou recursos. Na configuração mostrada, o Pro Micro dispõe de 16 entradas contabilizadas. Algumas entradas podem funcionar como digitais ou analógicas; outras aceitam apenas uso digital. Por isso, o total depende da combinação de botões e potenciômetros. Na configuração explicada, cabem até nove potenciômetros ou até 16 botões, desde que a soma respeite o orçamento de entradas disponível.
Amplie entradas do Pro Micro com multiplexadores
O exemplo de 32 potenciômetros excede as entradas diretas do Pro Micro. O Builder sinaliza o erro e o apresentador adiciona duas placas de expansão com multiplexadores CD4067. Um multiplexador seleciona entre 16 sinais usando uma entrada do microcontrolador, permitindo conectar mais controles sem trocar necessariamente por uma placa com mais entradas diretas. Depois de adicionar duas expansões, a interface informa que há capacidade suficiente e distribui os componentes entre a placa principal e os canais extras.
O app oferece expansões próprias para controles analógicos, botões e encoders. Encoders de rotação infinita não são ligados como potenciômetros: eles indicam o movimento por outro padrão de sinal, então a expansão é configurada separadamente. O exemplo serve para dimensionar uma superfície grande, não para assumir que qualquer combinação de placa e componente cabe sem conferir os limites. Para uma montagem, consulte o esquema gerado para a placa e os módulos selecionados.
O projeto maior da live é inspirado no painel do Minimoog e no plugin Arturia Mini V. O layout contém dezenas de potenciômetros e chaves em posições semelhantes às do sintetizador, inclusive alguns controles colocados entre os centros habituais da grade. Dois multiplexadores dão ao Pro Micro entradas suficientes para essa superfície. A meta musical é ter acesso tátil aos parâmetros de síntese: o músico pode pegar um knob físico em vez de navegar pela tela.
Leia o esquema e gere o firmware
A visualização esquemática transforma o layout em instruções de fiação. Ela mostra cada botão, potenciômetro, encoder ou multiplexador e identifica o pino do microcontrolador ou canal da expansão. O app também oferece explicações por componente, lista de materiais e um guia escrito de conexões. Silveira mostra como abrir o diagrama da placa para distinguir entradas analógicas e digitais e conferir o módulo de expansão.
A aba de firmware gera código para a placa escolhida. O fluxo da demonstração é instalar Arduino IDE e as bibliotecas listadas nas instruções do app, copiar o código, selecionar a placa e a porta USB corretas e enviar o programa. Mensagens, canais e pinos configurados no layout acompanham o código. Se uma mensagem MIDI mudar, o usuário pode editar a configuração do componente e gerar o código novamente.
A live também aborda depuração porque um projeto gerado ainda depende de montagem correta. Se um controle não responde, Silveira recomenda inspecionar conexões e soldas. Um multímetro em modo de continuidade pode apitar quando existe conexão elétrica entre dois pontos. Se um caminho que deveria conduzir não apitar, é possível seguir a ligação e refazer a solda. Isso ajuda a localizar um circuito aberto sem presumir que a causa está na configuração do software. A depuração faz parte de uma primeira montagem, especialmente durante a prototipagem em breadboard.
Configure fitas de LED e feedback MIDI
A aba de feedback mostrada na live aceita fitas de LED endereçáveis. O usuário escolhe o pino de dados, quantidade de LEDs e brilho e define que mensagens MIDI controlam o estado visual. Um exemplo deixa um LED RGB verde quando chega a nota 60 no canal 1 e o apaga quando a nota termina. O apresentador cita também a nota 36, frequentemente usada para bumbo, como evento que poderia acender o LED em vermelho. Assim, uma mensagem MIDI fica associada a uma resposta visual útil para pads de bateria ou superfícies que precisam indicar atividade.
Uma fita pode ser dividida em segmentos, ou grupos de LEDs. Na demonstração, uma fita de 16 LEDs tem uma seção de dez LEDs e outro trecho associado a um comportamento diferente. Um segmento pode funcionar como uma barra que acompanha o valor de Control Change; outro pode mover um ponto ao longo da fita. O usuário escolhe canal MIDI e número de CC. Por exemplo, um potenciômetro que envia CC 1 controla um grupo, enquanto CC 2 controla outro. A interface também mostra gradiente de cores e uma animação no estilo de medidor VU.
A live diferencia feedback em fita da posição de LEDs individuais no layout. A versão mostrada ainda não usa LEDs individuais como componentes. Silveira gostaria de integrar fitas e anéis de LED de encoder à geração de PCB. OLEDs e LCDs também aparecem numa pergunta: embora ele tenha usado displays em outros projetos e veja uma possibilidade de colocar rótulos sob faders ou encoders, isso é um plano, não uma função demonstrada nesse projeto. Acesso offline também é um pedido futuro, não uma capacidade confirmada durante a sessão.
Faders motorizados: driver, toque e alimentação
Uma pergunta do chat expande o escopo do exemplo Minimoog e aborda faders motorizados. Silveira diz que esse componente já estava implementado e testado no app, embora ainda não houvesse um tutorial completo de montagem. O fader motorizado reúne dois dispositivos: o fader comum, que funciona como potenciômetro, e um motor de corrente contínua que move o eixo. Por isso, o layout precisa das três conexões do fader e das conexões do driver do motor.
O motor precisa de uma ponte H para inverter a polaridade e movê-lo em ambas as direções. A interface permite escolher drivers, incluindo o L293D, e atribuir pinos de entrada do driver. Uma saída PWM controla a velocidade. O sistema compara a posição desejada com a leitura do potenciômetro, movimenta o eixo em direção ao alvo, reduz a velocidade ao se aproximar e para quando alcança o valor esperado. Se a DAW mover um fader de canal, o motor pode acompanhar essa posição. Um sensor de toque permite que a pessoa segure o eixo e interrompa o motor para movimentá-lo manualmente.
A detecção de toque é capacitiva. Silveira explica que é necessário um sensor capacitivo feito com resistores, ou um capacitor/sensor apropriado, para detectar que a pessoa está tocando o fader. Ele diz que ainda não havia gravado o tutorial completo de ligação. O motor também precisa de alimentação dimensionada para a corrente e a quantidade de motores; esse requisito físico não desaparece com o código gerado. A live explica o mecanismo e o suporte testado no app, mas não constitui, por si só, um tutorial completo de montagem de fader motorizado.
Desenhe o gabinete e confira os arquivos de impressão
O gerador de gabinete cria uma caixa 3D ou painel 2D para corte a laser ou CNC. A live mostra uma estrutura em duas partes e explica que uma combinação de painel e fundo pode ser conveniente para projetos com fios, enquanto um projeto com PCB pode usar painel superior, placa e base unidos por espaçadores. É possível configurar espessura do painel, paredes e altura, recortes, espaçamento, folga nas bordas, raio dos cantos e pontos de fixação. O exemplo usa 3 mm como ponto de partida para painel e parede, não como regra universal.
O usuário pode exibir os modelos dos componentes e conferir colisões com placas, controles e apoios. O app exporta STLs das partes superior e inferior e também arquivos de knobs. O apresentador avisa que as malhas podem precisar de reparo antes da impressão e demonstra enviar os arquivos a uma ferramenta de reparo e baixar as versões corrigidas. A caixa impressa precisa caber na mesa da impressora. O painel Minimoog do exemplo é maior do que a máquina mostrada, o que leva à opção de construir com placas sanduíche em vez de uma caixa única impressa.
Painel gráfico, PCB e roteamento no KiCad
O projeto inspirado no Minimoog mostra como layout, placa e arte visual se conectam. O Panel Designer adiciona rótulos, marcações de escala e texto ao lado dos controles. Silveira tenta reproduzir a lógica do painel do sintetizador, com nomes como “Glide”, valores e traços em torno dos knobs. O usuário define quantidade, tamanho e espaçamento dos traços, pode nomear cada marcação, ocultar algumas e inserir texto. Também há opção para incluir uma forma de onda.
O painel pode ser exportado em SVG para impressão, gravação ou corte, ou integrado à PCB. O app exporta um projeto KiCad com esquemático e posicionamento inicial dos componentes. O esquemático guarda as conexões elétricas; na PCB, os componentes já começam organizados conforme o layout. Ainda é necessário rotear o cobre. As trilhas são as conexões que substituem fios na placa. Silveira abre o KiCad e demonstra um plugin gratuito de autorroteamento, que cria boa parte das trilhas a partir das regras do projeto. O resultado pode não fechar todas as ligações e precisa ser inspecionado e corrigido antes da fabricação.
As três placas do exemplo têm funções diferentes. A PCB eletrônica recebe controles e multiplexadores. O painel superior tem furos e pode receber arte. A base fornece fixação e também pode carregar gráficos em camadas de cobre. Espaçadores separam painel, placa principal e base num sanduíche. Essa estrutura evita imprimir uma caixa grande demais e transforma a própria superfície de controles na parte superior do instrumento.
A arte também pode ser ajustada no KiCad. A live mostra textos e um logo em camadas distintas, como serigrafia ou cobre exposto, cada uma com acabamento diferente. Os arquivos Gerber de fabricação são preparados depois de revisar e finalizar o PCB no KiCad; a exportação inicial do app serve de base para o projeto, mas roteamento, camadas e conferência final continuam sendo responsabilidade do desenho da placa.
Mantenha layout, PCB e gabinete sincronizados
O Builder conecta as visualizações. Silveira move um potenciômetro no layout e confere a nova posição na PCB e no Designer de painel. Também é possível adicionar furos de fixação à placa e pontos correspondentes no gabinete. A integração ajuda a detectar colisões antes da exportação ou fabricação. Depois que uma placa já foi produzida, mover um componente exige uma nova revisão do projeto e uma placa atualizada.
A live distingue recursos demonstrados de trabalho futuro. Pro Micro, Pico/RP2040, Teensy e expansões por multiplexadores aparecem como opções disponíveis naquela versão; o ESP32-S3 é descrito como planejado. Fitas endereçáveis e o componente de fader motorizado são demonstrados; LEDs individuais, OLEDs e acesso offline aparecem como pedidos ou possibilidades futuras. A sessão em inglês tem o projeto Minimoog e um Q&A mais longo sobre depuração, feedback e faders motorizados; não confunde esses tópicos com os detalhes da live em português.
