Giter VIP home page Giter VIP logo

music_makers's Introduction

Music Makers

Robotic Recorder Player

This project is an open source hardware project that is intended to be an automated way to play a recorder instrument. Build it for yourself and use the Python Interface to send your MIDI files to the robotic recorder player and hear them played on the recorder!

robotic-recorder-player-image

Demonstration

demonstration_video_hot_cross_buns.mp4

How to Build and Use

This project had been designed so that it only requires a limited toolset and you don't have to be an expert to build it. An overview is below but more detailed instructions can be found in each folder.

Tools Required

  • FDM 3D Printer and slicer software such as Cura.
  • Basic workshop tools including spanners, screwdrivers, allen keys, drill.
  • A computer with the Arduino IDE and Python installed.

Build process

  1. Get the hardware you need (you may even have some of what you need!) and follow the Hardware build instructions.
  2. Upload the Firmware to the Arduino.
  3. Load the Python Interface onto your computer.

Play a Song

  1. Create your song in MIDI format as a .mid file (guide), use one of our examples, or find one someone else has made.
  2. Connect your computer to the robotic recorder player and use the Python Interface to hear your song played on the recorder!

Project Development

This is an open souce hardware project and anyone is welcome to use and develop this project in line with the licences. We also encourage anyone interested to contribute to this development, especially in the areas outlined below.

Development Areas

These are some of the areas we intend to focus future development:

  • Double-sided or twin lung hardware and control to allow playing with reduced pauses.
  • Half-hole thumb technique to reach highest notes.
  • Tounging mechanism to implement the tounging technique and achieve staccato notes.
  • Increase OSH depth adapt the project to depend more on open source components.
  • Improved usability through an improved, maybe graphical, user interface.
  • Improved documentation and build instructions.
  • Increased robotic intelligence such as giving foresight of notes to make decisions on breathing.
  • Expanded scope of calibration to include timing and facilitate robot musicians playing together.

How to Contribute

Contributing to the project is easy and we encourage anyone who is interested to make pull requests.

The general process of contributing on GitHub is widely documented however the outline process is below:

  1. Identify where you want to host the project locally. This could be a Music Makers projects folder for example.

  2. Clone or fork the repository using GitHub desktop or the CLI into this location (CLI is recommended as this helps you become more familiar with Git in general). You can do this with the following command:

    git clone https://github.com/ICMC22-tmp/OSH_Automated_Recorder
  3. Update the project and then make a pull request!

Other Robotic and Autonomous Music Players

Just for fun we thought it would be interesting to include other robotic music players. They range from the sublime to the wacky, but each one is beautiful.

Acknowledgements

The inspiration for this project was Andrew Henry's automated guitar player.

License

This project is licensed under the GNU General Public License v3.0 and CERN-OHL-W

music_makers's People

Contributors

bennett-j avatar bethanmoncur avatar garry-clawson avatar kyle-fogarty 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.