Giter VIP home page Giter VIP logo

duo-firmware's Issues

Unite and simplify respositories

  • Make old duo-firmware repo work with new branch
  • When it works, move firmware to this repo, and make duo-firmware have the subrepo.

How to upload the firmware from a release?

I see in the readme the instructions on compiling and uploading. But there are pre-built releases ready to be used. What's the command for just upgrading the firmware from a pre-compiled release?

Thanks! You all rock!

Handle keys, pots and sequencer based on a timer

At this point, keyboard scanning, sequencer handling and potentiometer readout happens in the main loop at an unspecified rate. This should be moved to a timer to let for instance slide act predictably.

Blink "start button" while sequencer is off.

When the sequencer is off, the "start button" (SEQ_START) now is on. Some people do not know how to start when the DUO is not playing. The blinking of the "start button" will be a clear que for any user.

It would be nice to let the "start button" blink at the tempo and gate length of the sequencer.

Fast playing on the internal keyboard skips notes

When playing fast on the internal keyboard, for example three notes next to each other up and down quickly not all notes are played (when the sequencer is stopped).
With an external midi controller connected it works fluently, it would be nice to have the same responsiveness with the built in keyboard.

[Feature Request] Chords

Is it technically possible store multiple notes in a slot?

I'm not a C programmer, haven't touched it since college, but I can pick it back up to possibly attempt to add this feature.

If it's possible maybe I can enable it as a feature flag or something like that.
Any pointers (not a c joke) would be great.

Cheers,

Justin

Troubles uploading firmware from Arduino IDE

Hello, I'm attempting to upload the firmware to my Duo and running into some issues.

I've followed the setup instructions in the README, using the Arduino 1.8.5 IDE with Teensyduino 1.4 on a Mac, but the upload always fails with the following error:

Teensy did not respond to a USB-based request to enter program mode.
Please press the PROGRAM MODE BUTTON on your Teensy to upload your sketch.
An error occurred while uploading the sketch

The program appears to compile fine, but the upload doesn't succeed.

Is it necessary to push the tiny button on the Duo unit (through the hole next to the headphone jack) in order to program the board? I experimented with this, but was still seeing the same issues when trying to upload.

I also experimented with building using the Makefile, but ran into some other issues with path configurations.

Any help would be greatly appreciated. I have a couple of modifications I've made to the sequencer I'm excited to try out.

<3 Dato Duo!

Thanks,
Chris

Double speed not to sync output

At this time the "double speed button" (BTN_SEQ1) also speeds up the sync output. While playing with the DUO with the Volca synced to it, it fled weird that the volca also sped up. I think would be more interesting if you would just speed up the DUO's sequencer for the time you press the "double speed button"

Super speed, drone sound

When the tempo (tempo_interval) is at the maximum and the "doulbe speed button" (BTN_SEQ1) is pressed (so the sequencer is almost running into audio range), we would like it if when you press a "keyboard button" (KEYB_x) that it will fill up the entire sequence with this tone and not play in just one note (at is always does.)

Updates to updater

  • When there is no duo midi port available, skip sending midi (don't ask about virtual port).
  • Flag: "Continuous mode"
    • Check for empty MCU repeatedly. Every 5ms or so, and flash it.
    • No user interaction

Add potentiometer mapping functions

Currently, potentiometer values are mapped to their paramters in a linear way. This does not fit well with most musical parameters. There should be a way to map values in a non-linear fashion, for example providing curves such as logarithmic and inverse logarithmic.

Optionally, this could be implemented like commercial logarithmic potentiometers, providing two sections of different linear mappings to approximate the logarithmic curve while providing better performance.

Should this be added on to analogRead() as an extra attribute? Or should it be a separate mapping function?

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.