Skip to content
A framework for digital instrument building with sensors, with improving access in mind. For Pure Data running on Bela / Raspberry Pi.
Branch: master
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
documentation
examples
examples_mobile
im.effects
im.instruments
im.midi
im.mobile
im.modulation
im.utils
json-testing
mmp testing
old-trash
quick tests
.DS_Store
LICENSE
README.md
_config.yml
_main.pd
im.buttons.pd
im.choose.pd
im.generatescale.pd
im.input-help.pd
im.input.pd
im.key.pd
im.linein.pd
im.map.pd
im.output.pd
im.ramp.pd
im.scala.pd
im.scala2.pd
im.scale.pd
im.set.pd
im.triads.pd
im.tuning.pd
im.volume.pd
render.cpp

README.md

Instrument Maker

This is an open source framework for digital instrument building with sensors, with improving access in mind. For Pure Data running on Bela / Raspberry Pi + Arduino. Code developed by Charles Matthews, with workshops currently in development in collaboration with Gift Tshuma and more in the pipeline. Get in touch if you would like to contribute!

An accompanying set of communication symbols can be found here.

This document in itself is a work in progress, and an invitation to conversation. Please access the wiki for more information and development notes.

Distributed under the terms of the GNU Public license version 3 (for now / not sure how appropriate to this project / need to read up on this).

Disclaimer

Instrument Maker is one of my first public repos, and will definitely be messy for a little while. I'm relatively new to Open Source culture - please call me out and/or help me understand if you disagree with anything on here. Same goes for Disability and accessibility issues.

About the code: the current version is not ready for public consumption (see the technical notes below); please feel free to explore the code, and download and try out the abstractions if you are familiar with Pure Data..but I recommend waiting a little while until everything's more coherent.

How does it work?

Within Pure Data (pictured below), create objects with the im. prefix to access building blocks: e.h. inputs, outputs, tuning systems, and synthesisers. Alternatively, download an example from the repository. Upload to Bela, or Raspberry Pi with an Arduino-type device connected.

With Bela, choosing a setup should be a case of dragging and dropping into a browser; the Pure Data files can exist as templates or presets, no need to edit or look at the code unless desired.

This is a screenshot of the Instrument Maker objects in Pure Data. It shows a white screen, featuring minimal outlined boxes with black connecting lines. The boxes are labelled: input, octaves, scale, triads, and there are two instruments: acid and fizzy. The lines are drawn from the top, through each of the boxes in various inlets and outlets, into a box labelled output.

Video demo (code): https://youtu.be/8AJMJq2P8Ko

Video demo (mobile): https://www.youtube.com/watch?v=jl020N0MZxk

Video demo (play): https://www.youtube.com/watch?v=ywEX0N6TpEA

An accompanying hardware component is in development, which adds crocodile clip access to the Bela platform.

Two Bela mini devices with shields attached: these feature white connectors to accomodate plug-in sensors, and metallic circles with crocodile clips

You can’t perform that action at this time.