Can somebody send me some hex files?

Started by patrick398, June 27, 2020, 06:02:17 AM

Previous topic - Next topic

patrick398

So i've finally got my FV-1 board up and running, and successfully made some patches with SpinCad designer. Taking me a while to get my head round some of it though. There seems to be loads of really cool patches on the internet, but they mainly seem to be SpinASM files and since i'm on Mac i can't run that programme. So could someone do me a favour and send me some Hex files for some different effects to try out. I just want to get a feel for what this thing can do. The whackier/glitchier the better :)

As for learning how to code this thing...i feel exactly how i felt about 4 years ago when i first looked at a schematic and thought 'how the hell am i ever going to understand how this works?'
Not sure where to start, or whether i should learn to code this, or something like the Teensy 3.6...they look pretty great, but from what i gather they are two completely different languages?

Thanks comrades


deadastronaut

hi patrick, following as i have a fv-1 on breadboard too....(but havent played with it for a while)

im using spincad too as coding is another universe for me too.... i was trying to get a long delay and reverb combo, but ive noticed that
when i try making a patch there is a trade off with the delay time when you add the reverb...(which goes shorter)

however the reverbs are pretty cool.... chorus/flange/phaser/pitch not so much..i think i'll stick to analogue with those as you have much more control than just 3 pots...

im just using the examples though....and tweaking to see what they can do....which is fun

but yeah the 3 pot thing seems a little limiting, so im just messing with reverbs with it really....

however im sure the coding guys can knock up much better sounds than the included examples....so it'll be interesting to see what you find.. 8) 8) 8)





https://www.youtube.com/user/100roberthenry
https://deadastronaut.wixsite.com/effects

chasm reverb/tremshifter/faze filter/abductor II delay/timestream reverb/dreamtime delay/skinwalker hi gain dist/black triangle OD/ nano drums/space patrol fuzz//

patrick398

Yeah i feel like i'm starting to hit the limit of what i can do with the building blocks in spincad designer. Mainly because i can't seem to get a few of the things to function well (more fiddling necessary i think) and also when i do get something working i feel like it sounds cool but i also want something extra...which at the moment i have no way of doing. I have lots of ideas in my head but not really able to accomplish them with the presets. I can seem to get the LFOs or ramps to work as i thought they might.

Having said that, i am massively appreciative of the time and effort that has gone into making the programme and it's given people like me a way into something which would be impenetrable otherwise. So much kudos for that.

The teensy route seems to have a similar GUI, which is web-based and seems perhaps a little more versatile both in terms of the presets and also what you can control with hardware. I'm just not sure how much time to invest in the fv-1, hoping some cool patches other people have made might inspire me.

Digital Larry

Quote from: patrick398 on June 27, 2020, 07:33:43 AM
I can seem to get the LFOs or ramps to work as i thought they might.
Such as?
Digital Larry
Want to quickly design your own effects patches for the Spin FV-1 DSP chip?
https://github.com/HolyCityAudio/SpinCAD-Designer

patrick398

Quote from: Digital Larry on June 27, 2020, 08:58:25 AM
Quote from: patrick398 on June 27, 2020, 07:33:43 AM
I can seem to get the LFOs or ramps to work as i thought they might.
Such as?

I think i was just messing around trying to hook a ramp lfo or sin lfo to the delay time of a delay and i don't think i could get it working. Similarly if i attach an lfo to something like the glitch shift, where the pot would normally go, it doesn't move the pitch up and down

bartimaeus

i haven't used it, but there's an assembler for mac that'll let you generate hex or binary from spinasm code: https://pypi.org/project/asfv1/

patrick398

Quote from: bartimaeus on June 27, 2020, 11:55:30 AM
i haven't used it, but there's an assembler for mac that'll let you generate hex or binary from spinasm code: https://pypi.org/project/asfv1/

Interesting, thanks for that. I'll add it to the butt load of programmes I have to run on my Mac as punishment for not buying a windows pc

Digital Larry

