|
Post by feijai on Oct 16, 2024 21:00:53 GMT
I have posted BEEP in my repository. BEEP is a MIDI-controlled 9-voice sine wave generator with built-in hold and decay, and which generates a variety of beeps and pings. It's velocity sensitive and has a number of options. They say modular can only make bleeps and bloops. Well now you can prove them right.
|
|
|
Post by reductionist_earth_catalog on Oct 17, 2024 17:41:29 GMT
I was trying to test this out with my hacked grains (with an input attached to the serial rx pin of the microcontroller), and it didn’t work, I think because your midi controlled grains firmwares use soft serial by default (where you are reading from the digital out pin?). It is possible things aren’t working for some other reason, though.
In my midi controlled grains firmwares, I use the heavier midi library, where midi is received over the hardware serial interface by default. Can you give guidance on what I should change in your code to use hardware serial? If I don’t need to change anything in code to approach it this way, I suppose there is more troubleshooting I need to do on my end. Thanks!
|
|
|
Post by feijai on Oct 17, 2024 22:19:32 GMT
I don't think there's any reason why a hacked GRAINS shouldn't work fine with software serial. Can you verify that it's not getting anything at all? You might write out what softSerial.read() is reading [if anything] or what softSerial.avaialble() is reporting.
If you want to switch to HW serial, I think this may be as simple as replacing the variable "softSerial" with "Serial" throughout.
1. Make sure that I don't have Serial used for anything else (including Serial.begin(115200)). 2. Then replace softSerial.begin(MIDI_RATE) with Serial.begin(MIDI_RATE) 3. Then replace softSerial.available() with Serial.available() 4. Finally replace softSerial.read() with Serial.read() ... and it might work!
BTW, you might check out my midi library in github.com/eclab/grains/tree/main/midi which is much, much lighter weight than the 47Effects MIDI library you're likely using, and has more features on top of it!
|
|
|
Post by reductionist_earth_catalog on Oct 18, 2024 16:42:51 GMT
That worked! I also somehow missed the explicit instructions in the readmes about which input is the midi input, and thought everything relied on using usb/running a midi-serial converter on the computer side. So software serial works great too! Thanks again for these awesome firmwares!
|
|
|
Post by feijai on Oct 19, 2024 14:39:08 GMT
Ah right. In all the firmware, MIDI input is provided over TTL (a socket on your AE), notionally from an MB/1, a MIDI HEART, or DAVE running on another GRAINS.
The one exception is DAVE, which can receive MIDI input over USB from a USB MIDI router in Java on your laptop.
|
|
|
Post by feijai on Oct 24, 2024 17:27:22 GMT
Updated Beep to fix some bugs.
I'm frustrated with GRAINS's poor handling of soft sounds. As a sine wave gets softer, you hear tons of loud buzzy and hissy artifacts due to the PWM. This really shows up in Beep and MJQ's decays.
|
|