we’re closing down this forum! Your discussion has moved to: https://community.rebeltech.org/t/owl-pedal-possible-to-set-delay-length-in-ms/828
The new forum is now live at https://community.rebeltech.org/
You might have to go through a ‘Password forgotten / Password reset’ routine to log in the first time.
The OwlWare firmware updates have become a bit of a mess. We’ve been struggling with adding features to an old codebase and with the lack of support for the ST peripherals libraries. No news there!
So I started a clean-room firmware implementation, taking all the bits that work well in OwlWare and restructuring the whole project. And making it work not just for the current OWL Pedal and Modular hardware, but also for the prototypes we’ve been developing here with updated hardware.
You can find it here: https://github.com/pingdynasty/OpenWare
It’s still a work in progress, but the new structure will make it much easier to add features in the future. And it already has a working flexible filesystem (more user slots!) and better memory allocation strategy.
The new firmware is really important going forward, to ensure that the current hardware will still be supported even if/when we launch new products.
Apologies that it’s all taking longer than expected, but the end result should be worth it! I’m hoping to have a beta release ready fairly soon. From there on it will be easier to accept push requests too, should others want to contribute.
Have you got a link to the patch? Doesn’t have to be public.
We don’t currently support MIDI Sysex communication straight to a patch, and Heavy doesn’t support
For a list of MIDI mappings have a look at https://hoxtonowl.com/mediawiki/index.php/MidiMappings – note that not all of these are available for Pd targets.
array I’m afraid I don’t know the answer, my Pd is rubbish – I thought
tabwrite were used for tables?
There’s an example somewhere of storing a short sample in a Pd patch, I’m sure microtuning data can be stored in the same way. Anyone else know which patch that is?
In your patch you are initialising and resetting
int playingIndex1 to 0, but then you have (line 104):
buf[i] = buf[i] + vol*loo1[playingIndex1++ -1];
playingIndex1++ -1 will evaluate to
0-1 which is not so good. Use pre-increment instead:
loo1[++playingIndex1 -1]. And make sure you initialise all member variables incl playing/recordingIndex2.
I’m not sure what would be causing that. So the Simple Delay produces a periodic click for you on the device, with no input?
What block size are you running at, the default 128 samples per block?
The noise floor of the OWL relative to the signal level should be very low. I recently measured the Signal to Noise ratio on a Rohde & Schwarz Audio Analyzer to be -97dB on an OWL pedal.
What sensitivity setting do you use, High, Medium or Low? What does your signal chain look like?
The main things that can cause bad hum or noise are
1) signal levels: too hot, causing clipping, or too low, needing more gain later in the chain which brings up the noise floor
2) noisy power supply, but is sounds like you’ve tried a few different options already
3) ground loops: is the amp plugged in to the same power socket, or could there be a long earth loop? Sometimes when using an audio i/f, doing a round trip (e.g. computer to pedals to computer) can cause lots of hummm.
Things to try are: use the OwlControl app to experiment with different gain/sensitivity settings, turn the levels going into the pedal/s up/down, try connecting everything to the same power socket, or try a ‘ground lift’ on the amp/output if it has it.
I’ve mostly done FFT and IFFT patches where the window size equals blocksize, e.g. 1024 wide FFT every 1024 samples. The problem with these is that they only work well on high blocksize, so I’ve not published any (yet).
Would be great to have a minimal overlap-add FFT / IFFT patch to experiment with, for creating frequency domain patches.
In order to store a patch you will need to use the OwlControl application
1) click the Download Sysex link on the Patch Details page and save the file
2) in OwlControl go to
Tools / Load Patch from File and select the
.syx you just downloaded
3) once uploaded, select which slot to store in
4) optional: click
Save to OWL to make this (and all other settings) the default on startup
I’ve created an issue to update the version information visible to Finder: https://github.com/pingdynasty/OwlControl/issues/11
[ctlin] won’t work (yet), but you can use additional parameters F, G and H (as
Channel-F, et c) which are mapped to CC 1, 12 and 13. See https://hoxtonowl.com/mediawiki/index.php/MidiMappings for the full set of mappings, currently available only to C++ patches.
Line 62 of
HvControlDelay.c is where the assertion fails:
hv_assert((i < __HV_DELAY_MAX_MESSAGES) && // scheduled message limit reached "[__delay] cannot track any more messages. Try increasing the size of __HV_DELAY_MAX_MESSAGES.");
I have no idea how [__delay] works and I’m afraid I can’t suggest a solution. Does the message make sense to you? Might be worth asking the Heavy people unless someone else here knows. Max messages is set to 8, in
About MIDI output, note that the OWL normally only sends MIDI messages when requested, either by the running patch (e.g. using
[noteout]) or by a MIDI host. This means that apps such as OwlControl will continuously poll the device for the current knob settings (unless you turn ‘Poll Device’ off). The reason is to avoid sending an abundance of MIDI messages which might affect audio performance.
Hi there kaosbeat, welcome to our little patch making community!
You can currently send pushbutton and MIDI note messages from Puredata OWL patches. Pushbutton changes (done, I believe, with
send Channel-Push) controls the Push trigger output on the OWL Modular and toggles the LED.
MIDI note output goes to a connected MIDI host and should work with
Not sure why you’re getting a Heavy assertion failure, I can try to find out when I’m next at my desk.
Changing patches and user slots is covered in the Getting Started: https://hoxtonowl.com/mediawiki/index.php/Getting_Started_With_OWL_Modular
Heavy objects: you mean heavylib ? You can simply add whatever file/s you want to use to your patch – but I see you’re doing that already. It would probably be better though, wouldn’t it, if we made them available somehow… Happy to try it out, but I think there are two potential problems: firstly the compilation time will probably massively increase if they’re all included in every compilation, secondly I’d be worried about versioning, ie if you make a patch that depends on a specific heavylib version. Maybe the latter is not really a problem, I’m not so familiar with heavylib.
Great, I’ve pushed that to OwlProgram