#7
Quote from: patrick398 on June 27, 2020, 09:20:04 AM
I think i was just messing around trying to hook a ramp lfo or sin lfo to the delay time of a delay and i don't think i could get it working. Similarly if i attach an lfo to something like the glitch shift, where the pot would normally go, it doesn't move the pitch up and down
That sort of surprises me.  You do have to be aware of LFO output ranges and it's probably not obvious.  The SIN/COS LFOs I believe have a control panel setting for -1->+1 or 0->+1 output.  I think the ramp/triangle LFO is unscaled so it goes 0->0.5.  Actually IIRC the ramp magnitude also scales with the width setting.  If you are using  ramp you may need to pass it through one or more gain boost (in the I/O - Mix menu) set to 2.0 to get it to go full amplitude.  The way almost all controls work when you use an input pot or voltage is to use the value 0->1 to scale whatever it is linearly.  What happens if you send a negative value to a delay or filter?  I don't really know.  Don't do it.   :-\ In the case of delays I actually made it 0.05 to 1.0 because almost always you don't really want a long delay to go to zero.  It was a "creative" decision.

To get a feeling for what the LFOs are doing level wise, temporarily hook it to one of the outputs and then look at "Level Viewer" or "Scope" (in the Simulation menu) while running a simulation.  If it goes all the way to the top in level viewer, that is 0 dB or 1.0.  Note that the level viewer is log scale of absolute value so you can't tell if it's negative.

I just set a 4096 width ramp and connected ramp and triangle outputs to an output block and looked at the level viewer.  The curves are not straight as this is a logarithmic display and also there's some smoothing on there that's more useful for monitoring audio than control signals. 

Digital Larry
Want to quickly design your own effects patches for the Spin FV-1 DSP chip?
https://github.com/HolyCityAudio/SpinCAD-Designer

potul

you can browse a lot of fv1 programs here:

https://mstratman.github.io/fv1-programs/

But you will definitively have to be able to compile ....

If you are interested in testing something specifi, let me know and I can compile it for you and send the hex. It's a 5 minutes work.

If you like glitchy things, you gotta check drolo's patches.... glitchy delays, and similar stuff.








patrick398

Quote from: potul on June 27, 2020, 01:36:21 PM
you can browse a lot of fv1 programs here:

https://mstratman.github.io/fv1-programs/

But you will definitively have to be able to compile ....

If you are interested in testing something specifi, let me know and I can compile it for you and send the hex. It's a 5 minutes work.

If you like glitchy things, you gotta check drolo's patches.... glitchy delays, and similar stuff.

That would be amazing! There’s a few on that page that I’m keen to hear. The ‘greenwood delay’, ‘reverse reverb’, ‘johnny’, ‘random loop delay’, ‘pitch step glider’. If that’s too many I can cut it down but they all piqued my interest. What would be useful is being able to see how the blocks are arranged in spincad designer but I’m guessing most of these were made by coding from scratch and therefore not viewable in spincad designer?

Thanks a lot!

bartimaeus

if you want to make glitchy effects, you should really learn spinasm and use the python assembler. teach a man to fish etc. spincad makes it a little too difficult to break things and to take advantage of the limited program lengths. check out slacker's original code for the greenwood delay, it's pretty short/simple and mostly just amplification for the noise generator: http://www.spinsemi.com/forum/viewtopic.php?f=4&t=290

there's lots of videos on youtube if you just want to hear what the chip is capable of, most of the glitch delays on the market use the chip.

patrick398

Quote from: bartimaeus on June 28, 2020, 12:27:49 PM
if you want to make glitchy effects, you should really learn spinasm and use the python assembler. teach a man to fish etc. spincad makes it a little too difficult to break things and to take advantage of the limited program lengths. check out slacker's original code for the greenwood delay, it's pretty short/simple and mostly just amplification for the noise generator: http://www.spinsemi.com/forum/viewtopic.php?f=4&t=290

there's lots of videos on youtube if you just want to hear what the chip is capable of, most of the glitch delays on the market use the chip.

Yes 'teach a man to fish...' but this man is still trying to work out what a fish is  :icon_lol:
You're right though, as i mentioned earlier i am interested in learning to code, as daunting as it seems. I don't know which code language to start with though, so trying to get a taste of what is possible.

Digital Larry

#12
Don't let me stand in the way of you learning to code FV-1 or whatever.  If you want to try some glitchy stuff with SpinCAD, then I recommend:

Run the Noise block into the sample/hold block to get a random number that jumps around at a control rate.  I think it goes from 0 to 1.0.
Use this as the control input, e.g. for the time input in the 3-tap delay.  Run the random number into a scale/offset block to flip it around or scale it in a different way.  Send this to the time control of a different delay tap.

These numbers change abruptly and the delay point just jumps within 1 sample period to the new position.  There is no fading or any attempt to unglitch these transitions.

