WiFi open sound control to Midi gateway

Similar projects worth following
Project aim is to implement a WiFi enabled gadget which allows translating open sound control messages to midi.

Main use case - extra control surface for Midi controlled synths using TouchOSC app on tablet or mobile devices.

Schematics, PCB and firmware code is available on GitHub.

Current issues I'm working on:

  • SoftwareSerial seems to crash esp8266. Next iteration will use Serial0 for MIDI I/O, programming and Serial1 for debug messages.
  • Hardware serial throws some rubbish when booting up - MIDI out should be "muted" on power up and enabled once firmware takes over.

Considering to implement in future:

  • Small oled screen with 3-4 buttons for configuration and info.
  • Use rechargeable battery as power source + some charging circuit with micro usb.
  • Using wifi manager to set the password.
  • Firmware updates:
    • Alternative A: via USB .. With some kind of usb to serial chip.
    • Alternative B: via MIDI .. Download to spiffs and then do the update.

  • UART0 noise on start

    Tadas S.12/16/2018 at 19:24 0 comments

    Current frankenpcb is wired to do MIDI via GPIO13 / GPIO15. Which is still UART0, but after the initialization code calls `Serial.swap()`. Extra modboard is a buffer from a quad NAND for MIDI OUT from GPIO15. GPIO15 needs to be pulled down for esp8266 to boot correctly, but the MIDI OUT circuit pulls it up without the buffer.

    This whole set-up is a lot "quieter" on start up. But it still generates a single pulse on MIDI OUT, which gets interpreted as `B0 00 00` by my USB MIDI adapter.

  • New board + code updates

    Tadas S.12/15/2018 at 21:54 0 comments

    New board is already on the way from OSH Park.

    Changes include:

    • MIDI via uart0 instead of SoftwareSerial (which was causing crashes)
    • Debug logs via uart1 and some new extra debug macros
    • Midi Through output
    • Board will now be mounted upside down on the top side of enclosure. This will enable adding PCB mount buttons + screen on the same board (bottom side) in future revisions

    Even before the new boards arrive I realized that rubbish bytes sent by ESP8266 core during startup will cause trouble. Something to be fixed in next revision.

  • How it all started

    Tadas S.12/08/2018 at 12:00 0 comments

    This whole thing has started couple years ago with a breadborded ESP8266 with Midi in / out:

    I'm not working on it very often, but during those couple years I managed to go through almost 4 PCB iterations.

    My current focus is polishing up the firmware and making it stable.

View all 3 project logs

Enjoy this project?



Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates