Skip to content

Releases: nathanRamaNoodles/Noodle-Synth

Added ArduBadge

24 Jan 22:07
Compare
Choose a tag to compare

This will allow newcomers to easily install this library using the badge: arduino-library-badge

Thanks to Gilmaimon's Ardu-Badge

Created an algorithm to avoid clipping and Added tutorial videos

12 Sep 21:16
Compare
Choose a tag to compare

MusicWithoutDelay v3.5.1

Features Update

  • Created an algorithm that fixes the volume clipping issue when there are more than four notes playing at the same time.

Same Bugs

  • Unfortunately, some songs don't work on the esp8266. 😢 It has to do with i2s, but I don't know how to fix it.
    • It makes a high pitch sound while playing.

Other Changes

  • Added video tutorials as a request by Paul Stoffregen.

Support Update(ESP8266 and ATmega32u4 and Mega2560) and other cool stuff

10 Sep 01:59
Compare
Choose a tag to compare

MusicWithoutDelay v3.5.0

Features Update

  • Added support for multiple boards including esp8266, atmega32u4, the MEGA2560(which used to be broken since 2011)
  • Created Stereo support
    • The Teensy has multi-stereo
  • Added option to increase note polyphony(the only limitation is your microcontroller's processor speed)

New Bugs

  • Unfortunately, some songs don't work on the esp8266. 😢 It has to do with i2s, but I don't know how to fix it.
    • It makes a high pitch sound while playing.

Other Changes

  • I changed the maximum for setVolume() to 127.
    • (0 to 127)

Volume Update and Compiler Warnings fix

03 Sep 00:36
Compare
Choose a tag to compare

MusicWithoutDelay v3.0.0

Features Update

  • The volume control was probably the hardest to achieve in this project, but I'm proud to say that I figured it out(through hit or miss).
  • I've also added Sustain Override in order to take control of each note's front and back-end modulation.
  • Added ability to play simple continous waves, as an addition to my libraries main purpose(playing chiptunes)
  • Added "play once" ability, and a repeat method. This is an improvement compared to my previous method using isEnd() with pause().
    • To play a certain amount of times, simply call buzzer.play(int numberOfTimes)
    • To play for infinty, like the previous Versions, call buzzer.play()
  • Added ability to call multiple methods at once in one line of code
    • For example, If you want to pause and change the volume, you can join methods, as follows buzzer.pause(true).setVolume(50)

Bugs

  • Fixed annoying bug with compiler warnings 😜
  • Corrected + signs in RTTL file to allow sluring sound effect

Other Changes

  • I changed the regular way of updating the instrument, so instead of buzzer.play() it's buzzer.update()
  • Also, the pause() and other similar functions requires a boolean to set it(This is my personal preference)
    • So pause(true) means the instrument will pause and vias versa.

Four-Note Polyphony upgrade, and PROGMEM storage

02 Aug 20:51
Compare
Choose a tag to compare

I have upgraded the number of notes that can be played at the same time(from 2 to 4 note polyphony). I have condensed all four notes into one timer. I have changed the library to use PROGMEM instead of char arrays; this will decrease 5x the amount memory required for a song.

You can now choose many variations of sound waves. So you're not limited to boring square waves. You can try SINE, TRIANGLE, RAMP, SAW, NOISE, and SQUARE waves.

In the future, I plan to forget about using RTTL format and use MIDI files instead. But I'll only do it if people have interest in this library/project.

MusicWithoutDelay Using Timers

16 Apr 00:07
8ffd962
Compare
Choose a tag to compare

This is the first version of the MusicWithoutDelay library. This version of the library uses timers to create sound. It plays sounds without delay.