element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • About Us
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
Arduino
  • Products
  • More
Arduino
Blog QLab MIDI Controller - The Build
  • Blog
  • Forum
  • Documents
  • Quiz
  • Events
  • Polls
  • Files
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Join Arduino to participate - click to join for free!
  • Share
  • More
  • Cancel
Group Actions
  • Group RSS
  • More
  • Cancel
Engagement
  • Author Author: gadget.iom
  • Date Created: 10 Dec 2014 9:08 PM Date Created
  • Views 4443 views
  • Likes 0 likes
  • Comments 12 comments
  • qlab
  • fritzing
  • midi
Related
Recommended

QLab MIDI Controller - The Build

gadget.iom
gadget.iom
10 Dec 2014

This is part II of a three part post.

Please read Part I QLab Midi Controller for an introduction to the project.

 

Parts Required

1x Teensy 3.1 - https://www.pjrc.com/store/teensy31.html

1x 60mm Illuminated Arcade Button - http://www.arcadeworlduk.com/products/High-Profile-60mm-Arcade-Button.html

1x Rectangular Arcade Button - http://www.arcadeworlduk.com/products/Rectangular-Illuminated-Arcade-Button.html

1x Triangular Arcade Button - http://www.arcadeworlduk.com/products/Triangular-Arcade-Button.html

5x 5V Wedge Base LEDs - http://www.arcadeworlduk.com/products/awuk-5v-10mm-wedge-base-led.html

1x Hammond Instrument Enclosure - http://uk.farnell.com/hammond/1456fg4bkbu/enclosure-aluminium-instrument/dp/1415246

1x USB A TO MINI B PLUG - http://uk.farnell.com/bulgin/px0441-2m00/cable-usb-a-plug-to-usb-mini-b/dp/1229677

1x USB B RECEPTACLE (PANEL) - http://uk.farnell.com/bulgin/px0443/connector-usb-b-receptacle-panel/dp/1229685

1x Sacrificial Micro-USB cable

 

Schematic

The wiring for the controller is very simple. Internal pull-ups negate the need to resistors on the switches. I’ve put together a very rough schematic in Fritzing. Please let me know if you have any questions, comments or suggestions.

image

 

Operation

 

When powered up all three of the buttons will illuminate.

 

The Go button is intended to fire the currently selected cue. To do this it sends a MIDI note to the computer when the button is pressed, and turns the note off when the button is released. During this time the go button will blink 3 times.

 

The next button will send a different note to the computer when pressed. The LED on this button will extinguish while the button is pressed.

 

The Stop button has two functions. QLab will fade all active cues when the ‘Panic’ button is pressed. The time of this fade can be modified in the preferences. If the button is pressed a second time the track will stop immediately. To reflect this, the first press of the stop button will cause the button to flash for three seconds. the second press will cancel the flash and re-illuminate the button.

 

 

 

Construction

The enclosure front was cut to accommodate the three buttons, the rear face was cut to accept the panel mounted USB receptacle (apologies for the lack of photos). Each of the Buttons was installed and four cables were run to each of them. The Teensy and wire ends were then mounted onto a piece of strip-board

imageimageimage

 

The inclusion of the specific Bulgin connectors are purely optional, I chose them because the USB cable can be ‘locked’ in place, and a standard Mini USB can also be accepted.

 

 

The QLab MIDI Controller Arduino code will follow in part III.

This project is still work in progress. Comments, questions, and suggestions are welcome.

  • Sign in to reply
  • gadget.iom
    gadget.iom over 8 years ago in reply to soundman67

    Hello soundman67

     

    Firstly apologies for the delay in responding to you, It's been move weekend so I've been rather preoccupied.

     

    I too experimented with keyboard emulation as you have. I found the same result, together with the looming concern that if any application (or user) took focus away from QLab, then the keystrokes would be issued to that application instead. The MIDI solution meant that QLab received the commands regardless of the active application you were working on. This has come in handy for users who insist on scrolling through an electronic version of the script, or choose to fire up safari and check-in with their social network.

     

     

    I have not seen the Teensy LC, It appears to be an option I didn't have at the time of writing this article. Looking briefly at the device I can see no immediate reasons why it wouldn't work, and I have actually just purchased one out of curiosity. I will get back to you with my findings.

     

     

    With regards to additional work, My version remains as documented, though I have worked with a colleague on a version for him that included an "up" button vertically aligned with the "down" button (made the thing look like a lift call button). We also installed four round "SFX" buttons on the top face that were used to fire off intermittent sound effects (door knocking, telephones ringing, dogs barking, cars crashing, thermonuclear explosions, etc etc).

     

    Despite a severe lack of time I am looking into further modifications to the design, and always open to suggestions.

     

     

    Paul

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • soundman67
    soundman67 over 8 years ago

    Came across your project through doing a Google Search for a similar unit. At the beginning of the year I built a two switch box using the Trinket to send F1 and F2 keypresses but I was not impressed with the response from the unit. My thought was to reprogram it to send Midi signal and looking into how to do this was how I came across your project. I did wonder if your project could be built with a Teensy LC.

     

    Have you done anymore work on this over the last year?

    David

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • gadget.iom
    gadget.iom over 10 years ago in reply to Former Member

    You're welcome! image

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • Former Member
    Former Member over 10 years ago in reply to gadget.iom

    great, thank you very much Paul!

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • gadget.iom
    gadget.iom over 10 years ago in reply to Former Member

    Hi Rob

     

    Have now posted a copy of the code for this version of the controller. Will be working on the new version soon, but at least you can get started.

    It is available here: QLab MIDI Controller - The Code

    Paul

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
>
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2025 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube