Giter VIP home page Giter VIP logo

omx-27's Introduction

OMX-27

Build Status

Mechanical key switch midi keyboard and sequencer. Based on Teensy 3.2 and Cherry MX RGB key switches.

Full kits and partial kits are available for sale here.

Firmware

Kits are shipped with a blank Teensy. You will need to flash the firmware to the device.

Load pre-compiled firmware w/ TyUpdater

Download OMX-27 firmware "hex" file from https://github.com/okyeron/OMX-27/releases or the Firmware-Hexes directory in this repo.

Get TyTools from GitHub here. More info here (https://koromix.dev/tytools).

Copy TyUploader to your machine and open it. Be sure your OMX-27 is plugged in. It should show up in the TyUpdater application.

tyupdater

Click the Upload button and select the firmware hex file you want to upload. This should upload the firmware and the OMX-27 should reboot. That's it.

Teensyduino (compile yourself)

Install Teensyduino from the PJRC website.

In Teensyduino Library Manager - check to be sure these are installed and on the most recent versions.

Libraries:
Adafruit_Keypad
Adafruit_NeoPixel
Adafruit_SSD1306
Adafruit_GFX_Library
U8g2_for_Adafruit_GFX
Adafruit_FRAM_I2C

Also check to be sure MIDI Library (by Francois Best / fortyseveneffects) is updated to 5.02 (I believe this is installed by default with Teensyduino)

Set the following for the Teensy under the Tools menu:

Board: Teensy 3.2/3.1
USB Type: MIDI
CPU Speed: 120 MHz (overclock)

Open the sketch at OMX-27-firmware/OMX-27-firmware.ino, click verify to ensure it all compiles and upload to flash the firmware to the hardware, pushing the button on the Teensy first.

PlatformIO / VSCode (optional)

Ensure Homebrew in installed. Instructions
Install PlatformIO CLI tools. Detailed Instructions

# Mac OSX
brew install platformio

# check out the project
git checkout https://github.com/okyeron/OMX-27.git

# go to the project directory
cd OMX-27

# compile the project (this may take a while the first time)
pio run

# upload to hardware (don't forget to push button on Teensy)
pio run -t upload

# use serial monitor for debugging
pio device monitor

# clear FRAM/EEPROM
pio run -t clear-storage

(optional) Install PlatformIO IDE VSCode extension. Instructions

Install EditorConfig extension for your text editor. Instructions

Note: when making changes using the PlatformIO toolchain, please ensure the sketch still builds on Teensyduino before opening a PR.

BOM

Bill of Materials

Build

Build Guide

Docs

Documentation

FAQ

Q: What key switches are recommended?
A: Any RGB switches with a Cherry MX footprint can be used - I'm using Cherry MX RGB and these are linked in the BOM. Different varieties are available (Red, Brown, etc.)

Q: Can I use other key switches?
A: Yes - as long as they have the same footprint as Cherry MX switches and a window/opening for the LED to shine through. Low profile keys like the Cherry Low Profile or Kailh Choc switches have a different footprint and will not work.

Q: What about recommended Keycaps?
A: Also listed in the BOM. You want an MX stem cap, with translucency or a window for the LED to shine through. DSA profile caps work well.

Q: Does this project require soldering?
A: Yes. Thru-hole soldering is required along with some easy SMD (LEDs and jacks).

Q: What's with these LEDs?
A: This project uses SK6812-MINI-E reverse mount LEDs. They are somewhat hard to find, so I'll try to offer them included with kits. They are easy to solder, even if you've not done much SMD.

Q: Can I get the Gerbers or order the pcbs myself?
A: No. Not open source at this time.

Q: Can I get some of those windowed keycaps you're using?
A: Yes (send me an email).

omx-27's People

Contributors

okyeron avatar quixotic7 avatar szydek avatar catkins avatar mattboone78 avatar gotascii avatar winder avatar ryanlaws avatar ftsf avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.