MIDIbox

MIDIbox
MIDIbox SID (oben) und MIDIbox 64 (unten)

Das MIDIbox Projekt ist eine nicht-kommerzielle, do-it-yourself-Plattform für MIDI-Hard- und Software, die auf der PIC-Mikrocontroller-Familie, insbesondere dem PIC18F452, PIC16F88, PIC18F4620 und PIC18F4685, sowie dem STM32 32-bit ARM Cortex-M3 Microcontroller aufbaut. Mit der Plattform ist es möglich eigenständige Midicontroller, Sequenzer und Synthesizer zu bauen.

Inhaltsverzeichnis

Geschichte

Die MIDIbox Hardware Plattform (MBHP) basiert auf Thorsten Kloses Arbeit mit MIDI-Controllern. Das Design basiert auf einer standardisierten Umgebung von wiederverwertbaren und austauschbaren Modulen. Kurz nachdem die ersten Module veröffentlicht wurden, hat sich aus einer kleinen Anzahl von Enthusiasten eine stetig wachsende Open-Source-Entwicklercommunity gebildet.

Die MIDIbox Hardware Platform (MBHP)

Der Schwerpunkt der Plattform liegt auf gut designten und dokumentierten Modulen, die auf kleinen unkomplizierten Schaltungen basieren, um auch Anfängern den Einstieg zu erleichtern. Diese Module werden dann in einem kompletten Aufbau verbunden. Alle Karten können als Single-Layer-PCB hergestellt werden. Prototypen-Boards können mit einem Freeware-CAD-Programm entworfen werden. Fast alle Komponenten sind through-hole designt, um die Montage zu erleichtern.

Die MIDIbox Hardware Plattform betreibt ein eigenes Open-Source-Betriebssystem: MIOS (MIDIbox Operating System), das für Geschwindigkeit und Genauigkeit in PIC-Assemblersprache geschrieben ist. Es gibt einen C-Wrapper-Layer um leichter programmieren zu können. MIOS ist so konzipiert und dokumentiert, dass damit einfache Neukonfigurationen, Anpassungen und Erweiterungen durch Bastler und Entwickler vorgenommen werden können.

Das MIDIbox Operating System (MIOS)

Das MIDIbox Operating System (MIOS) wurde entwickelt, um die Gestaltung von flexiblen MIDI-Controller-Applikationen zu ermöglichen. MIOS hält sich an die Idee einer nicht-kommerziellen, offenen Plattform, was als grundlegend erachtet wird für den Austausch von Ideen und persönlichen Anpassungen, die nicht mit handelsüblichen Controllern möglich wäre.

Die meisten Controller die von der Community gebaut werden, bestehen auf bereits dokumentierten Entwürfen und beginnen ihr Leben mit dem Feature-Set, das von der bestehenden Firmware zur Verfügung gestellt wird. Endbenutzer können ihre Geräte mit austauschbaren Programm-Code erweitern und somit die Geräte der Host-Anwendung, Synthesizern oder anderen MIDI-Geräten anpassen. Auch ist eine individuelle Anpassung möglich, die den eigenen bevorzugten Arbeitsablauf unterstützt, oder dem eigenen Entwurf neuer Projekte von Grund auf anzupassen.

Quellcode von Anwendungen, Modulschaltpläne und PCB-Layouts stehen kostenlos für die nicht-kommerzielle Verwendung als Vorlagen für Änderungen und Verbesserungen zur Verfügung. Somit stellt MIOS und die Hardware-Plattform einen leichten Einstieg in das Microcontroller-Entwicklungs-Hobby dar, um Anwendungen außerhalb der Bereiche des kommerziellen MIDI-Mainstream-Markts zu ermöglichen.

MIOS wurde bis Version 1.8 unter der GNU GPL lizenziert. Spätere Versionen erfordern jetzt Thorsten Kloses Erlaubnis für den gewerblichen Einsatz.

Das Betriebssystem besteht aus einem Kernel, der dem Benutzer Hooks an Hard- und Software-Ereignissen zur Verfügung stellt, sowie Funktionen für die Interaktion mit Modulen.

