Manufaturação industrial
Internet das coisas industrial | Materiais industriais | Manutenção e reparo de equipamentos | Programação industrial |
home  MfgRobots >> Manufaturação industrial >  >> Manufacturing Technology >> Processo de manufatura

Kit Adaptador USB-MIDI para Arduino Micro/Leonardo – Lista Completa de Peças

Componentes e Materiais

ComponenteQtdNotas
Arduino Micro (ou Leonardo)1Baseado no ATmega32u4 (USB nativo)
Optoacoplador 6N1371Rápido, padrão para MIDI IN
Diodo 1N41481Proteção / polarização
Capacitor 100 nF1Desacoplamento
Resistor 220 Ω3Limitação corrente LED + MIDI OUT
Resistor 10 kΩ1Pull-up optoacoplador
Resistor 470 Ω1Entrada MIDI IN (pino 4 do 6N137)
LED genérico1Indicador de alimentação
Suporte para LED1Montagem na caixa
Conector DIN 5 pinos (MIDI)21 IN + 1 OUT + parafusos/porcas
Caixa plástica1Para acomodar tudo
PCB genérica (perfboard/stripboard)1Versão final soldada
Suportes PCB (ex: spacers nylon)1 kitFixação na caixa

Software

Sobre o Projeto

Adaptador MIDI USB bidirecional profissional. O ATmega32u4 (Micro/Leonardo) apresenta-se ao PC como interface MIDI USB nativa (class-compliant, sem drivers). Circuito MIDI padrão com isolamento ótico (6N137) no input.

Detalhes de Hardware

Software – Biblioteca Control Surface

Escolhida por implementar corretamente o protocolo MIDI (SysEx, tempo real, running status). Permite adicionar controlos extra (potenciómetros, pedais, botões) nas entradas analógicas/digitais livres. Suporta callbacks para processar mensagens antes de encaminhar (ex: filtrar "All Notes Off" defeituoso de sintetizadores antigos como Roland D-50).

Problema Conhecido e Correção

A biblioteca Control Surface 1.x tem buffer SysEx limitado (128 bytes), falhando com mensagens grandes (ex: editor/librarian D-50). Correção temporária (até sair v2.x):

  1. Em src/MIDI_Parsers/MIDI_MessageTypes.hpp: mude uint8_t length; para size_t length;
  2. Em src/Settings/Settings.hpp: mude constexpr size_t SYSEX_BUFFER_SIZE = 128; para 320;

Dois Sketches Incluídos

  1. Básico: Bridge MIDI USB ↔ Serial1 (MIDI DIN) transparente.
  2. Com filtro "All Notes Off": Ignora mensagens 0xB0 0x7B (Controller 123) vindas do MIDI IN, evitando corte brusco de sustain em VSTs. Converte Note On velocity 0 em Note Off.

Dica de Resolução de Problemas

Se não comunica com equipamento MIDI externo, verifique se não trocou pinos 4 e 5 do conector DIN (diagramas de pinout às vezes mostram vista de frente vs. verso do conector).

Alterar Nome do Dispositivo USB

Edite hardware/arduino/avr/boards.txt na pasta da Arduino IDE (com admin):

leonardo.build.usb_product="Arduino Leonardo"
→ leonardo.build.usb_product="Meu Adaptador MIDI"

Restaurar após upload.

Esquema

Disponível na secção Schematics (arquivo Fritzing usb_midi_interface_twiE32gvR3.fzz e imagem PNG).

Processo de manufatura

  1. Alerta Inteligente de Sede para Plantas – Sensor DIY para Hidratação Ideal
  2. Relógio de Palavras em Italiano com Arduino Nano, NeoPixel, LCD e RTC
  3. Economize Pinos do Arduino: Conecte Teclado 4x3 com Apenas Três Conexões
  4. Kit de Bateria MIDI Compacto com Impressão 3D e Arduino
  5. Medidor kWh Confiável com Sigfox e Arduino MKR Fox 1200
  6. Monitor de Temperatura com Bluetooth usando Arduino Nano
  7. Medidor de Capacitância Autoranging DIY (10 pF–10 µF) – Montagem Fácil com Arduino
  8. Fechadura por Gestos Sem Toque: Acesso Seguro com APDS-9960 e Arduino
  9. Circuito de Entrada Analógica Isolada para Arduino
  10. Teste de Tempo de Reação Preciso com Arduino UNO