Author Topic: FV-1 vs microcontrollers (specifically Teensy 3.6)  (Read 3960 times)

imaradiostar

FV-1 vs microcontrollers (specifically Teensy 3.6)
« on: February 14, 2017, 09:48:25 PM »
After a few conversations with Mark I'm seriously considering this question. I was totally convinced I wanted to use the FV-1 on an upcoming project but more and more I'm thinking I'll just use a Teensy microcontroller. Of course, I don't have the first clue how to make good sounding effects in regular C code, so there is still a big learning curve. I've only been messing with microcontrollers since last summer. Please correct me if I've stated anything incorrectly.

Pros in favor of FV-1:
-supposedly easy to write for
-easy chip to set up and use
-existing code to get me started
-used in a ton of commercial products with great sounds
-good forum of DIY effect builders

FV-1 cons:
-need to program external EEPROM, need a programmer to achieve that. No on-the-fly programming with just a laptop without some fiddling.
-any advanced projects need external switching and logic, possibly external wet/dry blend depending on your personal goals
-reason to doubt the codec quality for some effects
-only 6 MIPS
-SMD only, slight limitation to prototyping

Pros in favor of Teensy (3.5 or 3.6):
-orders of magnitude more processing power, roughly 200 MIPS for teensy 3.6 and 150 for teensy 3.5
-easily programmed from Arduino IDE or any of a number of other dev environments
-use with readily available teensy audio board for easy breadboarding, use nicer AK4556 codec or similar if I make my own board
-any board made to accept a teensy 3.5 or 3.6 is likely to get a HUGE upgrade as Paul continues to produce new and more powerful Teensy boards in the same form factor
-direct access to any control or display scheme one wishes to use
-built-in USB for programming, ability to add USB host or access SD card for various functions
-DIP format for easy breadboarding, all the complicated digital stuff is contained on one board. Home made effect could have Teensy and AK4556 on a schmartboard, mounted to veroboard for the simple analog and power supply stuff.
-helpful forum
-given the available power it's likely to grow in popularity as a guitar effect platform
-any C based code could be ported to something like a SAME70 chip with greatly increased processing power while still using a cheap ($40) development board
-potential for multiple IO; insert effect loop, etc
-about 3-4 times as powerful as the POD 2.0 processor if my research is correct