Ein Core-Modul kann folgendes mit einem PIC18F452 Mikrocontroller verarbeiten:

  • bis zu 128 digitale Eingänge
  • bis zu 128 digitale Ausgänge
  • bis zu 64 analoge Eingänge
  • Matrix und grafische LCDs
  • bis zu 8 Banksticks (I2C EEPROMs)
  • einen MIDI-In und einen MIDI-Out oder ein serieller RS232-COM-Port

Background-Treiber stehen für die folgenden Steuerungsaufgaben zur Verfügung:

  • MIDI I/O-Verarbeitung
  • Bootstrap loader
  • Analog-Wandlung bis zu 64 Knöpfe, Fader oder andere analoge Quellen mit einer Auflösung von 10 Bit
  • Motor Handling für bis zu 8 motorisierte Fader mit einer Auflösung von 10 Bit
  • Handling von bis zu 64 Drehreglern (Inkrementalgeber)
  • Handling von bis zu 128 Tasten, Touch-Sensoren oder ähnlichen digitalen Eingabegeräten
  • Handling von bis zu 128 LEDs, Relais, Digital-Analog-Wandler oder ähnlichen Ausgabegeräten.
  • Im Multiplexbetrieb kann eine fast unbegrenzte Anzahl von LEDs, LED-Ringen und LED-Ziffern genutzt werden
  • Lesen/Schreiben von/nach EEPROM, Flash, und Bankstick
  • PIC18F Core Module Verbindung über MIDIbox Link

Das komplette Betriebssystem ist in Assemblersprache geschrieben und auf Geschwindigkeit optimiert. MIOS nutzt derzeit 8kb Programmspeicher und 640 Byte RAM. Nur 75 μs sind erforderlich, um 128 digitale Input-Pins zu lesen und 128 Output-Pins zu schreiben. 16 Drehregler sind innerhalb von 100 μs aktualisiert. Analoge Eingänge werden im Hintergrund alle 200 μs aktualisiert; Veränderungen, die ein definierbares Minimum überschreiten, lösen einen Hook aus.

Bis zu 256 MIDI-Events können Funktionen auslösen; Die Verarbeitung der Event-Liste erfordert etwa 300 μS. MIDI-Events können auch von einer Benutzer-Routine für das SysEx-Parsen oder ähnlichen Jobs verarbeitet werden. Ein User-Timer ist für zeit-basierenden Code vorhanden. Support für andere Hochsprachen neben C ist möglich.

MIOS Hardware

MIOS ist ein dediziertes Betriebssystem für den Mikrocontroller PIC18F452. Dieser PIC ist pinkompatibel mit dem PIC16F877, der in früheren MIDIbox Projekten verwendet wurde. So ist es abwärtskompatibel mit älteren MIDIbox Core-Modulen.

Der PIC18F452 besitzt mehr internen Flash, mehr internen RAM, einige neue Anweisungen und eine bessere System-Architektur. Er ist in den meisten Ländern für den gleichen Preis wie der PIC16F877 erhältlich.

Für das neuere MIOS32 steht ein Core-Modul auf Basis des STM32F103RE zur Verfügung. Dieser 32Bit Controller ist deutlich schneller als seine PIC-Vorgänger und verfügt über eine große Zahl integrierter Schnittstellen. Das CORE32-Modul ist mit den bereits vorhandenen Modulen vollständig kompatibel.

Komplette Lösungen

