Code Monkey home page Code Monkey logo

drummachine's Introduction

16 step sample based DrumMachine

DrumMachine

Demo of features (Youtube)

This is a 16 track Sample based Drum Machine built on a 32bit PIC (PIC32mx150f128b).

The project hardware is relatively simple in that it limits itself to using the PIC's internal Flash for sample storage and the built in OC PWM for output.

The Drum Machine has 16 tracks (instruments) of 16 steps and can save the song to one of 16 slots on a uSD card.

Features : Updated 24 / 8 / 2019

  • 16 different instruments stored in Flash (Length dependant on sample quality/size).
  • 16 step patterns with 16 patterns per song.
  • 16 songs loaded and saved to FAT formatted uSD card.
  • 8 sample polyphony, mixed in software.
  • 10bit, 16khz instruments sampled from classic drum machines. (stored as 8bit log similar to uLaw)
  • Samples can be "tuned" to playback faster/slower, louder quieter and can also have the in/out points set.
  • "Jam Mode" to add some variety to your tracks by fading in/out each track as it plays.
  • Swing
  • Basic Reverb mode.
  • Analog mono output filtered from an 10bit PWM signal.
  • 16 buttons for beat input plus 4 more and 4-way joystick for interface.
  • 20 leds driven by a Maxim 6957 LED driver to provide feedback.
  • Nokia 1202 B/W LCD mounted on a breakout board displays user interface.
  • Songs are stored as plain text in JSON format to allow some human readability.

More information is available on my blog.

Copyright (C) 2016 Matt Casey : catmacey.com This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

drummachine's People

Contributors

catmacey avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  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.