The "Glitch Shift" block purposely runs the pitch shift code incorrectly to leave all the glitches in instead of fading them out.

However, you have a point, SpinCAD is mostly for "little old lady who only uses it on Sunday" type of effects.

For reference, all of the patches in Erica Synths Black Hole DSP and other FV-1 based products have been built with SpinCAD.  That's not necessarily "glitchy" overall but I think they used it in a real creative way.

My real hope for SpinCAD was that people would develop and share their own blocks.  I mean, once you've created your reverse glitch whatever, don't you want to make it easier to use that same thing in the future in a different way?  But it never really happened more than just a few.  I guess it was too difficult to get the development environment set up.

DL



Digital Larry
Want to quickly design your own effects patches for the Spin FV-1 DSP chip?
https://github.com/HolyCityAudio/SpinCAD-Designer

patrick398

Thanks a lot for the suggestion, sounds very interesting and might give me somewhere to begin. Like I said, a big problem initially is me not entirely understanding how to implement certain things. Running the noise block into the sample and hold for example never would have occurred to me and I'm not even sure why that would provide the ability to control the parameters of something else. I've just reread your description and it does make a little more sense actually but perhaps I need to stop thinking of things in terms of how I would achieve them in the analogue realm. I'll try and get that firing and apply it to different things and generally have a mess around. Thanks again 😊

potul

Quote from: patrick398 on June 28, 2020, 06:28:21 AM

That would be amazing! There's a few on that page that I'm keen to hear. The 'greenwood delay', 'reverse reverb', 'johnny', 'random loop delay', 'pitch step glider'. If that's too many I can cut it down but they all piqued my interest. What would be useful is being able to see how the blocks are arranged in spincad designer but I'm guessing most of these were made by coding from scratch and therefore not viewable in spincad designer?

Thanks a lot!

How is your setup? IF I compile 8 programs into one hex will you be able to use it? Or one program per hex?

patrick398

Thanks Mat, Nathan has very kindly send me a bunch of hex files including the ones from the website i listed so i'll see how i get on with them :)
Thanks so much for the offer though!

Digital Larry

#16
Quote from: patrick398 on June 28, 2020, 05:09:03 PM
Running the noise block into the sample and hold for example never would have occurred to me and I'm not even sure why that would provide the ability to control the parameters of something else.
These techniques are applicable regardless of the approach you take.  Slacker's code uses amplified ADC noise instead of a pseudo random number generator.  An analog noise generator https://en.wikipedia.org/wiki/Noise_generator can also be amplified and run through a discrete S/H stage.  This is most often used in vintage analog synthesizers to control a filter but again anything  can be used to control anything.  Generally speaking you have audio and control rates, control rates being things like LFOs that might at the upper range go up to 20 Hz for things like tremolos and chorus.  A ring modulator can take a carrier signal into kHz range and still be useful.  You can even multiply two audio signals together, but with glitchiness and multiplication comes potential aliasing, if done in the digital realm.  Also, at a certain point, certain things you can do to audio result in it just becoming blasts of grating hash, but to each his own  :icon_mrgreen:.

I don't like programming everything from the ground up as eventually the complexity becomes overwhelming.

If you're interested in a C++ library for audio effects and synthesis, even just to study how things are done, you should check out the STK library.  https://ccrma.stanford.edu/software/stk/index.html

Digital Larry
Want to quickly design your own effects patches for the Spin FV-1 DSP chip?
https://github.com/HolyCityAudio/SpinCAD-Designer

patrick398

Thanks a lot for the explanation, I spent a few hours trying out your suggestion today and I have to say I love it. Took a bit of tweaking to get where I wanted but that trick or using the noise into s/h is great, I'm also using it to control the feedback which sounds good. I was trying to add in some pitch shifting but could only get it to work with certain of the pitch shifters and only when placed in the feedback path of the delay, more meddling necessary!

Digital Larry

#18
Keep an eye on the lower right corner which shows LFO assignment.  The pitch shifters use a ramp LFO.  If you've assigned the same ramp LFO to two things, the indicator will turn red and your code will not behave as expected.

Also, make sure to use a "loop" if your patch has any signals which travel "backwards".  Use "Add Loop" on the left side of the menu.  If you don't do this, your patch might work or it might not.
Digital Larry
Want to quickly design your own effects patches for the Spin FV-1 DSP chip?
https://github.com/HolyCityAudio/SpinCAD-Designer