Es stehen zahlreiche komplett dokumentierte Projekte zur Verfügung, sowie eine große Anzahl von Benutzer-Projekten der Community. Die offiziellen Projekte sind wie folgt:

  • MIDIbox FM V1: Hardware-Synthesizer auf Basis des Yamaha YMF262 Soundchips (auch als OPL3 bekannt), zur Erzeugung von FM Sounds aus Soundblaster-kompatiblen Soundkarten der früheren 90er Jahre.
  • MIDI Merger V1: Führt zwei separate MIDI-Eingänge auf einen Ausgang
  • MIDI Router V1: Routen von verschiedenen MIDIboxen auf einem einzigen MIDI-Port
  • MIDI-Prozessor: Bietet grundlegende Funktionen zum Senden und Empfangen von MIDI-Events
  • MIDIbox 64: Vollwertiger 64-Kanal MIDI-Controller
  • MIDIbox 64E V2: Erweiterte Version der MIDIbox 64
  • MIDIO128 V2: Die MIDIO128 Schnittstelle wird verwendet, um bis zu 128 digitale Output-Pins anzusteuern, und auf bis zu 128 digitale Eingangs-Pins per MIDI zu reagieren
  • MIDIbox LC V1: Alternative zu der MIDIbox 64/64E
  • sammichSID: Komplettbausatz der Communitymitglieder Wilba und nILS für eine Midibox mit 2 SIDs[1]
  • sammichFM: Komplettbausatz der Communitymitglieder Wilba und nILS für eine Midibox mit YMF262 (OPL3) Soundchip[2]

Quellen

  1. [1] MIDIbox Wiki sammichSID
  2. [2] MIDIbox Wiki sammichFM

Weblinks


Wikimedia Foundation.

Игры ⚽ Нужно решить контрольную?

Schlagen Sie auch in anderen Wörterbüchern nach:

  • MIDIbox — The MIDIbox project is an open source modular DIY framework (hardware and software) MIDI platform built around the PIC family of microcontrollers (specifically the PIC18F452, PIC16F88, PIC18F4620 and PIC18F4685) and recently with STM32 32 bit ARM …   Wikipedia

  • MOS Technology SID — MOS Technology SIDs. The right chip is a 6581 from MOS Technology, known at the time as the Commodore Semiconductor Group (CSG.) The left chip is an 8580, also from MOS Technology. The numbers 0488 and 3290 are in WWYY form, i.e. the chips were… …   Wikipedia

  • MOS Technology SID — Микросхемы SID фирмы MOS Technology: Справа  микросхема 6581 производства MOS Technology, в то время называвшейся Commodore Semiconductor Group (CSG). Слева  микросхема 8580 той же фирмы. Числа 0488 и 3290 представляют дату выпуска в… …   Википедия

  • Yamaha YMF262 — (year 1994) The Yamaha YMF262, also known as the OPL3 (OPL is an acronym for FM Operator Type L), is an FM synthesis sound chip. It is an improved version of the Yamaha YM3812 (OPL2), adding the following features: twice as many channels (18… …   Wikipedia

  • Circuit bending — Probing for bends using a jeweler s screwdriver and alligator clips Circuit bending is the creative customization of the circuits within electronic devices such as low voltage, battery powered guitar effects, children s toys and small digital… …   Wikipedia

  • Commodore 64 — Hersteller Commodore …   Deutsch Wikipedia

  • Freie Hardware — ist eine Hardware, welche nach lizenzfreien Bauplänen hergestellt wird. Inhaltsverzeichnis 1 Rechtliche Grundlagen 2 Konzept (Beispielprojekte) 3 Weitere Projekte 4 …   Deutsch Wikipedia

  • MOS Technology SID — Ein 6581er SID Chip auf einem C64 Mainboard Der MOS Technology SID (Sound Interface Device) ist ein programmierbarer 3 stimmiger Soundchip, der hauptsächlich in den Heimcomputern C64 und C128 von Commodore in den 1980er Jahren zum Einsatz kam. Er …   Deutsch Wikipedia

  • Retrosound — ist ein zusammengesetztes Wort aus Retro (v. lat. retro rückwärts) und Sound. Als Retrosound werden elektronisch bzw. digital erzeugte Klänge (engl. sounds) bezeichnet, die mittels eines alten, meist populären und betagten Soundchip erzeugt… …   Deutsch Wikipedia

  • Monodeck — Le Monodeck est un contrôleur MIDI, basé sur le framework opensource midibox mais non open source, construit par Robert Henke (plus connu sous le nom de Monolake) pour ses prestations en concert. Le Monodeck est utilisé avec le logiciel Ableton… …   Wikipédia en Français

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”