Это видео недоступно.
Сожалеем об этом.
Build your own synthesizer module with PICO ADK!
HTML-код
- Опубликовано: 17 авг 2024
- PICO ADK is an integrated system that can run VULT DSP code, and it comes equipped with a high quality digital audio converter and 8 analog inputs for connecting controllers. Building your own hardware synth never has been so easy! Table of contents:
00:00 intro
00:10 hello
00:35 board overview / features
01:19 hardware needed
02:11 downloading and installing the software development kit
04:02 installing your firmware / dsp code
04:26 example 1: a simple synth
05:09 (simple audio example)
05:42 a more complex example (with some hardware controllers)
06:09 how to create and compile your own DSP code / folder & project structure
06:48 how to try some demo scripts from the VULT page
07:33 outlook
08:06 conclusion
08:42 important things to consider!
09:06 full audio demo
11:12 bye bye
Links:
PICO ADK schneiderslade..., www.tindie.com...
Potentiometers: amzn.to/3Rxkcc2
Breadboard & cables amzn.to/3YsB3Pd
3.5mm stereo sockets amzn.to/3I0vT7G
VULT language vult-dsp.githu...
PICO SDK www.raspberryp...
PICO ADK on GitHub github.com/Dat...
PICO ADK pinout schematics datanoise.net/...
Shell script commands needed:
Using DOCKER:
git clone --recursive github.com/Dat...
cd PicoADK-FreeRTOS-Template
./build-firmware-docker.sh
Or compile manually
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install npm
sudo npm install vult -g
wget raw.githubuser...
chmod +x pico_setup.sh
./pico_setup.sh
cd pico
rm -rf pico-sdk
git clone github.com/ras... --branch master --recursive
cd ..
git clone --recursive github.com/Dat...
cd PicoADK-FreeRTOS-Template
export PICO_SDK_FETCH_FROM_GIT=1
mkdir build &&cd build
cmake ..
make
#picoadk #diysynth #synthesizer
HÄLP ZIS CHANNEL
/ floyd_steinberg
floydsteinberg...
floydsteinberg...
/ @mr_floydst
Join us on Woody Piano Shack's Discord server: / discord
Get 7% off on DistroKid with this link distrokid.com/v...
PayPal.me www.paypal.me/...
Shop a Huge Selection of Synths and Drum Machines at PerfectCircuit.com!
link.perfectci...
Here's what I have in my setup at the moment. Want to have that, too? Please use the followings links and support me:
Yamaha EX5 www.ebay.com/s...
Kasser Synths Arcade www.tindie.com...
MPC One, Novation PEAK, Reface DX, Strymon Nightsky, Strymon Volante, Strymon Iridium, Zoom MS 70 CDR, Korg NanoKontrol 2, Korg NanoKey, Akai EWI USB, Zoom R24, Zoom H5, Yamaha MT7:
www.thomann.de...
Some bands / artists I've been following for a long time are (among others) Massive Attack, Pink Floyd, Pet Shop Boys, Archive, A-Ha, Yes, Porcupine Tree, John Mellencamp, Jean-Michel Jarre, Metallica, Peter Gabriel and Perturbator. So my music will kind of sound like those (without ever reaching the greatness of those artists, of course). :-)
Links:
PICO ADK schneidersladen.de/de/datanoise-picoadk, www.tindie.com/products/datanoisetv/picoadk-pico-audio-development-kit-rp2040/
Potentiometers: amzn.to/3Rxkcc2
Breadboard & cables amzn.to/3YsB3Pd
3.5mm stereo sockets amzn.to/3I0vT7G
VULT language vult-dsp.github.io/vult/overview/
PICO SDK www.raspberrypi.com/documentation/microcontrollers/raspberry-pi-pico.html
PICO ADK on GitHub github.com/DatanoiseTV/PicoADK-Hardware
Shell script commands needed:
Using DOCKER:
git clone --recursive github.com/DatanoiseTV/PicoADK-FreeRTOS-Template
cd PicoADK-FreeRTOS-Template
./build-firmware-docker.sh
or ...
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install npm
sudo npm install vult -g
wget raw.githubusercontent.com/raspberrypi/pico-setup/master/pico_setup.sh
chmod +x pico_setup.sh
./pico_setup.sh
cd pico
rm -rf pico-sdk
git clone github.com/raspberrypi/pico-sdk.git --branch master --recursive
git clone --recursive github.com/DatanoiseTV/PicoADK-FreeRTOS-Template
cd PicoADK-FreeRTOS-Template
export PICO_SDK_FETCH_FROM_GIT=1
mkdir build &&cdbuild
cmake ..
make
Looks good. Affordable and solving the audio implementation hassle. ty
Holy moly these DIY kits are.getting more and more interesting. Thanks for this video!
Thanks for watching! I agree.
wow impressive hardware. I would like to know more. Thanks for this video.
Thanks for watching!
yes, we want to know more :)
Coolest DIY synth project ever. And great video!
Thanks!
Nice board. Would be nice if you keep it in the picture via a video about VULT
Noted! Will take some time, though.
It's a really awesome project! I've been following it for the past couple of months or so and I've one critique: I don't understand its price point as it's the same price as the Daisy Seed but it's far less powerful. I think he should reduce the price, so it would make more sense. Not dissing btw just sharing my opinion and he's done an amazing work. I hope this will be successful but the price tag might seem a little bit illogical to other people as well. Thanks for making a video on this :)
Thanks for watching! I think your message will reach to intended recipient. ;-)
Thanks for your comment, I understand your point. The price tag is due to the fact that we are not producing in big quantities, but rather in small batches of 50-100 boards, which makes the production runs more expensive. We have not made any trade-offs on the quality and included a 8 channel 12-bit 1 megasample ADC, which is already 5€ by itself, ESD protection, careful power filtering and the 32-bit Audio Codec.. The board is a 4 layer board with ENIG finish with 0.127mm trace width, 0.45mm minimum drill sizes and all vias are capped with resin, which adds additional cost, so the profit margin is already very low.
I have Daisy Seed but this looks pretty interesting as well. Thanks Floyd!
Thanks for watching!
Amazing work... well played!
Thanks a lot!
This is an excellent tutorial. Thank you!
Glad it was helpful!
Gefällt mir. Ich warte auf eine Version, die auch Audio-Inputs hat. Dann kann ich eigene Effektpedale konstruieren.
yes, please!
make another video ( or more 🤣) on this topic ( or similar ) !
Working on it! :)
Great informative video and nice bass at the end :) Like other people here, I'm curious about how the Pico ADK compares to the Daisy Seed?
I don't know the Daisy Seed but on paper, the latter does look better for it has more memory and an audio in. That being said, this here has 32bit audio and a dual core cpu. Specs are here
www.electro-smith.com/daisy/daisy
github.com/DatanoiseTV/PicoADK-Hardware
great video, both vult and pico adk look super interesting! i wonder how this compares to electrosmith daisy...
Hi, thanks for watching! I think @datanoisetv gave an in-depth answer to that somewhere in this comments section. I think he claimed the overall built / sound quality of his board might be better, while the feature list of the Daisy Seed is certainly longer. :-)
amazing as always ty very much !
Thanks for watching!
Thanks, this is awesome!
Thank you very much!
Awesome !!! congrats !!!
Thanks!!
Saw this video, ordered two boards right away. I need replacements for Axoloti Cores.
Thanks for watching! DatanoiseTV will be delighted to read this. :)
very very interesting project!
Thanks for watching! It is!
I'm considering getting one of these! I can only find the version without the ADC though, will that be a problem? Great video btw! 🔥
There is no audio ADC here, just the one for picking up analog signals generated by potentiometers etc. (Though it's operating frequency theoretically is suitable for picking up audio - you _could_ try )
Amazing Overview! This device is as close as I can get to finding a pre-made solution for me needs. Possibly you know of something else or how to make it work? I need to play a mono audio file (frequency sweep) out of 8 outputs (via a single DAC and small amps or an 8 channel DAC), those outputs will be processed externally, and then come back into my device on 8 ADC inputs. Their signal amplitude will be measured and stored. Essentially, an 8 channel Audio Device Tester. I can't for the life of me find anything Arduino or Pi based that can do it.
There's another tiny board called the "Daisy Seed". www.electro-smith.com/daisy/daisy - I'm not so shure about the 8 audio outputs, though. You'll most propably need to add some DACs for that.
Nice! Many of us have things like the Model D or 2600 or ER gear, too. Midi to CV conversion is getting pretty interesting, with devices like the FH-2, Midivolts, etc IE a model D/2600 would be much more interesting with velocity influence...no? I'm just getting started with that :)
You could use this board for MIDI to CV conversion, but the USP is it's analog input and it's audio chip.
@@mr_floydst TY, sir. I meant that as hint for future topic :)
I have a monostation and a minibrute 2s. They both have sequencers that send things that can control the limited number of accessible patch points on the model D to add dynamics. It would be even more interesting with the many more options of a 2600.
This doesn't seem to be the perfect device for midi/cv but I too was immediately contemplating ways to use these things to control analog signals too! :)
Is this what's inside my $800 Roland Boutique? Just kidding!
Don't look inside the korg wave series...
Haha
Yesn't. :-)
So, if I want something with polyphony capabilities, may I use some of these, and mixing them?.
By the way, Mr Floyd could be, some day, father of the next generation of synthesizers .... I hope..
cheers from Peru
@@amoscosoparedes This board can handle polyphony. I'll show that in another video.
Interesting stuff, dive deeper
Hi, thanks for watching - I just released the follow-up video.
Greetings, Having enjoyed your videos for quite some time, finally subscribed. Thank you for the content you share. I have a slightly off topic query / video request regarding the feasibility of retrofitting a keyboard synth into a desktop module vs a diy build to host certain sound engines? Hopefully that makes sense…
PEACE
Thanks for watching/subscribing!
So you want to add some kind of computer into an old keyboard?
@@mr_floydst That does sound like an awesome idea, but something similar to that…
Cool 👍
Thank you very much!
Hello. Thank you for this tutorial. As I got zero knowledge in programing I have a question. I've followed your tutorial but I meet a problem. Instead of having PicoADK-FreeRTOS-Template dir, I have a PicoADK-Firmware-Template dir. So I changed the cd command to this directory. Everything seems to work fine but at the end, never had the main.uf2 file.
I don't understand what I did wrong as I've followed your tutorial step by step and didn't get an error (apart from the directory problem). Could you please help me? Thank you
Hello François, it's very likely there have been updates to the overall process in the meantime. If everything compiled without errors, you should be able to find the .uf2 file by entering "find . | grep uf2" on the console, in your home directory. This should show you the location of the firmware.
I'll try that. Thank you for your answer !
Is there polyphinic synt for this board available?
Not yet, but some people are working on it. I'll post a video in one or two weeks.
I sadly can't get my hands on the Pico ADK, can i use a generic raspberry pi pico instead?
I'm afraid that won't work with the PICOADK dev kit. This board has some extra hardware that's not found on the RasPico.
Just to ask a noob question, this pico ADK would the heart of a digital synth. Is there a hardware oscillator in one of the surface mount chips that is not obvious? Thanks for the video. This is a very interesting project board that I would not have learned about otherwise.
Hi, thanks for watching! You're right, this would be a digital synth. This board runs VULT DSP code. There is no analog oscillator on board. (edit: It's not a derivative of the RasPico)
@@mr_floydst Thanks for the clarification, Floyd. I appreciate that this is a fairly niche question. 😀
My understanding of this is that everything from oscillators on is just code.
Nice and interesting projects ! What kind of English accent do you speak ?
It's the "old german guy left school 30 years ago and re-learned english by listening to his favourite youtubers from all over the world" accent. ;-)
@@mr_floydst😄
So interresting !!
But too complicated to prepare, to install, to build ...
I didnt well understood 1 thing (Google translate is not so smart) :
The 3 pins to the 'audio socket' are for the regular sound ?
And the Midi input is provided by the usb ?.?
Does the card has a "TX/RX" pins to plug a midi socket (with a 220K res of courses ^^) ?
We need so more informations !!!
Thanks for watching!
Yes, the 3 pins are regular stereo audio outputs.
MIDI is provided by USB indeed.
You can examine an interactive pinout here: datanoise.net/picoadk/
Yeah, I think I'll need to do a follow up video already. ;-)
I have just improved this. Now you only need to install docker and the firmware will build via the PicoADK docker image :) Yes, you can attach DIN MIDI but need an optocoupler. There is also a mainboard coming soon for the PicoADK with MIDI.
Hi Floyd. Excellent job 👍 but i prefere my axoloty core 😉
Thank you very much! There are so many nice things out there in the DIY hardware realm. :-)
Can I also just download the firmware.uf2 instead of compiling it myself?
Hello, thanks for watching! Of course you can do that (but I'm not sure there is one for download - but you could try to get someone send it to you)
Almost as cool as a banana flavoured submersible!
Almost! :-)
Not completely understood the capabilities. Could it be used as output only audio interface synth(s) and live filters also?
At the moment, this board can run DSP code and register as a MIDI device. Future development might take it into different directions, but that's what it is now.
Hi! Really nice video! If I want to build a Casio SK-1 inspired sampling keyboard but I am blind and new to programming, where do I start?
This board has 2MB of flash space, so in theory, you could upload a limited amount of samples.
But I think a project more suited for your needs would be Samplerbox: ruclips.net/video/3Ak2o5ZDI9I/видео.html
It's relatively easy to grasp and written in a high level language so you can get into it more easily.
Floyd missed the part where you mentioned you are blind. VULT looks well designed as a language, but it's definitely something that requires a bit of coding knowledge and a good grasp of math. Sound is made of math after all.
VULT generates lower level code that can then be compiled & installed on single board computers and microcontrollers.
The trick is ensuring your code editor is accessible. Microsoft Visual Studio is supported as a development environment for building your sampler or other sound applications. It would definitely have the best accessibility feature for coding as a non-sighted developer
More Voltage more Voltage, err! I mean more Vultage! More Vultage! 🙂
Noted! :-)
Can we do romplers (play samples with the keyboard) with this system/vult?
Yes, see github.com/vult-dsp/vult/wiki/Language-Reference, "embedding WAVs"
This board has 2MB flash storage though, which is not a lot by today's standards.
@@mr_floydst Not for WAVs anyway (why not MP3s already?)
Anyway enough for a single WAV sample rompler or a drumkit, I guess.
How can I connect a din connector for midi in?:0
Hi, thanks for watching!
I can't check it myself at the moment, but you have to build that yourself using the IO pins.
There's a well written tutorial here: diyelectromusic.wordpress.com/2021/06/13/raspberry-pi-pico-midi-channel-router/
You should be able to transfer the info found there to this hardware. The DEV kit used is the same.
... or buy this: www.ebay.co.uk/itm/194872078825
I tried to share with you my DIY $18 BP Synth built with a BlackPill dev board a year ago but you did not seem interested in it, yet it is very similar to this. Would you be interested in taking a look at it?
Hi! I'm sorry but I can't seem to remember that. Can you please send an email to fs @ floydsteinberg dot com so we can talk about this?
Instagram and Facebook and RUclips messages often get lost, especially when containing links.
How does Vult compare to the Mozzi library?
VULT (as far as I can tell) has a "run anywhere" approach, the VULT compiler can convert your scripts to C++ or JavaScript for example. MOZZI is for arduino specifically.
12-bit ADC input though? would be cool to up that for effects
I'll pass your input on (you can also join the Discord Server and post your feedback there)
Tindie tells me that the seller is on a break - sourcing one from Berlin is now 39€ plus 25€ shipping to the States. Ouch.
Please stay in the line - there are some news coming regarding PICO ADK and VULT! :-)
Can VULT DSP code run on a Raspberry Pi 3?
Yes, it can (for example, in a browser).
No audio inputs then? Shame. Would be interesting to see Arduino support for it.
There is no built in audio input here indeed. Support for MOZZI ( sensorium.github.io/Mozzi/ ) is on the way as far as I know.
@@mr_floydst Did you already look at the Daisy Seed from Electrosmith? It's been out for a few years and seems like a stronger competitor.
I heard about that for the first time today! Will try to get one.
future teensy?
the chip is a available in big quantities, thats why i developed it :) join our discord!
@@RetrospektiveAudio link your discord!
@@RetrospektiveAudio $75 to the UK! wow!
@@twoseventhree This doesn't sound right. At the Tindie store? Global shipping is set to 10€.
@@RetrospektiveAudio ahh!!! i clicked the cart twice! i added 2! yeah, its $41 for 1 with shipping! apologies!
@FloydSteinberg Not sure if you are reading the comments still for this 3 month old video, but I ran into an error when replacing the dsp.vult with any other file for the picoadk hardware...
Something like this is the result:
[ 40%] Transcompiling Vult DSP Code to C++.
[ 41%] Building CXX object CMakeFiles/main.dir/src/main.cpp.obj
/home/sven/development/PicoADK-Firmware-Template/src/main.cpp: In function 'void i2s_callback_func()':
/home/sven/development/PicoADK-Firmware-Template/src/main.cpp:230:32: error: 'Dsp_process_ret_0' was not declared in this scope; did you mean 'Dsp_process_type'?
230 | fix16_t left_out = Dsp_process_ret_0(ctx);
| ^~~~~~~~~~~~~~~~~
| Dsp_process_type
/home/sven/development/PicoADK-Firmware-Template/src/main.cpp:231:33: error: 'Dsp_process_ret_1' was not declared in this scope; did you mean 'Dsp_process_type'?
231 | fix16_t right_out = Dsp_process_ret_1(ctx);
| ^~~~~~~~~~~~~~~~~
| Dsp_process_type
I looked it up , these functions are defined in the vult.h header file, which is generated by the system. But here, I cannot find the original function behind that. There is nothing in the dsp.vult file.
Which magic happens here?
My best guess is you should check the definition of your process(), noteOn() ... functions and the parameters they call for.
See vult-dsp.github.io/vult/demo/
If that's not the cause of the problem, I think joining the Discord server and asking one of the creators is your best option, as there have been numerous updates since I made this video: discord.gg/BsHUEdStMt
@@mr_floydst Yes, I found a workaround to that by assigning direct from the function Dsp_Process. Now I am hanging at the controls :-)
Hi Floyd, last 2 days I have tried running through the install and build ,but I encounter a similar make error to @svenwehrend7495 at stage [40%] Transcompiling Vult DSP Code to C++
../tools/vulture: 8 Syntax error: “)” unexpected.
In the tools/vultc folder there appear to be only executables, so it looks like I am blocked from getting this to work. Any ideas?
Thanks great Channel BTW.
Donna
Hi, thanks for watching! I'll try to look into this and get back to you soon. ;-)
It was confirmed this is a bug in the SDK which now has been resolved (please download the updated version).
Thanks for reporting this, but using the actual project page might be a more direct way of solving such issues: github.com/DatanoiseTV/PicoADK-Hardware/discussions :-)
Best regards!
Thanks Floyd, Wunderbar!. After re-installing this afternoon with latest SDK the tool chain now works and builds successfully.❤