iOS Moog model D. DIY Hardware MIDI Controller

Dieses Thema im Forum "Controller, Kabel, MIDI / CV" wurde erstellt von masi28, 4. November 2018.

  1. masi28

    masi28 ..

    Hallo.
    Ich möchte hier gerne ein neues Projekt vorstellen und besprechen.

    Seit einiger Zeit begeistere ich mich ziemlich für die iOS App des Moog Model D.

    Für diese App werde ich einen Hardware Midi Controller bauen.
    Die ersten Tests sind vielversprechend. Leider fehlt es an ausreichender Spezifikation, die ich mir im Laufe des Projektes noch erarbeiten werde.

    Ich beginne wie immer mit dem Arduino Mega und einer TX Schnittstelle für die Übertragung der Midi Daten. Als Schnittstelle reicht momentan ein Lightning Usb Adapter am miditech midiface 2x2. Das erspart mir noch die Arbeit am Midi Merge, da die App über zwei Midi Eingänge verfügt und Keyboard und Controller Daten sehr gut simultan abgearbeitet werden können. midiface ist sehr genügsam, was den Stromverbrauch angeht und lässt sich direkt am Lightning to USB Adapter betreiben. System ist iOS 12.1

    Die Midi Spezifikation der App gibt mir keinen Aufschluss über den Datenaustausch, Baudrate, Controller Werte für Schalter etc.. Hier gilt es einfach über Versuch und Irrtum Erkenntnisse zu erlangen.

    Die Baudrate beträgt 31250. Darunter oder darüber erziele ich keine optimalen Ergebnisse.

    Über die CCMap Konfiguration lassen sich Controller zuweisen.

    Poti Werte lassen sich gut zwischen 0-127 übertragen.

    Die Werte der Schalter muss man jedoch errechnen. Bei den ON/Off Schaltern geht das relativ einfach, da hier nur zwischen zwei Zuständen im Bereich 0-127 unterschieden wird.

    Bei den 6-Stufigen OSC Schaltern wird es schon ein wenig schwieriger. Hier muss man die Schalterstellungen und deren Werte ermitteln.

    Ich denke an die Möglichkeit, komplett analog zu arbeiten und den jeweiligen Widerstandswert zu ermitteln und im Skript in Controller Werte umzuwandeln. Entweder über Widerstände oder regelbare Widerstände, je nach Schalterstellung. Rein nach Gefühl ist das ein stets teilbarer Wert zwischen 0-127.
    Dabei sind dann die z.B. 6-fach Schalter für OSC über Widerstände der entsprechenden Werte geschaltet.
    Denkbar wären auch regelbare Widerstände, die bei Veränderung der Spezifikation in der App nachjustiert werden können.

    Programmiermäßig ist das für mich kein Thema. Durch mein Projekt mit dem blofeld Controller habe ich ausreichend Erfahrung und das Skript lässt sich auch bei der iOS Model D App anwenden.

    Vom Design möchte ich mich gerne an das Original anlehnen. Ähnliche Potiknöpfe habe ich gefunden. Mit den ON/Off Schaltern gestaltet sich das ein wenig schwieriger. Ich werde daher runde einfarbige Schalter nehmen. In den Controller integriere ich die Effect, Arpeggio Module.
     
    kybernaut_01, oli und Max gefällt das.
  2. hairmetal_81

    hairmetal_81 Mitglied in Capt. Obvious' Lambada-Testlabor

    Schönes Projekt!
    Du könntest dich an den Projekten von synth-project.de (Mario Jurisch) orientieren.
    Zum Beispiel einer Mischung aus Minimoog- und Animoog-Controller, siehe Bild.



    [​IMG]
     
    Audiohead gefällt das.
  3. microbug

    microbug |||||||||

    Äh, ja. Das ist die Baudrate für MIDI, und NUR diese.

    Hier könnte @mink99 helfen ...
     
    Zuletzt bearbeitet: 4. November 2018
  4. Max

    Max ||

    MIDI überträgt immer mit 31250 Baud, das hat nichts mit der App zu tun.

    Ich würde dir empfehlen eine MIDI-Library zu benutzen (gibt mehrere für Arduino), dann musst du dich um solche technischen Details gar nicht kümmern und kannst dich voll auf deine Anwendung konzentrieren.
     
    microbug gefällt das.
  5. oli

    oli |||||||

    Jo, ich finde auch, dass es ein schönes Projekt ist.
    Vielleicht ist es ein wenig zu naiv gedacht, aber würde es vielleicht was bringen, die EntwicklerInnen von Moog anzuschreiben und ihnen diese Fragen zu stellen?
     
  6. oli

    oli |||||||

  7. oli

    oli |||||||

    Und noch ne halb off-topic-Frage / Info.
    Kennst du den Tom Simmert?
    Er hat für den Moog Model 15 einen sehr toll aussehenden Midi-Controller gebaut.
    Evtl. weiß er bereits mehr über die Spezifikationen von Moog-iOS-Apps und kann dir weiterhelfen (wenn du ihn z.B. über Youtube anschreibst).


    View: https://www.youtube.com/watch?v=_H-Y7INy8mw
     
  8. oli

    oli |||||||

    Eine Idee zum Gehäuse:
    Im Ulimoog Behringer Thread hatte darkstar679 übrigens ein am Minimoog angelehnten Gehäuse gepostet.
    https://www.spillerphoto.com/case-for-arturia-keystep-and-behringer-model-d-and-or-eurorack-modules/
    Den Torsten Spiller könnte man vielleicht fragen, ob er auch ein am iPad orientierten Gehäuse entwickeln / bauen würde und was das kosten würde.

    Hier auch der Link zum Sequencer-Thread - da gibt es noch ein paar Fotos und Anmerkungen auf den folgenden Seiten, falls dich das interessiert:
    https://www.sequencer.de/synthesize...behringer-model-d.121248/page-70#post-1642143
     
  9. masi28

    masi28 ..

    Vielen Dank für Eure Antworten, Tips und Links die ich mir gerade anschaue.
     
  10. masi28

    masi28 ..

    Hier sind die CC Werte für die Schalter

    OSCILLATOR BANK

    6-Stufige Chickenhead Schalter

    Range und Waveform

    2´ - 115-127

    4´ - 90-114

    8´ - 64-89

    16´ - 39-63

    32´ - 15-38

    LO - 0-14


    Die Übergänge liegen ungenau zwischen 14-15, 38-39 etc..


    Alle ON/Off Schalter 0-63/64-127


    EFFECTS

    ARP

    Rate und Pattern

    1/4 - 0-22

    1/8 - 23-63

    1/16 - 64-105

    1/32 - 106-127

    Octave

    1 - 0-32

    2 - 33-96

    3 - 97-127
     
  11. masi28

    masi28 ..

    Ich frage die Schalter analog ab. Je Schalter reicht mir 1 Signal.
    Schalter und Potis frage ich über vier 16 Kanal Multiplexer ab.
    Ich könnte auch mehrere On/Off Schalter über Widerstände an ein Signal legen.
    Dann käme ich mit drei Multiplexer aus, was die Abfragegeschwindigkeit beschleunigt.

    Die Idee mit den regelbaren Widerständen ist zu umständlich.
    Ich verlöte die 6-Stufigen Schalter mit 220Ohm, lege diese auf 5V und GND und weise die passenden Werte im Skript zu.

    Mein Ziel ist es, mit dem ganzen DIY Projekt um 100 Euro zu bleiben.
     
  12. masi28

    masi28 ..

  13. masi28

    masi28 ..

    Zu den Schaltern:

    Die Chickenhead Knöpfe haben an der Unterseite an der Zeigerspitze eine Bohrung.
    Lässt sich dadurch in irgendeiner Form so eine Art Einraster realisieren?
    Vielleicht über gefederte Kugeln? Wozu dient diese Bohrung?

    Foto am 08.11.18 um 00.20.jpg
     
  14. Max

    Max ||

    Wenn du die Bohrung mit der kleinen Schraube unten meinst: die ist nur dafür da, um den Knopf auf dem Poti zu befestigen..

    Wenn du "Einraster" willst (z.B. für die Wellenform-Auswahl), würde ich so einen "Drehschalter" (rotary switch) nehmen:

    http://alphapotentiometers.net/html/rotary_sw.html

    Damit kannst du Kontakte durchschalten und dann einzeln digital auslesen.
     
  15. oli

    oli |||||||

    Interessant!
    Der oben verlinkte selbstgebaute Hardwarecontroller für den Moog Model 15 hat angeblich 350 Euro an Material gekostet.
    Aber der hat auch ne Menge Drehregler und wahrscheinlich ist das Panel aus Metall und ist auch bedruckt worden?
     
  16. masi28

    masi28 ..

    Ich habs geschafft mit dem 6-fach Schater und fünf 220Ohm Widerständen. Schaltet wunderbar.

    Bei diesem Model 15 Projekt kostet die Midi und Keyboard Steuerelektronik an die 200 Euro.

    Unter 100 Euro werd ich es jetzt tatsächlich nicht mehr schaffen.
    Ich bau mir die Elektronik selbst. Die Multiplexer und der Atmega 6560 liegen unter 30 Euro. Die Potis und Schalter sind nicht sehr hochwertig und liegen bei 25 Euro. Teuer waren jetzt aber die Potiknöpfe, die das Budget um 30 Euro erhöht haben. Ich habe ein Midikeyboard mit defekter Elektronik für 10 Euro ersteigert. Das Midiface ebenfalls für 10 Euro. Die Platte lass ich im Fotoservice drucken, dann noch das Gehäuse. Schätze mal, das ich ca.150 Euro ausgebe.
     
  17. masi28

    masi28 ..

    Ran an die Arbeit.
    Erster Schritt. Es steht jede Menge Lötarbeit an. Ich verlöte zuerst die 6-fach Stufenschalter. Insgesamt 9 Stück.

    Und so sieht der Schalter aus.

    Schaltet alle 6 Stufen in den Bereichen Range und Waveform.


    95EC1E44-EC1A-416F-8A6C-8CE062812319.jpeg
     
    kybernaut_01 und Max gefällt das.
  18. microbug

    microbug |||||||||

    Du wertest das also analog aus statt digital? Kann kann man auch machen, spart Portleitungen, darfst nur die Werte nicht auf den Punkt, sondern als Bereiche auswerten, Stichwort Bauteiltoleranzen. Oder Metallfilm-Widerstände mit 1% Toleranz statt der üblichen mit 5% nehmen.
     
  19. masi28

    masi28 ..

    microbug: Ja. Ich habe es noch nicht ausgerechnet, grob sind es 3x 16 Ports weniger durch analoge Abfrage. Digital mit Matrix scheue ich.

    Die Widerstände sind mit 1% Toleranz. Die model D App bietet zusätzlich Spielraum. Die Werte der Schalter liegen glücklicherweise in diesen Bereichen. Abweichungen ließen sich mit geringem Aufwand korrigieren.
     
  20. masi28

    masi28 ..


    Danke. Die Arbeiten von Synth-project.de haben mir immer schon sehr gut gefallen und waren auch Motivation mal selbst was zu basteln. Die Materialien und die Verarbeitung sind einfach Spitze. An diese Qualität werde ich mit meinen bescheidenen Mitteln und Kenntnissen natürlich nicht herankommen.

    Mein Projekt ist ja eher auch für DIY im Rahmen bis 150.- Euro.
    Die Idee, einer Anlehnung an diese Modelle finde ich trotzdem sehr gut.

    Der Prototyp, so habe ich mich heute entschieden ist zuerst einmal der reine Controller in einem Holzgehäuse mit den Schnittstellen zum Masterkeyboard und iPad.
     
  21. Max

    Max ||

    Wenn man mehr digitale Ports braucht, sind auch "IO Expander" ganz nützlich, z.B. Microchip MCP23x17. Kostet ca. 1 € das Stück und hab ich schon oft ohne Probleme über SPI benutzt.

    EDIT: gerade nochmal nachgeschaut, die SPI-Variante heißt MCP23S17, über I2C dann MCP23017
     
    Zuletzt bearbeitet: 12. November 2018 um 09:07 Uhr
    microbug gefällt das.
  22. masi28

    masi28 ..

    Max, Danke. Das ist ein guter Tip.
     
  23. microbug

    microbug |||||||||

    Dürfte auch zuverlässiger funktionieren als das Geüssel mit den Widerständen, mal ab vom Lötaufwand und der Bereichsabfrage.
    Analoge Abfragen sollte man eigentlich nur dort nutzen, wo unbedingt notwendig.