"Slap-on a Raspberry Pi zero, then you have lots of RAM and extra cycles Or PocketBeagle (more I/Os, IIRC)." - tinkeringdude
Yes. And thanks, I do appreciate it. And you're right, this is the thing to do, should one want all the bells and whistles (and I do).
"Or run the whole damn show on it? (I have no idea about the kind of processing and I/O your device uses and in how far your code would be painlessly portable)."
I kind of doubt that that would work. Too much ~200MHz custom logic. But it could certainly be put in a smaller FPGA and run as a peripheral. That's what the rational person would do!
"Starting Linux can take a while, which is not nice for such devices. Can be considerably trimmed down, though. Default Linux image has "everything you're ever gonna need" for the target audience. (There is a ready image without desktop environment for one thing, though)"
My prototype "boots up" in about a second, which is reading the code from the SPI EEPROM and doing a CRC32 on it, then reading it again and sticking it in FPGA BRAM if OK, else fall back to the image already in the FPGA (part of the logic pump). I don't think I could stand much more than a few seconds of boot. Our digital piano takes 10 seconds or so, which seems like an eternity for some reason. Musical instruments should boot instantly IMO, creative impulse can pass so quickly.
"As for "1 year research", there is some open source (no idea about license) implementation of a convolution reverb, I forgot the name, but doesn't it basically mean you "just" need to record the response of a nice sounding room, and Bob's your uncle? (do only Aussies say that? I hear one saying that frequently.)"
Well, a huge part of this project has been to become intimately familiar with all the DSP / electronic music stuff I've been missing out on all these years, and in that sense at least it's been quite valuable (to me at least). The linearized C sensing has been fascinating, the vocal sim almost equally so, the processor design portion is something I couldn't shake to save my life. I've read many papers on reverb and feel I could probably do a passable one in a month or so, if the HW resources were available, but who knows how long I'd practically spend in that rabbit hole? For those who really get into it it's an entire career, which sort of scares me. I loooove reverb!
"But I guess you have lots of code optimized for your meager bare metal target and porting it to a more generic computer takes more effort than recompiling, eh?"
Kind of. The thing with a very simple processor is that the timing is quite deterministic. You can depend on it to never leave the room and go make a sandwich (e.g. cache miss) in the heat of the moment.
"I recently played with those boards. And they're so cute and have so low cost and, compared to my bare metal MCUs I used prior, so much steam behind them! Even if skimpy on the peripherals. I had to mention them"
I completely get where you're coming from, and have to re-convince myself on a regular basis that I'm doing the right thing, for the moment at least. All that >GHz horsepower out there with a boatload of memory for almost no scratch.
Another aspect of it all is the UI. Color touchscreens cost almost nothing, but I really don't want to go there at this point. For one I don't have the memory to map fonts and graphics, for another I think the ancient 4x20 LCD and 8 encoders pretty much do the job (but it's my baby, so I'm kinda blind). It could be sexier, but would that be inherently better?
In a few years FPGA technology should get to the point where 2 or more Hive images with plenty of memory could be instantiated in a very low end part, and integrating reverb would then be pretty simple. I suppose that's where my head is at as regards this project. Or, who knows, maybe someone else will do the integration. For now I'm focusing on sound generation and filtering, and I wish I'd done this whole thing ages ago. Life is quite short, and one's creative time on this earth even shorter.