Cons for Teensy:
-no large body of DSP code available to the best of my knowledge (hope I'm wrong)
-subject to availability of Teensy boards (though code could be made to run on any Kinetis K66 chip)
-breaking new ground at every turn
-not as "cut and dry," processor is general purpose and will likely require more debugging to get a properly working widget.
-architecture not designed for audio/dsp unlike FV-1 or any of number of traditional DSP chips, in spite of power processor may introduce more IO delay because it's not DSP specific.

Anyway, just thought I'd ask and see what people say. Have a good night!

Jamie
Hi! I like to build stuff. Sometimes, when life slows down a little bit, I even get to build stuff for myself and others rather than just for work.

Digital Larry

Re: FV-1 vs microcontrollers (specifically Teensy 3.6)
« Reply #1 on: February 14, 2017, 10:14:08 PM »
I'm pretty experienced with FV-1 and a little less so with writing effects in C or C++.  I'd say many of your points are spot on although some aspects of FV-1 programming are pretty abstract.  It's very difficult to have a real comparison of MIPS because of the FV-1's architecture.  For example, if you use the built-in LFOs it only takes one or two instructions to set them up and access them.  Similarly with reverbs, it's going to be a lot easier with the FV-1.  Some guy wrote a graphical tool for creating FV-1 patches similar to Pure Data, which I'm led to believe has made creation of effects child's play for many people.  That guy was me.  Check my signature line for details.

Biggest limitation I find with the FV-1 is only 3 pots for adjustment (more if you add external circuitry and/or do things like feedback or wet/dry mixing in the analog realm). Also there are no switch inputs which could be read by the code to do things like tap tempo or any other switchable thing you might want to do.  Experimental Noize (who distribute the FV-1) announced a chip that amounts to a next-generation FV-1 at the January NAMM show.  That one has 6 pot inputs and 7 switch inputs.

If you are only making effects for yourself then you might appreciate the greater flexibility of the Teensy.  If you want to go commercial, the lower cost of the FV-1 would probably be attractive, unless you hit one of its limitations in pursuit of your vision.

There is quite a bit of C code over at musicdsp.org.  I have also used the Synthesis Toolkit (Stk) which has a bunch of pre-built C++ classes for all sorts of effects and synth UGens (modules/blocks).  However this assumes you are using something like a Mac or Windows and doesn't really try to be super efficient for deployment on an embedded micro.
« Last Edit: February 16, 2017, 12:46:38 AM by Digital Larry »
Digital Larry
Holy City Audio - home of SpinCAD Designer
http://www.holycityaudio.com

imaradiostar

Re: FV-1 vs microcontrollers (specifically Teensy 3.6)
« Reply #2 on: February 14, 2017, 11:27:34 PM »
Thanks Larry, that's a lot of great info to look into. I was of course referring mostly to your work when I suggested the FV-1 might be easier to work with. ;)

I had assumed that the "purpose built" nature of the FV-1 betrays its lowish MIPS number. I suppose many things you'd have to code in a conventional processor are already built in hardware in the FV-1, thus my last con for the Teensy.

I have an idea that I think would be really helpful to a lot of musicians but I haven't decided if I should go completely open source or make it a commercial product. It's that whole debate- I could make it a shared design then get screwed when someone in China or even in the US likes it enough to make a commercial version.

I'm excited about the idea of a higher-powered FV-1 style chip. Hopefully it'll address some of the things designers have had to work around. The photos of the demo board have 6 pots and a tap tempo button so that's the battle won for most people. Ability to address a display, additional switches, and even an SD card would make it a slam dunk.

I've taken apart a few of the effects that I already own and I've been surprised to see how many use the FV-1. Clearly it's a performer. It also makes me wonder if I could read the eeproms and try to learn what I can about their effects. I guess I'd need a "reverse compiler" for that and I doubt it exists. Last I checked you can't really decompile code once it's in a machine language. My recent purchase of a Neunaber Slate convinced me I need to give the FV-1 a shot, at least for reverb, chorus and ambient noisemaking stuff. It would be a ton of fun to install a custom rom in my Tech 21 flyrig 5.

I just registered on the spin semiconductor forum and your forum. Even if I don't use the FV-1 for my current project I'm going to order a few and mess with them. It'll be good to learn the language in case the new chip is as good as it sounds.

thanks!

Jamie
Hi! I like to build stuff. Sometimes, when life slows down a little bit, I even get to build stuff for myself and others rather than just for work.

Digital Larry

Re: FV-1 vs microcontrollers (specifically Teensy 3.6)
« Reply #3 on: February 15, 2017, 10:07:28 AM »
Thanks Larry, that's a lot of great info to look into. I was of course referring mostly to your work when I suggested the FV-1 might be easier to work with. ;)

That's kind of you.  Truth in advertising, SpinCAD can do a lot but there are a lot of more subtle and/or powerful things that you will only be able to get to if you go hands on with the Spin ASM.  Some people have told me that looking at the ASM generated by SpinCAD helped them to learn.  I'm taking some online courses doing audio programming in Java, and I inevitably think "why has this got to be so difficult"?!  I actually hate writing audio processing code even though it can be more powerful and flexible.  The GUI approach vastly shortens the path between concept and execution - as long as you have the correct blocks to work with.

I have an idea that I think would be really helpful to a lot of musicians but I haven't decided if I should go completely open source or make it a commercial product. It's that whole debate- I could make it a shared design then get screwed when someone in China or even in the US likes it enough to make a commercial version.
Ain't that the truth!  One just has to factor that into the equation.  Nice thing about the next-gen chip from EN is that it includes EEPROM which cannot be read externally. 

Ability to address a display, additional switches, and even an SD card would make it a slam dunk.

I'm pretty sure that will stay in the domain of a general purpose micro.
Digital Larry
Holy City Audio - home of SpinCAD Designer
http://www.holycityaudio.com

markseel

Re: FV-1 vs microcontrollers (specifically Teensy 3.6)
« Reply #4 on: February 16, 2017, 11:24:45 AM »
Anyone remember the Wavefront AL3101/2? It was an application specific fixed-point DSP that executed up to 1024 instructions per audio cycle.  Each instruction included fetching a coefficient, a sample word, performing multiply/accumulate, and storing the result - all as one instruction.  So its 50 MIP's (1024 instructions per 48 kHz audio cycle) was more like 200 MIP's when comparing to a conventional micro controller (MCU).  It also included single instruction cycle log/antilog and also handled delay lines automatically so you did't have to move samples and wast MIPS on maintaining a delay buffer.  Man I loved that chip.  The Spin FV-1 is similar in these regards but adds a few low-speed ADC inputs for pots, and mediocre audio stereo ADC/DAC.  It makes for good platform for a single digital product.  The AL3101 is more powerful than the FV-1 and with an I2S interface you can add your own audio ADC/DAC (Wavefront made some east to use ones that had something like 108dB of dynamic range!).  The FV-1 doesn't have enough power for me.  The AL3101 did at the time (over 5 years ago).  I created a compiler for it, firmware for Atmel to program it and give it 'pot' interfaces. 

Well the AL3101 faded away and so did all of my investment.  There was *no* follow up to it that part that matched the increase in price/performance that continues in the silicon/ASIC space.  If this chip had a lifetime and a lineage I'd have stuck with it.  Same fate for the FV-1?  Sure it's fine for what it squarely intends to do (LFO's, chorus, flange, short reverb) but beyond that as far as musical algorithms for guitar?  But right now, for evolving effects/complexity, it's a dead end.  But for what the FV-1 does today it's as simple as it gets - so it has an audience for good reason.

'C' and MCU's is where I went.  'C' will stay with us and even if it dies the 'C' code is readable, expressive, and portable with a bit of effort.  MCU's continue to get faster/cheaper and more powerful in terms of numerics.  MCU's and DSP's are on a collision path - MCU's are incorporating DSP instructions and DSP's are incorporating digital and mixed signal peripherals.  They're both coded in 'C' (C++ if your into that sort of stuff).  There's a lot of DSP libraries (CMSIS DSP for ARM is excellent).

It's a no brainer to me   - if your idea if DIY effects is to assemble a kit or to make a simple reverb then use the FV1.  If you want to create a foundation of knowledge and code for evolving effects and experimentation beyond short-delay time-domain modulation effects (chorus, flanger, etc) then learn 'C' and use an MCU with DPS support (ARM Cortex M4 or M7, XMOS xCORE).  Heck try using a Analog Devices SHARC (though hardware is expensive) - they're programmed in 'C' and the DSP and run-time library is elegant and simple.  It's not as hard as most think.  Get a Teensy and use ARM's CMSIS DSP library.  You'll have code that is way more future proof and extensible than FV-1 ASM.

I hope this forum and the DIY community never starts to think DSP, 'C' coding, making PCB's, soldering surfrace mount parts, etc is too hard.  DIY to me is about thinking you can do it, trying it and failing a few times, learning, succeeding, and moving on the next challenge.

Too many times in this forum I see posts about how hard something is.  DSP theory is complicated but designing a low-pass filter and pushing data through an FIR filter?  Easy.  Easy because you can put aside the theory (to some extent) and focus on application.  And there's 'C' libraries, scripts, and GUI programs to create filter coefficients, and libraries for FIR, IIR, FFT, BiQuad, etc.  If you're brave try coding up the IIR/Biquad yourself - it's actually basic, look at Wikipedia or something like that and write code that manages a couple of short delay lines and does multiply and accumulation. 

That's the beauty of DSP - the theory is brilliant and complicated but the application is straightforward and documented by examples on the internet.

And while I'm at it ... :-)

Sure you can use a GUI to create a signal processing flow (lots of GUI's out there) but you'd be better off learning a bit of 'C' - whether you'r a DIY'er or a professional.  It's like learning programming without understanding underlying hardware - you'll program better on MCU's if you know a bit of hardware design and MCU design.  Same with applying DSP.  And what you learn you can take with you to any other platform that is programmable in 'C' (XMOS, ARM CM4 or CM7, PIC, AVR, Analog Devices ...). 

In another post a member said SMT is too hard and I almost exploded.  That mindset in a DIY forum?  Rubbish.  No DIY post should say that but rather point you to where you can learn it.

Learn FreePCB or Eagle, get a scope from eBay, get a fine soldering tip, and practice putting down 0603 or 0402 parts.  I learned FreePCB, discovered cheap PCB manufactures, got a scope and an soldering iron and in a few days was making ugly PCB's without the old-school etch a copper clad board and stick in an acid bath method that I tried back in 1985 using parts from Radio Shack.  A year later they were getting pretty.  Now I can lay out a simple board in a few days, buy three of those board from OSH Park for $6, order parts from Digikey, and put them down in an hour or two.  Glad I did't listen to the 'it's too hard' advice.  Same goes for DSP coding.

Anyway, if you learn some 'C' code, DSP application basics, an MCU like the ARM CM4 (Teensy's are really cool), and invest in PCB/soldering then your'e free to do whatever you want without someone elses closed ecosystem (Wavefront, FV-1, GUI tools) defining your future.

Hey I really don't mean to sound egotistical or like a 'C' and MCU bigot - I know that's how this might be coming off.  But I truly believe in people - that you can do it and I just don't want folks to think otherwise.  It's not about what I can do ( the stuff above that might sound like bragging) but rather that I'm no smarter than anyone else.  It's all about attitude.
« Last Edit: February 16, 2017, 11:26:35 AM by markseel »

pgorey

Re: FV-1 vs microcontrollers (specifically Teensy 3.6)
« Reply #5 on: February 16, 2017, 04:22:55 PM »
I really like the concept of the DIY / I can do it attitude.  Of course we can when there is such a large community to help us.  I'd like to know more about implementing micro-processors into designs.  I imagine it's what some of the more complex stomp boxes like this one use.  I want to build something like this for sure and though I am intimidated by the software, programming side, i am also inspired to do something challenging.

http://www.ehx.com/products/canyon




Digital Larry

Re: FV-1 vs microcontrollers (specifically Teensy 3.6)
« Reply #6 on: February 16, 2017, 04:24:59 PM »
Great post Mark!  One thing that becomes clear is that in some ways, whatever perspective we have is defined by the path we've followed.  I taught myself 3 programming languages in addition to FV-1 ASM in order to write SpinCAD.  And the things that happened were defined by MY pain points trying to create the end result (FV-1 code).  So other people may not relate to it quite the way I do.  I don't even remember why I bought the FV-1 dev board, back in 2011 or 2012, but at that time, the Raspberry Pi was either not released or if so just barely, and I don't think that the ARM stuff like Teensy evolved (esp with easily integratable audio codec) until just the last year or so.  So I fell into that hole and my perspective is the result of the time I spent crawling out of it.

You are correct in that acceptable hw solutions at the low end are colliding from different directions.  It's a fair question to ask whether the new Experimental Noize chip has any incredible advantage over an ARM/CODEC/SRAM combo.  The guys from EN developed that chip because it's an outgrowth of what they aready knew how to do.  Maybe they will find a market among the current FV-1 customers but yes their solution is arcane and abstruse and a bunch of other strange words I don't really know the meaning of.  So the challenge for the low end is heating up for sure.

I'm interested in C/C++ code and while I haven't done anything beyond using Stk and ChucK on the Mac/PC, ultimately I would still want to use a GUI for lots of things.  There is a processor called "Heavy" https://enzienaudio.com/ that turns Pure Data diagrams into C++ code.  There is "Audio Weaver" - https://www.dspconcepts.com/audio-weaver - not really geared towards guitar/musical modules but apparently you can add your own functions using MatLab.  I guess it's a personal thing whether you prefer to write code.  All I know is that I'm older than you so I'm trying to use my time more effectively.   :icon_lol:

btw, some references to Cool Audio V1000 describe it as an AL3201 clone.  I don't know enough about it to say.
https://www.gearslutz.com/board/product-alerts-older-than-2-months/900994-coolaudio-wavefront-chips-now-available-small-quantities.html
http://www.coolaudio.com/docs/datasheet/V1000_DATASHEET.pdf
Digital Larry
Holy City Audio - home of SpinCAD Designer
http://www.holycityaudio.com

markseel

Re: FV-1 vs microcontrollers (specifically Teensy 3.6)
« Reply #7 on: February 16, 2017, 05:01:51 PM »
Hey DL good post yourself.

By the way the AL3201 is the reverb chip, and the AL3101 and AL3102 are the general purpose DSP chips.  It seems that AL3201 and AL3102 get mixed up a lot.  You'd think they could have used different numbers to prevent that!

Yep, I suppose the path you start with is usually the path you stay on since it's what you've invested in and are comfortable with.  And so I'm biased for sure.  But at the same time I think 'C', DSP, and MCU's from the ground up to do DSP effects gets a bit of a bad rap for a couple of reasons.

First and foremost I think that any platform that's both general purpose and powerful will inevitably show solutions with bloat.  Like a goldfish that grows to the size of its tank so is a lot of software.  I'm convinced that lots of software engineers like making complicated stuff.  I've seen many projects that form a technical playground for new ideas and future over-proofing rather than just getting it done as simply as possible.  I'm no longer impressed by complexity but rather discouraged.

I can't imagine trying to dive info audio effects plugins on the PC due to the frameworks that have to be learned - probably C++ with loads of class libraries.  Or even programming audio effects in Java where there's likely a large framework, libraries, and development flow to assimilate.  Having a GUI front end hides all of the complexity and I understand that - but too bad the underlying code wasn't simpler to start with.

I hope my project (FlexFX) demonstrates a DSP platform that's simple, powerful, can be coded in 'C' with practically no coding overhead not related to signal processing.  Then you simply learn a bit of 'C', some basic DSP techniques, and you've got something going.

I hear about the Experimental Noize stuff but not sure what's going on there.  Sounds experimental  :P  So far a bunch of noise? :P

I have developed ultra low-power wireless (control and audio) for hearing aids for 10-15 years now.  *Many* years ago ASIC's were the way to go for large hearing aid companies due to the need for RF radios and audio processors that functioned within the power and voltage supply envelopes (1.2V zinc air battery, 1mA average power consumption, sub-10mA TX/RX power, voice quality audio over 2.4 gHz, G722 or CVSD encode/decode in hardware, BLE support, multi-band audio compression, etc).

Now IC's are showing up by the bigger chip makers that do these things (Nordic Semi for radios, On Semi for hearing aid DSP's) - and it calls into question whether or not a companies' investment in ASIC's would actually pay off (it costs a lot of time and money to design and fab your own silicon!).  If markets drive IC development you can bet those chips will evolve very quickly - look at MCU's with DSP support or ultra low power MCU's.  So why would Experimental Noize benefit from an ASIC when ARM M4's and M7's are cheap and hooking up an audio CODEC is pretty basic.  And of course there's many DSP's to choose from.

Perhaps there's a similar story for proprietary DSP's.  A good approach 10-20 years ago (Keith Barr? Wavefront?  Spin?  Probably other effects companies?) before MCU/DSP offerings have become mainstream.  But these days with multiple offerings of DSP capable MCU's?  While those proprietary ideas were maybe genius back then they just seem like a misfit now - same story as other ASICS in other industries.  Case in point I haven't seen any serious audio product that doesn't just use ARM, TI, Analog Devices, XMOS?  And of course these platforms gather following in many app domains resulting in an ecosystem of dev tools, examples, forums, libraries, etc.

Would love to see something from Experimental Noize and compare it to contemporary/commodity offerings for MCU/DSP stuff.  Regardless I bet TI, EnergyMicro, ST Micro, Microchip, Analog Devices will be more competitive for anything related to moderately powered DSP and moderately low power MCU solutions and will keep up with the tech curve faster than anyone making an ASIC.  After all where's Wavefront and Spin these days?  And what happened to ASICs in the hearing aid space?

Learn some 'C', some DSP, and how to program an MCU then it doesn't matter what Experimental Noize does in terms of ASIC's - which seems to be nothing at the moment - or where they go with their chips for the long haul, which if Wavefront and Spin taught us anything is pretty much nowhere.
« Last Edit: February 16, 2017, 05:15:31 PM by markseel »

octfrank

Re: FV-1 vs microcontrollers (specifically Teensy 3.6)
« Reply #8 on: February 16, 2017, 10:39:08 PM »
or where they go with their chips for the long haul, which if Wavefront and Spin taught us anything is pretty much nowhere.

Every chip has strengths and weaknesses, same with every programming language but I must speak to the last point. There were things that happened in those companies that people simply do not know about, I'm probably the only person left that knows all the details. As to Spin, we had a plan for more chips unfortunately Keith died and that caused a number of issues (legal, etc.) with the company. We had a plan, we had preliminary designs, we had demand. However the death of the owner can have a great impact on such things. Basically your conclusion is incorrect.
Frank Thomson
Experimental Noize

markseel

Re: FV-1 vs microcontrollers (specifically Teensy 3.6)
« Reply #9 on: February 16, 2017, 11:10:24 PM »
Thanks for posting that.  Details of circumstances aside you were still up against tech and market forces that evolved and forced others out.  How would you have been different?  Does an ARM CM4 cost more than an FV-1?  The M4 has more processing power, can be programmed in C/C++/ASM, and has broad DSP library support.  So given that how does a FV-1 or follow up challenge this on cost and performance?

Quote
Every chip has strengths and weaknesses

Yep.  No disagreement there as long as were talking about that chip having strength/weaknesses that change over time as the market and tech landscape evolves. 

Quote
We had a plan, we had preliminary designs, we had demand.

That's great but plans are no guarantee of success.

The circumstances were unfortunate but even with different circumstances and planned Spin IC follow ups I would still look to other historical accounts of ASIC rise and fall patterns in domains disrupted by evolving commodity/general purpose  technologies that both benefited from larger markets that supported gaining of momentum and support -- while also being able to service niche markets or perhaps disrupt/enter adjacent markets. 

Quote
Basically your conclusion is incorrect.

No it's not.  Not for markets of appreciable size and even for some niche ones.  I've seen ASIC's come to service the immediate need then fade as general/commodity tech moves in (if the market opportunity warrants) amidst silicon price/performance evolution.  And when this didn't happen it was because the market was too small.  So either Spin will be replaced with something else or it will continue to service something small and niche.

I've seen it first hand.  I corresponded with the Wavefront engineer and his sentiment was the same - they couldn't compete with the tech shift that was happening at the time - which was emerging DSP solutions with larger markets that supported the evolution of complete ecosystems (tools, doco, source code, IP, etc).  They couldn't grow with the likes of TI and others creating cheaper DSP's with sophisticated dev tools and dev communities.

So whether or not you would have had continued success with different circumstances can still be debated.  But hey I'd be proven wrong with another successful audio effects ASIC chip.  Think that will happen?

Well anyway the Spin chip has had a long life so far, it nailed the demands of the time (genius as someone here said) and is still used, and still garners interest.  It's a small player and always has been.  After using the Wavefront parts, similar in design and ASM instruction set approach, I'm more than happy to have moved on to the new wave of DSP capable MCU's.
« Last Edit: February 16, 2017, 11:27:48 PM by markseel »

markseel

Re: FV-1 vs microcontrollers (specifically Teensy 3.6)
« Reply #10 on: February 17, 2017, 10:44:33 AM »
Just strolling down memory lane ... I can see why the FV-1 has a following.  Too bad these ASIC's come and go but I think that's just how this market works - like it or not.

As I said I was a huge fan of the Wavefront AL3101 but had to ditch it when my effects goals out grew it.  I really wish Wavefront had follow ups with more power. 

Just for fun here's the data sheet and instruction set manual.  Really elegant chip and instruction set.

http://www.wavefrontsemi.com/UserFiles/File/AL_Info/AL31/Wavefront%20AL3101CG%20AL3102CG.pdf
http://www.wavefrontsemi.com/DataSheetsFolder/Wavefront%20DSP1KAsmLangInst.pdf

Personally I think the AL3101 is more understandable than the FV-1 and it's more powerful but they do share a similar design philosophy.  One that inevitably (IMO) creates that initial market opportunity rise due to addressing a demand gap, and the eventual fall due to more generalized silicon/IC encroachment.

But even given that pattern that's repeated itself for many-an-ASIC I'd probably gravitate to the AL3101 design if it had been followed up by parts that scaled with the semiconductor space's price/performance advancement.  If a new part ran at perhaps 4 times the speed (200 MIPs and 192 kHz capability rather than 50 MIPS and 48 kHz) I'd probably be using it knowing that I might be headed for a dead end when the ASIC's demand dies off.

Thankfully XMOS came a long with a multi-core processor that's the easiest path to ultra low-latency high throughput and flexible I/O processing that I've seen so far.  But in some ways it struggles with the same issues.  Its DSP capability has been strong for a long time but the advent of the Cortex M7 puts this in danger (One XMOS 8-core tile has about the same DSP capability as an M7, about two times of an M4, and about 1/2 of a 300 MHz SHARC using non-HW accelerated IIR/FIR blocks).  So I wonder when I'll hit the XMOS dead end and be forced to move on to ARM, TI or ADI?

« Last Edit: February 17, 2017, 11:04:33 AM by markseel »

orbitbot

Re: FV-1 vs microcontrollers (specifically Teensy 3.6)
« Reply #11 on: February 19, 2017, 09:35:39 AM »
Slightly off-topic, but wait; you're saying that the Neunaber Immerse is basically a Spin FV-1 pedal with a program selector?! Along with most of the Neunaber line?

As for the rest, as a software developer my knowledge of electronic engineering is limited but growing, however as probably familiar the fast rule is that any dedicated chip is faster than doing something in software, but with the former you end up with limited configurability (pots, LFOs etc.) whereas the question in the latter case is perhaps mainly one of latency; can it process fast enough (processor speed, ADC-conversion, algorithm implementations, ...).

I hope this forum and the DIY community never starts to think DSP, 'C' coding, making PCB's, soldering surfrace mount parts, etc is too hard.  DIY to me is about thinking you can do it, trying it and failing a few times, learning, succeeding, and moving on the next challenge.

Too many times in this forum I see posts about how hard something is.  DSP theory is complicated but designing a low-pass filter and pushing data through an FIR filter?  Easy.  Easy because you can put aside the theory (to some extent) and focus on application.  And there's 'C' libraries, scripts, and GUI programs to create filter coefficients, and libraries for FIR, IIR, FFT, BiQuad, etc.  If you're brave try coding up the IIR/Biquad yourself - it's actually basic, look at Wikipedia or something like that and write code that manages a couple of short delay lines and does multiply and accumulation. 

I definitely agree with this, and it's something that echoes strongly in the software development domain. Very few schools (if any) teach enough practical skills for a software developer to become proficient, in the best case the education provides a solid foundation to evolve from. Everything else is gained through applying yourself and learning as you go. There's no real magic to it, but after a while it gets easier as your mind has had the time to filter and sort through all the information that you've been exposed to along the way.

As a hobbyist without any vested interest in any of the platforms in particular, I'm really excited for the future, it seems that we are getting close to or are already in a situation where DIYers have a chance to experiment with very good hardware for effects for a relatively small amount of money. Because of this, I also don't really see any big point in pitting DSP and hardware designs against each other, people will gravitate towards the thing that they are able to understand and build with, companies will still have to deal with the make a living aspect (carving out a niche, make a brand, selling units, R&D). There's probably a reason there's still a market for distortion/fuzz pedals and everyone keeps shipping variations on the same thing  ???

Regarding what to learn or focus on, I'd say that understanding fundamental musical signal processing is the most important thing, rather than how a certain thing is achieved. The different domains (HW & DSP) have different things to consider, but it really helps to know what you're looking for when you don't know how to achieve a specific thing  ;)

gena_p1

Re: FV-1 vs microcontrollers (specifically Teensy 3.6)
« Reply #12 on: May 18, 2017, 09:42:19 AM »
Alesis AL3201 had only 128 instructions. As later Spin FV-1 , it's inheriting old  Keith Barr's philosophy  - fetch one sample and do 128 instructions (power of 2)  ,
 i'd loved to read Keith interview about the roots on Sean's site: https://valhalladsp.com/2010/08/25/rip-keith-barr/

FV-1 is not only DSP, but DSP abs'c/beginners handbook. After studying mostly by the knowledge base on Spin  official site, i wrote simple king of Spin Asm on plain C for stm32f4 in couple of days.

As for sound DSP platform, people are using not only sharc / adau / freescale , but inexpensive cheneese mp3 coding chips. If you got fundamentals, you can make sound anything.

FV-1 is still enough for start, lot's of data, open source patches, etc