Headless Raspberry Pi Synthesizer Update

แชร์
ฝัง
  • เผยแพร่เมื่อ 17 มิ.ย. 2024
  • Put together an electronic synthesizer with lots of instruments that uses just a Raspberry Pi and your favorite MIDI controller! You can switch patches and banks using your controller's pads/buttons/knobs. This updated version has an install script that simplifies the setup - just log in to your Pi and enter:
    curl -sL geekfunklabs.com/squishbox | bash
    0:00 Intro
    1:18 Demonstration
    4:10 Install/Setup
    8:11 Browser-based file manager
    9:24 Origins/The SquishBox
    11:05 Outro
    If you need help getting things working, post a question in the Discussions at github.com/GeekFunkLabs/squis...
    More info, products, and music hacking stuff at Geek Funk Labs: geekfunklabs.com/
    SquishBox (a.k.a. the pro version of this synth) in our Tindie Store: www.tindie.com/products/15120/
    SquishBox kits: www.tindie.com/products/22886/
    Build a SquishBox from scratch: hackaday.io/project/9097-squi...
  • วิทยาศาสตร์และเทคโนโลยี

ความคิดเห็น • 287

  • @amigalemming
    @amigalemming 7 หลายเดือนก่อน +15

    For me, a Raspberry as a MIDI controlled synthesizer is so obvious that I wonder why there is not more fuzz about it. As far as I know, Korg Kronos and Yamaha Motif are actually Linux computers inside a piano keyboard.

    • @white2rnado
      @white2rnado  7 หลายเดือนก่อน +6

      This is my feeling as well - if my keyboard basically has a computer inside it I want to be able to rewrite the code if I want to. That was part of my motivation for this.

  • @crazygriefer6489
    @crazygriefer6489 2 ปีที่แล้ว +1

    I love how he explains what every setting does in a simple way

    • @white2rnado
      @white2rnado  2 ปีที่แล้ว

      Thanks! I worry the explanations make my videos too long and boring so it's good to get feedback

  • @Raven3one
    @Raven3one ปีที่แล้ว

    Thanks! this is exactly what i was looking for. Will get to putting this together tonight!

  • @JohnDoe-pq5fu
    @JohnDoe-pq5fu 3 ปีที่แล้ว +11

    I'm glad you did this! I created my own rpi fluidsynth box awhile back and I love it, but it's much cludgy-er than yours. I'm glad you made it more accessible to people who just want to play music. Keep on keepin' on.

    • @white2rnado
      @white2rnado  3 ปีที่แล้ว

      Nice! Fluidsynth is great - have you posted the code anywhere? It's always good to see how other people do things.

  • @lubodega1638
    @lubodega1638 3 ปีที่แล้ว +17

    I watched your first Pi synth video, and this is an amazing improvement. Your info has always been good, but the step up in production quality makes the content top notch. Good job.

  • @maxdoes_
    @maxdoes_ 2 ปีที่แล้ว

    I am so happy I found this video! I tried putting together a Fluidsynth setup about 2 years ago so I could use my Casio MG-510 (an electric guitar with a built-in MIDI pickup) without a computer, but could never quite get it working the way I wanted. I'm excited to follow along with your instructions and hopefully get this all working! Thanks for making such an enjoyable and easy to follow video.

    • @white2rnado
      @white2rnado  2 ปีที่แล้ว

      Good to hear man! Feel free to ask if you need guidance. Casio MG-510 ❤❤😉

    • @maxdoes_
      @maxdoes_ 2 ปีที่แล้ว

      @@white2rnado Thanks! I got it all installed and I'm trying it out with a 25 key USB MIDI keyboard, since the guitar needs a little work. It works but the audio is really distorted and jumbled, especially if I play more than one note at a time. The volume is also sort of low. I'm using a Pi Zero W and a USB sound card. Do you know what the issue could be?

    • @white2rnado
      @white2rnado  2 ปีที่แล้ว

      The Pi Zero is a bit on the low end of processing power for this - you should be able to clean up the audio by increasing the value of --period in your /home/pi/.jackdrc file to 128 or 256. For more info check out github.com/albedozero/fluidpatcher/blob/master/troubleshooting.md#the-audio-cracklesstutters-or-theres-too-much-latency

    • @maxdoes_
      @maxdoes_ 2 ปีที่แล้ว

      @@white2rnado Gotcha. I tried both 128 and 256 and it's still pretty messed up. Looks like I'll be picking up a more powerful Pi!

  • @RYEDillon
    @RYEDillon 2 ปีที่แล้ว +2

    You are a godsend, this is amazing! Thanks for all you do!

    • @white2rnado
      @white2rnado  2 ปีที่แล้ว +1

      Good to know someone can make use of it!

  • @Somelurkerinthechat
    @Somelurkerinthechat 3 ปีที่แล้ว +5

    This is awesome, thanks for your work!

    • @white2rnado
      @white2rnado  3 ปีที่แล้ว

      Thanks - happy to share!

  • @RunTheTape
    @RunTheTape 2 ปีที่แล้ว +3

    man, your mind will be blown when you find mt32-pi. BAREMETAL

  • @Neuri
    @Neuri 3 ปีที่แล้ว

    dude thank u so much. this was fun and worked perfectly!

    • @Neuri
      @Neuri 3 ปีที่แล้ว

      also i kind of accidentally made a double synth. I got the pi to make a midi host for the korg nts-1 so i could play that with an akai lpk25 keyboard which i did but it actually runs along side the patch you created. so I have the jack out of the pi with your nice clean piano to one amp and the nts-1 audio out (powered by the pi) a dirt synth to a second amp with an akai lpk keyboard triggering them both at once! it sounds amazing and i can even run the jack out into the mini korg audio in and use the delay and reverb! and it is tiny and running from one 5v phone battery bank. was all so cheap. thanks again man.

    • @white2rnado
      @white2rnado  3 ปีที่แล้ว +1

      @@Neuri Thanks! Glad to hear it worked out easily!

  • @supersatisfying303
    @supersatisfying303 7 หลายเดือนก่อน +1

    This is AWESOME!

  • @ComatoseMN
    @ComatoseMN 2 ปีที่แล้ว

    Super Awesome!! Thank you!! I'm actually working on building a MIDI bass foot pedal, like you'd find on an old organ, I was looking for creative ways to do this, and this might just workout. (Assuming it all works the way I hope it will), once I get it rigged up, I'll take some video. Again, very very awesome. Cheers!!
    >M

    • @white2rnado
      @white2rnado  2 ปีที่แล้ว +1

      Sounds cool - look forward to seeing it!

  • @DANCEDWAT
    @DANCEDWAT 3 ปีที่แล้ว

    Cheers for the update, I was testing fluidsynth on my Pi Zero not having touched Linux for 15 years :) will see how I go with your scripts, although I'm not familiar with the MIDI functions of my M-Audio Keyrig 49 (Edit button + a key for most 'advanced' functions).

    • @white2rnado
      @white2rnado  3 ปีที่แล้ว +1

      Looks like you could assign the modulation wheel to send a different CC#, which you could assign to SELECT_PATCH: data2.manualslib.com/pdf/10/971/97024-maudio/keyrig_keyrig_49.pdf?7092eeaa5930e8504894cc4da1f83aa2#page=14
      Some of those M-Audio controllers let you assign the octave buttons to send CC's, but not that one - just program/bank change messages. Unfortunately, there isn't a great way to capture those without python getting in the way and slowing the synth way down.
      Good luck with the Pi Zero - I've done it with a USB sound card and it has a bit more delay but is still playable. Might work better if I wired on a headphone jack - possible future video.

    • @geneepak
      @geneepak 2 ปีที่แล้ว +1

      how did it work out on the Zero?

    • @DANCEDWAT
      @DANCEDWAT 2 ปีที่แล้ว

      Had issues with the USB splitter I bought not being able to power both the controller and USB audio interface, I have a hub now which seems to solve that problem but need to reinstall all the fluidsynth stuff as I made a huge mess of it. Considering just buying the NEW zero for a bit more grunt regardless!

  • @Freddisred
    @Freddisred 2 ปีที่แล้ว +1

    I have been running squishbox on a pi 4 for a few months now and it's great! Really good work here, thanks for making it please continue its development.

    • @white2rnado
      @white2rnado  2 ปีที่แล้ว +1

      Great to hear and thanks! I'm actively using it myself so development will continue!

  • @tamasgal_com
    @tamasgal_com ปีที่แล้ว

    Sounds like a nice alternative to the Minidexed which I am already loving :)

    • @white2rnado
      @white2rnado  ปีที่แล้ว +1

      Minidexed is indeed very cool. The tradeoff is that this software runs on Raspberry Pi OS, so you don't have to wipe your SD card - but I think MiniDexed can get much lower latency audio since it's bare metal \m/

  • @AgustinBad
    @AgustinBad 10 หลายเดือนก่อน

    Thank you very much! It works out of the box! Abrazos

  • @majs835
    @majs835 2 ปีที่แล้ว

    I watched your video and everything is up and running! I have one suggestion, though. Can you please make a tutorial on how to add and remove banks, soundfonts, and patches? Thank you!

    • @white2rnado
      @white2rnado  2 ปีที่แล้ว

      This playlist of lessons should give you what you need: th-cam.com/play/PL4a8Oe3qfS_-CefZFNYssT1kHdzEOdAlD.html
      Skip to 1:00 in the first lesson to see how to use the web editor to copy files over and edit banks 😉

  • @John3K21
    @John3K21 2 ปีที่แล้ว +1

    There's a hot chance I'm going to make this exact build now that I've found this, and if so, there is a hotter chance I'll be back with follow up questions.

    • @white2rnado
      @white2rnado  2 ปีที่แล้ว +1

      Sounds good. Feel free to use this or github.com/albedozero/fluidpatcher/discussions too - it's a bit easier to write long questions there.

  • @NAJJJB
    @NAJJJB ปีที่แล้ว

    Awesome tutorial and great vid! I was thinking of buying a soundcard (usb) for my raspberry pi 4b. Any recommendations? Thanks.

  • @jamesbrown99991
    @jamesbrown99991 ปีที่แล้ว

    Thanks for sharing this! Regarding corrupting the SD card on power down, there's a script floating around to configure read-only mode, enabled via a jumper on the GPIO.

    • @white2rnado
      @white2rnado  ปีที่แล้ว

      Found it! That's interesting - I'll experiment and see how well the synth works running under busybox. Thanks for sharing!

  • @danielmontanez-razielzorov5439
    @danielmontanez-razielzorov5439 2 ปีที่แล้ว

    Yo Bill! That was a fantastic project man, I'm quite excited to try it out! I've a couple of questions though, will it work on a Raspberry pi zero w? I'm not fully aware of the technical differences between the RPi 3 and the Zero, but I've seen people install and run a headless setup on a Zero W with FluidSynth, albeit not as precisely and neatly as you have. And the second question is, will the installing script you coded work on the Zero as well? You see, I've been a musician for about 16 years but I've just recently got into coding and this stuff is still way out of my league as of right now hehehe
    Anyways, thanks man, I wish more people did tutorials as detailed and beginner-friendly as you do. Much appreciated! Stay funky dude!!!!

    • @white2rnado
      @white2rnado  2 ปีที่แล้ว +1

      Thanks for the kudos! Yes, the install script works on a Pi Zero, but because it's slower than a 3B+ (single-core 1GHz vs. quad-core 1.4MHz) you'll probably want to increase the value of --periods in your /home/pi/.jackdrc file to 128 or 256. You'll also need a powered USB hub to be able to run both a USB sound card for output and your MIDI keyboard/controller. The newer Pi Zero 2 W will probably work better, but I haven't been able to get my hands on one yet. Feel free to ask questions here or at github.com/albedozero/fluidpatcher/discussions if you need!

    • @danielmontanez-razielzorov5439
      @danielmontanez-razielzorov5439 2 ปีที่แล้ว

      @@white2rnado thanks for the quick reply man! Now's the time to get the rest of the gear you suggested, I'll surely ask again if I encounter other roadblocks along the way hehehe you've been of tremendous help!

  • @shortymcsteve
    @shortymcsteve 2 ปีที่แล้ว

    Awesome video! Thanks. I was wondering, do you know if it's possible to load VST's from a Pi headless from boot? There's some softsynth I own that I really like and having a way to use them live without a laptop would be awesome.

    • @white2rnado
      @white2rnado  2 ปีที่แล้ว

      Your VSTs will need to have a Linux version (some do, but def not all). Then you need a program to host the plugins - I hear Carla is a good one. You might check out Zynthian - it's an OS for Raspberry Pi built around running softsynths, and I think it has Carla built in.

  • @andreyv2677
    @andreyv2677 9 หลายเดือนก่อน

    Awesome! Thanks for your job! It really works fine with my PI4. However, I spent a lot of time trying to set up switching instrument and bank buttons on my Impact LX49+. The reason of issue is when you monitor events via "aseqdump" command via PI terminal on Linux, it shows "0" channel, or "15", e.g. (depends on pressed controls), and these values don't work. When I set up FluidPatcher and used its monitor, it shows "1" and "16" channels, and I found out that these values are correct and fixed the script on PI!

  • @diegoadrianperezochoa956
    @diegoadrianperezochoa956 3 ปีที่แล้ว +1

    Amazing bro! regards from mexico, can you make a video using this synth with ableton?? you are amazing!

    • @white2rnado
      @white2rnado  3 ปีที่แล้ว +1

      At the moment you can only record this synth into Ableton like any other audio source. However, I'm working on a plugin version of the software that should work in Ableton or any DAW that supports VST or AU!

  • @pandoggy
    @pandoggy 2 ปีที่แล้ว +1

    Love this! The only issue I am having is delay. I am using a USB interface which has less delay than the headphone jack, but still more than I would like. Would using a sound card that connects to the GPIO pins be better? Also, I am using an install that runs the desktop environment. Would keeping the desktop from loading also improve the MIDI latency? In any case, thanks for your work!

    • @white2rnado
      @white2rnado  2 ปีที่แล้ว

      Sorry to be long replying to this. A USB sound card should give you about the same latency as a GPIO-connected I2S card. Running a desktop environment doesn't seem to affect latency for me, either, as long as I'm not trying to run Firefox at the same time or something. The audio.period-size=64 and audio.periods settings=3 in SquishBox/squishboxconf.yaml should give a latency of about 1.1ms with a little USB dongle sound card like this one: www.amazon.com/Syba-external-Adapter-Windows-C-Media/dp/B001MSS6CS. If you run the script from a command line it will tell you if it can't provide those settings (like with the headphone jack). This also assumes you're using a Pi 3B+, older models run a bit slower.

    • @pandoggy
      @pandoggy 2 ปีที่แล้ว

      @@white2rnado So I had the WCMCU-5102 on order so I tried it with this setup. Latency is now much better than with the Behringer UM2 USB interface. Not even noticeable using a Pearl Malletstation as the controller. I have no latency measurement or knowledge of the chip set of the Behringer but this changed the setup from a toy to a useable instrument. Thanks so much for this project!

  • @marcooasan1668
    @marcooasan1668 ปีที่แล้ว

    squishbox from shop will work on midi keyboard too? im planning to buy the kit just for the latency thing, and i wonder if i can plug it to my computer interface or amp

  • @magic7ball460
    @magic7ball460 ปีที่แล้ว

    Hi! love this! currently setting mine up. Is there a way to adjust the velocity curves?

    • @white2rnado
      @white2rnado  ปีที่แล้ว

      You can, but it's usually easier to change on your keyboard/MIDI controller itself. Check out this discussion: github.com/albedozero/fluidpatcher/discussions/52

  • @GrimYak
    @GrimYak ปีที่แล้ว

    Exactly! I was looking up prices for Nord Stage and Holy Manure, they are expensive. Then I decide to buy the Arturia Keylab Essential for 300 USD, then the Analog V pack with 6000 sounds for 50 USD. I now have a synth for 350. Suck it Nord!

  • @frederickvasenius5533
    @frederickvasenius5533 2 ปีที่แล้ว

    This looks like it could be a good solution to a problem I have. I have a few RPi computers and I'm looking to get a midi keyboard controller. Since the feel is important get a hands on feel for the contoller, I want to physically play a weighted hammer action keyboard before I buy. That works with keyboards that have sounds to begin with, but when visiting a local music store, keyboard controllers weren't hooked up to anything so I couldn't get a feel for them and this was a big chain music store. One would think that a music store would understand this problem and have a laptop available to demo midi controllers. This looks like it could be made into a good plug and play solution to try out midi controllers.
    Is the synthesizer software velocity sensitive? Are sampled sounds available, specifically a piano?

    • @white2rnado
      @white2rnado  2 ปีที่แล้ว

      This would work fine as long as the store doesn't mind you plugging it in 😉. You could use one of those phone backup batteries to power the Pi. Keep in mind there's a little bit of latency (~10ms) with this barebones setup as explained at 10:32
      Yes the synth is velocity sensitive, and piano is the first patch

  • @vincentvanhensbergen9176
    @vincentvanhensbergen9176 2 ปีที่แล้ว

    Thanks for the clear explanation, I got it working with the headphone jack but too much latency. I still have a Scarlet Solo USB interface laying around so i've plugged it into the Pi. It connects and works when I play sound from youtube in the desktop environment. I did a re-install of your script and i chose to use the USB interface as audio output. But unfortunately no sound. When I boot the pi i can see the midi keyboard is connected and the usb interface too. Not sure where to start troubleshooting, do you have an idea? Thanks!

    • @white2rnado
      @white2rnado  2 ปีที่แล้ว

      This should be doable. Did you see my troubleshooting tips at the link below?
      github.com/albedozero/fluidpatcher/blob/master/troubleshooting.md#i-dont-hear-any-sound
      Try editing the config file and using alsa instead of jack as the audio driver - that can be easier to get working.

  • @DANTEFISI
    @DANTEFISI 3 ปีที่แล้ว

    Hi! I have a question: the sounds that the module use are from GM2 (General MIDI Two)? I know that you didn't say that but do we agree that it is the same quality of sounds, right?
    ¡Thank you very much for your time!

    • @white2rnado
      @white2rnado  3 ปีที่แล้ว

      The sounds I'm playing from roughly 2:00 to 3:00 are mostly from the FluidR3_GM.sf2 font. From 3:00 onward you can hear me play a few higher-quality sounds - you have the option to download a large set of additional sounds (~400MB) during the install process. You're not restricted to GM2 by any means - you can upload whatever soundfonts you want to use.

  • @ivanguralnik
    @ivanguralnik 6 หลายเดือนก่อน

    very nice video! I would like to use this for electronic drum pads, can I add custom sounds and trigger them with different pads/midi notes? (also, Im currently making an adc with an arduino, y already made the "octopad" part)

    • @white2rnado
      @white2rnado  6 หลายเดือนก่อน

      Yes, you can do this. You create a soundfont with your different drum samples, then write a bank file that routes the notes on your pads to different notes in the soundfont. You could even set up one of your pads or a slider to switch patches, so you could have multiple sets of drum sounds.

    • @ivanguralnik
      @ivanguralnik 4 หลายเดือนก่อน

      @@white2rnado Im already picking up signals from my piezos on an arduino, and already have the piezos set up in an array like with cymbal support whole, so Im halfway there, :D trying to install your amazing software in my raspbi3 now

  • @randriamamonjytsilavina9257
    @randriamamonjytsilavina9257 2 ปีที่แล้ว

    Hi, great work bro,
    i have also one question, it can work with soundfount who have aftertouch and velocity? it can read velocity and release ?

    • @white2rnado
      @white2rnado  2 ปีที่แล้ว

      Yes! As long as your keyboard/controller can send aftertouch and note on/off velocity messages, the software will handle them properly.

    • @randriamamonjytsilavina9257
      @randriamamonjytsilavina9257 2 ปีที่แล้ว

      Another question 😅,
      can i do this with the "Raspberry pi 0"?

    • @white2rnado
      @white2rnado  2 ปีที่แล้ว

      @@randriamamonjytsilavina9257 Sure, although there will be a bit more lag since the Pi Zero isn't as fast as a 3B+, and you'll need to use a USB sound card or solder on your own headphone jack (here's an example: th-cam.com/video/3pXB90IDNoY/w-d-xo.html)

  • @RNMSC
    @RNMSC 6 หลายเดือนก่อน

    Just saw this today, and thinking it may be just what I need. I've a Pi4A+ board that now I get to print a case for to get itto d o something useful for me (I hope.) May have space for a hat to add buttons and an I2C screen on as well. Still would be fairly low profile I think. Thank you.

    • @RNMSC
      @RNMSC 6 หลายเดือนก่อน

      And two made. 1 Pi3A+, and 1 Pi4 2G. I doubt that I'll be performing any time soon, but it gives me some way to listen while dabbling. Thanks for the great work. Going to need a headphone amp from the sounds of things. Have a fun, and keep up the good work.

    • @white2rnado
      @white2rnado  6 หลายเดือนก่อน +1

      Glad it's useful! You could also use the PCB from my other video: th-cam.com/video/64-OijJMXRo/w-d-xo.html - that has an onboard DAC with line-level output.

    • @RNMSC
      @RNMSC 6 หลายเดือนก่อน

      @@white2rnado I may go with that on another build. I don't know if I ran into a flaky pi3a+, or some other issue. Amber showed the volume at max, but audioout of fluidity was low. Amp works with it. I didn't bring either on this trip though. Next time. :-) I will have to work out the codes for controls for three different keyboards. All in good time. I will consider the board though. And I do have a separate audio board hat I can try.
      Thanks for the great work!

  • @anthonysanchez2517
    @anthonysanchez2517 2 ปีที่แล้ว

    @whiteTornado
    Is there key press velocity settings available for this? I just finished your tutorial and noticed that I have lost me key velocity.

    • @white2rnado
      @white2rnado  2 ปีที่แล้ว

      I'm redoing the lesson videos right now to bring them up to speed with the changes to banks in version 0.5. There's some description of them here: github.com/albedozero/fluidpatcher/discussions/20
      If you post your bank file as an issue on github or send it to me I can help debug 😀

  • @MegaCadr
    @MegaCadr 3 ปีที่แล้ว

    Neat!
    Sorry if I missed this, but how do you deal with powering off the pi without potentially corrupting the sd card? Do you have some button to trigger the pi to shutdown?

    • @white2rnado
      @white2rnado  3 ปีที่แล้ว +1

      No problem! At 3:36 if you hold down one of the patch change buttons for 7 seconds it will initiate a safe shutdown. After 5 seconds the PWR led starts blinking to warn you're about to shut down.

    • @MegaCadr
      @MegaCadr 3 ปีที่แล้ว

      @@white2rnado thank you!

  • @cazaquatle
    @cazaquatle 2 ปีที่แล้ว

    Looks like I'm at least a month late on getting a premade squishbox. Any plans for restocking your tindie store or was it more of a one run and done type of deal? Amazing job BTW...

    • @white2rnado
      @white2rnado  2 ปีที่แล้ว +1

      I'll definitely be restocking within the next couple weeks - I had a run of orders and sold out of my last few quicker than I expected. As long as people are buying, I plan to keep making them!

    • @cazaquatle
      @cazaquatle 2 ปีที่แล้ว

      @@white2rnado Awsome' that's great to hear. I'll get on the waiting list. I would love to attempt to build one from scratch but at the moment it seems a bit daunting. 😅 I'm definitely going to give it a try soon though. Thanks for your code and design work, it's great to have people putting their work out there for hopeful makers to explore. 👍🏽

  • @user-gx5ld1rn5j
    @user-gx5ld1rn5j 2 ปีที่แล้ว

    Hello!
    I want to make a sound box for my arduino midi drums. and I want to make more channels for triggers, is it possible to connect 2 midi devices to fluidsyns at once (2 modules of arduino-midi drums)?

    • @white2rnado
      @white2rnado  2 ปีที่แล้ว

      Yes - you can theoretically connect as many USB devices as you want to fluidsynth, as long as your USB ports have enough amps to power them all. You'll want to set each device to send on a different MIDI channel, so you can route their MIDI messages to different sounds/functions if you want to.

  • @donnyf12
    @donnyf12 3 ปีที่แล้ว

    My midi controller (Mono Price Stage Right 606607) only has knobs and sliders. Do you know if I can use these to change sounds? Must I have a button to do this? Thanks for the great video. I have it working but am unable to change from the default piano sound.

    • @white2rnado
      @white2rnado  3 ปีที่แล้ว

      Yes! By default, a knob or slider mapped to CC #23 will scroll through the patches. The Pi's green LED will blink on switching patches to provide feedback. You can also change the value of SELECT_PATCH in the headlesspi.py script to a different continuous controller number if that's more convenient.

  • @zerstaerker
    @zerstaerker 3 หลายเดือนก่อน

    Impulse-ordered Pi3b+ and the external DAC module. Can I run the headless version with the external DAC for the lower latency?

  • @reginr
    @reginr 2 ปีที่แล้ว

    Thank you so much for this post! Please confirm if it will work with Raspberry Pi Zero W.

    • @white2rnado
      @white2rnado  2 ปีที่แล้ว +1

      Yes it will, with the newer Zero 2 or the original Pi Zero. You'll need a USB sound card to get the best audio.

  • @unboxingglory8451
    @unboxingglory8451 2 ปีที่แล้ว

    Really great explanation, I have a question, I wan to build this onto my midi avcordion to have internal sounds, the Bass is on Ch1, Chords Ch2, Right hand notes Ch3, how can I configure that to change the patch independently for every channel?
    Or can I use it without the patcher and use just plain fluisynth?
    I would apreciate your help, you did a great job overall. I like your projects.

    • @white2rnado
      @white2rnado  2 ปีที่แล้ว +1

      You would create multiple patches, each with a different combination of soundfont presets assigned to channels 1, 2, and 3. There isn't a built-in way to scroll through different sounds on each channel individually, but you could get pretty much the same effect by picking out the specific set of combinations of sounds that you actually want to use. If your controller sends program change messages, you could use router rules to do some changing of presets on individual channels. Check out the Fluidpatcher lessons for more on how to create patches: th-cam.com/play/PL4a8Oe3qfS_-CefZFNYssT1kHdzEOdAlD.html

    • @unboxingglory8451
      @unboxingglory8451 2 ปีที่แล้ว

      @@white2rnadoThank you very much, ok I will give it a try, I already set up the program on my Pi, is there a size limit on uploading soundfonts? Because I got one thats 1gig and it uploads for about 20% and then throws an error, what can I do for this?

    • @white2rnado
      @white2rnado  2 ปีที่แล้ว

      @@unboxingglory8451 unfortunately that's because a Raspberry Pi 3B+ has 1G of RAM total, with only about 700MB being available for loading soundfonts. You could get a RPi 4 with 2, 4, or 8G of RAM, but your font will still take a while to load. IMO a lot of soundfonts are terribly bloated in size, packed with absurdly high quality samples that don't actually sound better, and are often unusable in many situations because they've been recorded with room effects to make them sound pretty - that's my hot take. The largest single instrument soundfont I use is the 75MB jRhodes font, and it sounds perfect. Check out www.polyphone-soundfonts.com - there are a lot of good ones on there.

    • @unboxingglory8451
      @unboxingglory8451 2 ปีที่แล้ว

      @@white2rnado ok, thanks, I tried other way to copy it to the pi but it doesn't want to load it, now I know

  • @minkloco619
    @minkloco619 ปีที่แล้ว

    Great video!
    How can I make a headless drum machine sampler with a real-time 8 track sequencer for rap and oldschool funk production?

    • @white2rnado
      @white2rnado  ปีที่แล้ว

      If you choose the option to download the soundfonts when running the install script you'll get the 'Hip Hop Combo.sf2' soundfont that has some decent drumkits and samples. You can create as many simultaneous sequences as you want using the built-in sequencer: th-cam.com/video/GfelD8ZofyM/w-d-xo.html. If you want something with more physical controls where you can create sequences on the fly this guys project looks pretty sweet: th-cam.com/video/h5UmPTttN1s/w-d-xo.html

  • @AntHenson
    @AntHenson 3 ปีที่แล้ว

    Hey, great project. Do you know if it's easy to set this up with scala tuning files?

    • @white2rnado
      @white2rnado  3 ปีที่แล้ว +2

      Thanks! I wouldn't say it's easy, but I think it's possible. You'd have to convert your scala file to an MTS sysex file, which you could do using this tool: www.microtonalsoftware.com/scl-scala-to-mts-converter.html. Then you can send your sysex file when a bank is loaded or a patch is selected using the `sysex` keyword, described here: github.com/albedozero/fluidpatcher/wiki/Bank-Files

    • @AntHenson
      @AntHenson 3 ปีที่แล้ว +1

      @@white2rnado ah brilliant thank you! I'm going to have to give this a go :)

  • @executor108
    @executor108 ปีที่แล้ว

    Thank you very much for this, a way better and more stable than any other pi headless synth that I come across. I get all working but I have one small problem that I cannot figure out. I have transferred the sf2 file into the sf2 folder via squishbox file manager. However, I cannot select that soundfont when headless scrolling through all soundfonts. How can I make it work, do we need to edit bank1.yaml ? Also, I am curious how can I change the default order of soundfonts, to make one that I upload play first when turning it on?

    • @white2rnado
      @white2rnado  ปีที่แล้ว +1

      You do need to edit one of the bank files so it uses preset(s) from your new soundfont, or create a new bank file. The pi will always load the last bank file you were using when you turn it on and select the first patch in that bank file. Check out my lesson series on creating banks and patches for more info: th-cam.com/play/PL4a8Oe3qfS_-CefZFNYssT1kHdzEOdAlD.html
      Your question does make me think I ought to add an option for button(s) that will just scroll through every possible preset in every soundfont you've loaded onto the Pi - although that could take a lot of scrolling!

    • @executor108
      @executor108 ปีที่แล้ว

      Ah yes thank you. Very well explained!
      Anyway, yes I also think it would be great update if you add scroll through root bank folder. As for example my midi keyboard is poor on program keys so I can only assign previous and next preset to two buttons but lack third for bank.
      As always thank you very much for your hard work!

  • @astrahcat1212
    @astrahcat1212 2 ปีที่แล้ว +2

    I still write MIDI files using GM MIDI 128 instruments, then bring them into VSTis later. This is why I still use external synthesizers. x_x

  • @Tytheband
    @Tytheband ปีที่แล้ว

    Are you going to have new SquishBox kids available anytime soon?

  • @jmquiding5173
    @jmquiding5173 3 ปีที่แล้ว +1

    Hi can you also give us some tutorial for sound effects boards using a regular keyboard or kepad?

    • @white2rnado
      @white2rnado  3 ปีที่แล้ว

      This is definitely on my list - I have lots of videos to make!

  • @acid9ne0379
    @acid9ne0379 5 หลายเดือนก่อน

    very informative I love synthesiser but what is the exact model/type of the raspberry pi board I'm new to raspberry

    • @white2rnado
      @white2rnado  4 หลายเดือนก่อน

      This was a Raspberry Pi 3B+ but it will work with almost any Raspberry Pi model

  • @clebo99
    @clebo99 2 ปีที่แล้ว

    I'm trying this right now and I have a gig in 2 weeks where I'm hoping to use this. I'll let you know my progress. Note, I did get a message about using Bullseye OS (I'm testing now on a virtualbox. Is this an issue?

    • @white2rnado
      @white2rnado  2 ปีที่แล้ว

      Bullseye is the code name for the latest version of Debian Linux that is the basis for Rasbperry Pi OS - as long as you're using the latest (or even a recent) version of RPi OS you should be fine

  • @ablearcher2753
    @ablearcher2753 3 ปีที่แล้ว +1

    Would be lovely to use some MIDI controller, make a clean cutout and put the RaspBerry Pi alongside with a little 3.5" or whatever fits touchscreen inside as I can imagine that simple MIDI controller keyboards like this don't have too many electronics going on inside.

    • @white2rnado
      @white2rnado  3 ปีที่แล้ว

      Cool idea! Now I'm thinking about doing some teardowns of my various MIDI controllers... If you found one with enough space, you could do this pretty easily with one of my SquishBox kits and a Raspberry Pi A+ 🤔

    • @ablearcher2753
      @ablearcher2753 3 ปีที่แล้ว

      @@white2rnado This is definitely something I am aiming for but at the moment I am in the process of moving to a different more sunny country. However rather sooner than later I shall pick you up on this. Little side question. As we are talking python here, is there any reason why this code shouldn't be able to run on a X86 machine? The Pi A+ makes a lot more sense in terms of cooling that's a given.

    • @DANCEDWAT
      @DANCEDWAT 2 ปีที่แล้ว

      My original idea was to fit my pi zero + hub/usb audio INSIDE my old M-Audio KeyRig. Might not be enough room though. considered using some of the existing ports/switches on it too. I'm probably not "advanced" enough to do so.

  • @RoyalTech_2024
    @RoyalTech_2024 2 ปีที่แล้ว +2

    Hi, Great video.
    Is it possible to make this project with Raspberry pi zero?

    • @white2rnado
      @white2rnado  2 ปีที่แล้ว

      Yes - the older Pi Zero has kind of noticeable latency, but a Pi Zero 2 W should do just fine. For audio you'll need a USB audio dongle and a hub so you can also plug in your controller - or you if you're into it you could add a headphone jack by following this: othermod.com/raspberry-pi-zero-audio-circuit/

  • @theo.7402
    @theo.7402 2 ปีที่แล้ว

    is it possible to add knobs and buttons to the raspberry pi and control from there some parameters?

    • @white2rnado
      @white2rnado  2 ปีที่แล้ว

      It would require some more coding but it's certainly possible.

  • @cristobalbarrientos5377
    @cristobalbarrientos5377 ปีที่แล้ว

    hello! how updated is this project? Will I be able to use portmento and other effects with this install? Or I should make other steps for that? Grateful if you can bring some light in this subject matter... THANKS!

    • @white2rnado
      @white2rnado  ปีที่แล้ว +1

      Yes - FluidSynth implements portamento - and you can hear an example of it in the "Smooth Flute" patch in bank1.yaml: github.com/albedozero/fluidpatcher/blob/c1079b9e4709955113641bf0ff96bd4ab40df971/SquishBox/banks/bank1.yaml#L79
      You can also use FluidSynth's built-in Reverb and Chorus, and LADSPA plugins can give you delay, AutoWah, etc.

    • @cristobalbarrientos5377
      @cristobalbarrientos5377 ปีที่แล้ว

      @@white2rnado i see! thanks!

  • @MWOCQU
    @MWOCQU 2 ปีที่แล้ว +1

    how many notes poly does the device support please ?

    • @white2rnado
      @white2rnado  2 ปีที่แล้ว +1

      Default is 256-voice polyphony, and can be set up to 65535. Some sounds use multiple voices per note, but even at 256 I've never had any dropped notes.

  • @sayanmandal7844
    @sayanmandal7844 3 หลายเดือนก่อน

    Hey! Can anyone please give any idea about how well it works in a Pi Zero W?

  • @kloakovalimonada
    @kloakovalimonada ปีที่แล้ว

    Any idea why I can't use any other bank (yaml) file than the three included in the script? No audio plays at all, even with router_rules copied over, same permissions, existing soundfont

    • @white2rnado
      @white2rnado  ปีที่แล้ว

      Thanks for the question - I responded to your posts on github

    • @kloakovalimonada
      @kloakovalimonada ปีที่แล้ว

      @@white2rnado thank you and sorry for bombarding you with my issues. I can get anything out of the thing at all now, even after complete wipe and reinstall.

  • @bernardosilva7306
    @bernardosilva7306 2 ปีที่แล้ว

    So, one bugfix (maybe): don't know if you recently changed the file on the "geekfunklabs.com/squishbox" but it is returning an "DOS/Windows" version of the text (with CR/LF end lines) instead of a UNIX version (with just LF). I was getting an error from "bash", but then I got the file locally and I just run "dos2unix" and it worked.

    • @white2rnado
      @white2rnado  2 ปีที่แล้ว +1

      Thanks! I did do an update and those carriage returns keep sneaking in on me somehow 😡😂

  • @Curious_Skeptic
    @Curious_Skeptic 5 หลายเดือนก่อน

    At this point, old tablets or old phones are cheap enough to just go that route. They have touch screens, powerful processors, and intuitive ui. I am just starting back into music and will be focused on cheap tablets running dedicated apps and midi controller as if they are hardware synth. Controllers labeled to the vst/app. Pretty much an endless possibilities at roughly 200 to 300 per 'synth' setup.

    • @white2rnado
      @white2rnado  4 หลายเดือนก่อน +1

      Everyone's synth setup is a unique animal. Go with what you like!

    • @Curious_Skeptic
      @Curious_Skeptic 4 หลายเดือนก่อน

      @@white2rnado Agreed.

  • @MegaAshski
    @MegaAshski 2 ปีที่แล้ว

    Howdy. I've downloaded, and thank you for the share. When I change patch from the first which is piano, the pi crashes. I have a 3b+, any help would be awesome. I literally got my pi on Saturday, so am a total beginner when it comes to this computer language, I'm gonna start learning python ASAP. Thanks from England.

    • @MegaAshski
      @MegaAshski 2 ปีที่แล้ว

      Forgot to add I'm running Ubuntu desktop😀

    • @white2rnado
      @white2rnado  2 ปีที่แล้ว

      @@MegaAshski would you open up a terminal and enter the commands:
      sudo systemctl stop squishbox.service
      python3 squishbox.py
      Then switch patches and paste any error output you get. That should help debug. Feel free to reply here or post an issue at github.com/albedozero/fluidpatcher/issues 😊

    • @MegaAshski
      @MegaAshski 2 ปีที่แล้ว

      @@white2rnado Ok so I booted up, the piano soundfont voiced when I played the midi keyboard, I entered the command you provided in terminal. The following messages appeared and the sound stopped. "Failed to stop python3.service: Unit python3.service not loaded.
      "Failed to stop squishbox.py.service: Unit squishbox.py.service not loaded. Usually when it's headless the pi just crashes as soon as I load a new track. I tried last night on my NI KKm32, and nektar lx49+. The Nektar I pressed every button to change patch with no luck. The M32, one of the encoders changes cc settings, and this is when the pi crashes. Thanks for taking the time to help me get this sorted.

  • @lumm71
    @lumm71 2 ปีที่แล้ว

    Hi, this looks very handy to me. Thx! But I can‘t find a full image of this project. Can you please post a link with ready to play image for raspberry 3?

    • @lumm71
      @lumm71 2 ปีที่แล้ว

      OK, it is done. Sorry for my lazyness :). I started headles.py with plugged in Keyboard, but nothing happens... Where do I get help?

    • @white2rnado
      @white2rnado  2 ปีที่แล้ว

      I've decided it's best for me to not provide full SD card images - the install script should work on any Raspberry Pi with one of the standard Raspberry Pi OS images installed!

    • @white2rnado
      @white2rnado  2 ปีที่แล้ว

      @@lumm71 You can post a question here, or at github.com/albedozero/fluidpatcher/discussions! (on GitHub it's easier to paste code/attach images)

    • @lumm71
      @lumm71 2 ปีที่แล้ว

      @@white2rnado Thx!

    • @lumm71
      @lumm71 2 ปีที่แล้ว

      @@white2rnado Everything works now fantastic for me!!! Thanks for helping me at the github-project with configurating my midikeyboard :D. Sometimes it is hard to find the problem if you have no experience and don't know where to start. No I am very happy and learned lots of things. Thanks again!!!

  • @atexs4622
    @atexs4622 9 หลายเดือนก่อน

    Hi great video I have AKAI MPK Mini MK3 and works but volume is very quiet but if I push the button fast is louder. What the problem?

    • @white2rnado
      @white2rnado  9 หลายเดือนก่อน +1

      I see a lot of posts that the default velocity curve on the Mini MK3 is kind of weak. This person has a video explaining how to adjust it: th-cam.com/video/54cpv8Md10k/w-d-xo.html

    • @atexs4622
      @atexs4622 9 หลายเดือนก่อน

      @@white2rnado thx

  • @das250250
    @das250250 8 หลายเดือนก่อน

    What minimum Pi can you use? I have some older pi2's around.

    • @white2rnado
      @white2rnado  7 หลายเดือนก่อน

      I haven't tried this with a Pi 2, but I remember the latency was kind of noticeable. I would say use at least a Pi 3B+

  • @DAB-2023
    @DAB-2023 3 ปีที่แล้ว +2

    Hi, this looks really great - it's exactly what I was looking for - but I can't install python3-rtmidi.
    Your script failed then I tried running
    sudo apt install python3-rtmidi,
    but the package still can't be found.
    Any ideas?
    Thanks!

    • @white2rnado
      @white2rnado  3 ปีที่แล้ว

      Are you getting those "Unable to fetch" messages when you run apt? This happens to me too - from what I understand, this happens because raspbian.raspberrypi.org is sometimes too slow to respond and direct you to a local mirror to download from. I usually retry a couple times until it works, but I think you can edit /etc/apt/sources/list and replace raspbian.raspberrypi.org/raspbian/ with a mirror that's near you from this list: www.raspbian.org/RaspbianMirrors/. Maybe I should add this as an option in the script..

    • @DAB-2023
      @DAB-2023 3 ปีที่แล้ว

      @@white2rnado Hi, thanks for your prompt reply. I haven't seen any errors in the console, just that the package can't be found. I even ran apt full-update, etc, just to be sure I'm on latest version.

    • @DAB-2023
      @DAB-2023 3 ปีที่แล้ว

      Embarrassed to say that I hadn't updated my Pi OS since the early middle-ages. I'm now reinstalling over a slow connection :-) Cross fingers.

    • @white2rnado
      @white2rnado  3 ปีที่แล้ว

      Just FYI The script creates a file install-log.txt wherever you run it and dumps all the technical output from the commands in there - you could check that to see if there's any useful info in there.

    • @DAB-2023
      @DAB-2023 3 ปีที่แล้ว

      @@white2rnado It works! I had Jessie installed on my old Raspberry PI 3 and had to upgrade to Buster before I could get your script to work. It would have been good if your script checked that the right OS was installed, but never mind, I'm really impressed and I now have a working MIDI keyboard. Thanks!

  • @dannnnydannnn5201
    @dannnnydannnn5201 2 ปีที่แล้ว

    This is really cool. I may have to give this a try. I would really like to try my hand at creating my own audio filter. Something like an fx pedal for a guitar or bass but for whatever type of audio I choose to run through it.
    Anybody have any experience with something like this? I think I can figure it out by looking through similar projects but damn do I wish more of my tech buddies were into music the way that I am. Instead they prefer video games and cartoons which is cool, but I couldn’t care less about those things to be honest. 😂

    • @white2rnado
      @white2rnado  2 ปีที่แล้ว

      Thanks! You'll probably want a USB audio interface to get good audio input fyi. Have fun hacking and reach out if you have questions.

    • @dannnnydannnn5201
      @dannnnydannnn5201 2 ปีที่แล้ว +1

      @@white2rnado already have an audio interface but thanks man.

  • @elielcomerci8651
    @elielcomerci8651 2 ปีที่แล้ว

    Amazing job! But I can't install in my Rpi 3B :( After a long time installing appears: Apt failed to install tap-plugins! Logged to install-log.txt
    Any ideas to solve it?

    • @white2rnado
      @white2rnado  2 ปีที่แล้ว

      Sometimes the Raspbian software repository is too slow to respond and gives up midway through the install. Usually it works if you try the install a couple more times, but if you're feeling technical you can edit /etc/apt/sources/list and replace raspbian.raspberrypi.org/raspbian/ with a mirror that's near you from this list: www.raspbian.org/RaspbianMirrors/. I'm going to add an option for this in the install script in the near future.

  • @100kAPPRO
    @100kAPPRO 2 ปีที่แล้ว

    How can I map knobs on my MIDI keyboard to do change effects such as filter or reverb

    • @100kAPPRO
      @100kAPPRO 2 ปีที่แล้ว

      Also is there a way to add a looper in to the software?

    • @white2rnado
      @white2rnado  2 ปีที่แล้ว

      You can set the knobs on your keyboard to send control change (CC) #91 for reverb level and #93 for chorus level. You can also modify the parameters of the chorus and reverb effects units as described in this lesson video:
      th-cam.com/video/53OFZnKhPa8/w-d-xo.html
      Though it might be a good idea to start with Lesson 1 and work your way up to that point 🙂
      th-cam.com/play/PL4a8Oe3qfS_-CefZFNYssT1kHdzEOdAlD.html

    • @white2rnado
      @white2rnado  2 ปีที่แล้ว

      Right now you can play MIDI files and trigger sequences/patterns - I'll be explaining this in some future lessons and you can look at the example bank file bank0.yaml or check out the bank file format wiki to see how it's done ( github.com/albedozero/fluidpatcher/blob/master/patcher/file_formats.md ).
      I have some thoughts about adding a looper feature to the code, probably by leveraging the sequencer objects, but that's a work in progress.

  • @alfredruethlein9934
    @alfredruethlein9934 2 ปีที่แล้ว

    You did a great job! I have only a slight problem with "headless"!
    Everythings works properly when keyboard an HDMI are connected!
    When I try to start headless I get no sound; LED is blinking red 4 times!
    I added manually : "sudo python3 /home/pi/headlesspi.py" to the rc.local but it didn`t help.
    Any idea?

    • @white2rnado
      @white2rnado  2 ปีที่แล้ว

      Four blinks means the script is running but encountering an error. Try this - with your screen and keyboard connected, enter command "sudo systemctl stop squishbox.service; python3 headlesspi.py". That will run the script interactively and should give you some more info about the error.
      Nice idea trying to get the script to run by adding it to rc.local, but since it's already running as a startup service this will actually start a second instance of the synth, and you won't know which your controller is connecting to.

    • @alfredruethlein9934
      @alfredruethlein9934 2 ปีที่แล้ว

      @@white2rnado It's strange:
      Start with HDMI connected:
      pi@raspberrypi:~ $ sudo systemctl stop squishbox.service
      pi@raspberrypi:~ $ python3 headlesspi.py
      fluidsynth: warning: Requested a period size of 64, got 444 instead
      fluidsynth: Connection of Midi Through Port-0 succeeded
      fluidsynth: Connection of USB Keystation 49e MIDI 1 succeeded
      Connection is already subscribed
      fluidsynth: warning: Sample 'SineWave': ROM sample ignored
      Loading bank 'bank1.yaml' .. done!
      Selected patch 1/26: Piano
      Start without HDMI connected (via SSH):
      pi@raspberrypi:~ $ sudo systemctl stop squishbox.service
      pi@raspberrypi:~ $ python3 headlesspi.py
      fluidsynth: error: Failed to open the "default" audio device
      fluidsynth: Connection of Midi Through Port-0 succeeded
      fluidsynth: Connection of USB Keystation 49e MIDI 1 succeeded
      Connection is already subscribed
      fluidsynth: warning: Sample 'SineWave': ROM sample ignored
      Loading bank 'bank1.yaml' .. done!
      Selected patch 1/26: Piano

    • @nickgarber30
      @nickgarber30 2 ปีที่แล้ว

      @@alfredruethlein9934 had the same problem, after several hours of research and messing around i found the fix, put the sd in a standard computer to browse the files and open the config text file, the first option is #hdmi_safe=1 I deleted just the # symbol(uncomment), saved and closed. and now it just works as it should, I'm guessing without a display detected it was automatically going to safe mode.

    • @alfredruethlein9934
      @alfredruethlein9934 2 ปีที่แล้ว

      @@nickgarber30 Thanks for this good idea. I will test ASAP

  • @xanuthepirate
    @xanuthepirate 2 หลายเดือนก่อน

    very nice project. But how can i connect my midi keyboard?

    • @white2rnado
      @white2rnado  2 หลายเดือนก่อน

      This should happen automatically when you connect it to one of the Pi's USB ports. You can report any specific issues here: github.com/GeekFunkLabs/fluidpatcher/issues

  • @onjaravanonjanahary632
    @onjaravanonjanahary632 2 ปีที่แล้ว

    Awesome, it's like my old yamaha keyboard have a new life, can you please explain how the router rules work because when i'm playing midi song and the channel 9(percussion) goes to a piano sound, thanks master

    • @white2rnado
      @white2rnado  2 ปีที่แล้ว +1

      I made a series of videos on setting up bank files: th-cam.com/play/PL4a8Oe3qfS_-CefZFNYssT1kHdzEOdAlD.html
      Sounds like you might need to select the correct bank in the soundfont - percussion is usually bank 128. Note that MIDI channels in this software start with channel 1, like most keyboards, so percussion is actually MIDI channel 10 😉

    • @onjaravanonjanahary632
      @onjaravanonjanahary632 2 ปีที่แล้ว

      @@white2rnado so many thanks dude, you rock 😃, i'll try this, i want to work on a raspberry that can run ".STY" (yamaha) file, but my knowlege on raspberry is very basic, i have almost all knowlege on MIDI ,it could be a big deal

    • @white2rnado
      @white2rnado  2 ปีที่แล้ว

      @@onjaravanonjanahary632 Cool idea! I didn't know about Yamaha .sty files before. FYI the update I'm working on will have the ability to play MIDI files, loops, sequences, and arpeggios - so a conversion could be very useful!

    • @onjaravanonjanahary632
      @onjaravanonjanahary632 2 ปีที่แล้ว

      @@white2rnado oh yes, can i have your facebook ID? it's more fast

    • @white2rnado
      @white2rnado  2 ปีที่แล้ว

      @@onjaravanonjanahary632 I like to use github for discussing ideas/updates - feel free to post an idea here: github.com/albedozero/fluidpatcher/discussions

  • @pandoggy
    @pandoggy ปีที่แล้ว

    I have been working with this again and did a new install. With the current install script there doesn't seem to be a way to avoid starting automatically on bootup.
    Help?

    • @white2rnado
      @white2rnado  ปีที่แล้ว +1

      The command `sudo systemctl disable squishbox.service` will prevent the synth from running at startup. `sudo systemctl enable squishbox.service` will bring it back. This does seem like a useful option to have when installing - I'll work on adding it.

    • @pandoggy
      @pandoggy ปีที่แล้ว

      @@white2rnado Thank You!

  • @timwilliams632
    @timwilliams632 ปีที่แล้ว

    Good stuff! Has anyone tried this with a wind controller like EWI USB? I’m certain it would work, just wondering which sound fonts and settings to recognize breath control.
    Headless with USB sound card on a pi zero W2 and a battery? (small enough to tuck away with the wind instrument)

    • @white2rnado
      @white2rnado  ปีที่แล้ว

      People have used this with breath controllers with good results. You just want to route breath control (CC 2) to expression or volume (CC 11 or 7). You may also want to turn on the legato "pedal" by sending a value >63 on CC 68. When you play successive notes without releasing the previous note (i.e. stopping your breath), most soundfonts will play the next note with less of an attack, allowing them to blend together. This example shows how to set this up in a bank file: gist.github.com/albedozero/0c2561be1d4100a6632339cd29a85789

    • @white2rnado
      @white2rnado  ปีที่แล้ว

      Should work great with a Pi Zero, USB sound card, and a small phone battery! These guys did something very similar: th-cam.com/video/Qz8cj-6Ql4s/w-d-xo.html

  • @jonathanhugon5617
    @jonathanhugon5617 ปีที่แล้ว

    Hello I have a problem
    at "which audio output would you like to use ?" I just have no change or default for choice ...

    • @white2rnado
      @white2rnado  ปีที่แล้ว

      That's unusual - you should at least see the Headphones and hdmi devices. What output do you get from entering the command `aplay -l` ?

    • @jonathanhugon5617
      @jonathanhugon5617 ปีที่แล้ว

      @@white2rnado the raspberry pi doesn't respond, when I try to execute aplay -i in terminal, but if I do a ctrl + c I have this message : "aplay: read_header:2839: erreur de lecture (sorry I'm french ^^)

    • @jonathanhugon5617
      @jonathanhugon5617 ปีที่แล้ว

      @@white2rnado oh sorry l not i XD if I use this letter I have this list :
      carte 0 : headphones [bcm2835 Headphones], périphérique 0 : bcm2835 headphones
      sous-périphérique #0 : subdivise #0
      sous-périphérique #1: subdivise #1
      sous-périphérique #2 : subdivise #2
      sous-périphérique #3 : subdivise #3
      sous-périphérique #4 : subdivise #4
      sous-périphérique #5 : subdivise #5
      sous-périphérique #6 : subdivise #6
      sous-périphérique #7 : subdivise #7
      carte 1 : vc4hdmi [vc4-hdmi], périphérique 0 : MAI PCM i2s-hifi-0 [MAI PCM i2s-hifi-0]
      sous-périphérique: 1/1
      sous-périphérique #0: subdevice #0

    • @white2rnado
      @white2rnado  ปีที่แล้ว

      Ahh I see it was a bug due to the multilingual output of some programs. I have updated the install script to hopefully work around this. Let me know if you have more problems.

    • @jonathanhugon5617
      @jonathanhugon5617 ปีที่แล้ว

      @@white2rnado I'll try this, this afternoon and thank you.

  • @everillangel5037
    @everillangel5037 6 หลายเดือนก่อน

    Would you ever comsider a version that uses puredata?

    • @white2rnado
      @white2rnado  6 หลายเดือนก่อน

      Seems like someone did it: th-cam.com/video/Sec7Sf4q34s/w-d-xo.html. It would be nice to set up something that just requires your Pi and a MIDI controller. I've only messed with PD a bit, but this is on my list to try.

  • @antonip1114
    @antonip1114 5 หลายเดือนก่อน

    I have been troubleshooting for 2 days and there´s no way of making work with any of mi Pies.
    With windows 11 it works fantastic, but with Raspberry it just disables the audio jack and enables hdmi audio by default. Audio jack does not even appears listed.

    • @white2rnado
      @white2rnado  4 หลายเดือนก่อน

      If you post an issue at github.com/GeekFunkLabs/squishbox/issues with more details of your errors/problem I can help you troubleshoot

  • @coldicecubes0
    @coldicecubes0 2 ปีที่แล้ว

    how do i configure the script for akai mpk mini also im using a raspi4

    • @white2rnado
      @white2rnado  2 ปีที่แล้ว +1

      When you run the install script it should ask you for the control change (CC) values for patch and bank change buttons. Enter the CC values sent by the pads on your MPK mini, or use the Editor software to configure the pads to send CCs 21, 22, and 24.

    • @coldicecubes0
      @coldicecubes0 2 ปีที่แล้ว +1

      @@white2rnado got it. thanks!

  • @WesDoesStuff
    @WesDoesStuff 2 ปีที่แล้ว

    Will this run on a pi zero w or is that not enough overhead?

    • @white2rnado
      @white2rnado  2 ปีที่แล้ว

      It runs fine on the older Pi Zero W, except you'll need a USB sound card, plus a hub to plug in your MIDI keyboard, and the latency is a bit more noticeable. Works great on the Zero 2 W too.

    • @WesDoesStuff
      @WesDoesStuff 2 ปีที่แล้ว

      @@white2rnado awesome. Have you come across any looping or sampling modules that could work with fluidsynth? The idea of a box that can turn any midi keyboard into a poor man's OP-1 is very interesting.

    • @white2rnado
      @white2rnado  2 ปีที่แล้ว

      @@WesDoesStuff Fluidsynth doesn't take audio input, so you couldn't sample live. You can put audio samples in a soundfont and play them back as you need. Also maybe check out samplerbox

  • @karhidemusic
    @karhidemusic 3 ปีที่แล้ว

    Just trying the setup now but I don't get any sound when I plug in the midi controller (Launchpad Pro Mk3). How do I debug because I am very new to audio on a Raspberry Pi.

    • @white2rnado
      @white2rnado  3 ปีที่แล้ว

      Are you certain you're sending note messages from the Launchpad? The default initial MIDI Mapping on the Mk3 only sends CC (continuous controller) messages - Custom 3 and Custom 4 look like they send some notes. To do some debugging, you can log in to your Pi via ssh (see www.raspberrypi.org/documentation/remote-access/ssh/ for how) and type:
      sudo systemctl stop squishbox.service
      python3 headlesspi.py
      This will give you some feedback on when the script changes patches, banks, etc. You can also type `aseqdump -p 20:0` to see what MIDI messages your controller is sending (if your controller is not on port 20:0 type `aconnect -i` to see what it is).
      Feel free to reply or post in the forum at geekfunklabs.com/forums/forum/questions-issues/ if you have more questions!

    • @karhidemusic
      @karhidemusic 3 ปีที่แล้ว

      @@white2rnado Just had a look at the forum and don't see a way to register to ask a question. I have run the scripts and I can see the launchpad as device 24 and there are note on and off messages. I have tried changing the channel for the midi notes but nothing happens. What's the next step to test?

    • @karhidemusic
      @karhidemusic 3 ปีที่แล้ว

      Here's the output
      24:0 Note on 0, note 51, velocity 25
      24:0 Clock
      24:0 Clock
      24:0 Channel aftertouch 0, value 120
      24:0 Channel aftertouch 0, value 126
      24:0 Clock
      24:0 Channel aftertouch 0, value 127
      24:0 Clock
      24:0 Note off 0, note 53, velocity 0

    • @karhidemusic
      @karhidemusic 3 ปีที่แล้ว

      Here's the midi details:
      client 0: 'System' [type=kernel]
      0 'Timer '
      1 'Announce '
      client 14: 'Midi Through' [type=kernel]
      0 'Midi Through Port-0'
      client 24: 'Launchpad Pro MK3' [type=kernel,card=2]
      0 'Launchpad Pro MK3 MIDI 1'
      1 'Launchpad Pro MK3 MIDI 2'
      2 'Launchpad Pro MK3 MIDI 3'

    • @white2rnado
      @white2rnado  3 ปีที่แล้ว

      Try rebooting the Pi (so the script is running) and log in via ssh again and type `aconnect -iol` - this will let you see if the Launchpad is connecting to FluidSynth. Also, see if your audio output is working by typing `speaker-test`.

  • @dennisollebek2683
    @dennisollebek2683 2 ปีที่แล้ว

    Hi, I would like to install this on a rpi v2 but when I type the download adress I'm getting an error " line 1 syntax error near unexpected token ' Newline' " any idea what I can do to get the script running?

    • @white2rnado
      @white2rnado  2 ปีที่แล้ว

      That sounds unexpected - are you using the latest version of Raspberry Pi OS? It might help me if I could see the exact text of your command and the output. You can post them easier by creating an issue at github.com/albedozero/fluidpatcher/issues, or you can just email me 🙂

    • @dennisollebek2683
      @dennisollebek2683 2 ปีที่แล้ว

      Hi, got it working at first I coppied what was typed in in the youtube film, later I found the commands in the text, and that worked.
      I have tried to connect a usb soud card but that gave to much latency and the headphone sounds weak.
      can you tell me how to ajust de fluidsynts gain? I know it is possible burI dont know how to do this

    • @white2rnado
      @white2rnado  2 ปีที่แล้ว

      ​@@dennisollebek2683 If you add `synth.gain: 0.6` underneath `fluidsettings:` in the SquishBox/squishboxconf.yaml file it will increase the gain. You can set values 0.0-5.0 but above 1.0 it will sound distorted. If you re-ran the installer script to set up your USB sound card (you can just say no to the other options), it should give you the best latency settings. You can also try adjusting the values of audio.periods and audio.period-size in squishboxconf.yaml. Unfortunately, there are many different types of USB sound cards and some have worse latency than others.

    • @dennisollebek2683
      @dennisollebek2683 2 ปีที่แล้ว

      @@white2rnado thanks for the answers, as soon as I can find the time I'm gone give it a try.
      You,ll be hering from me, one again thanks.

    • @dennisollebek2683
      @dennisollebek2683 2 ปีที่แล้ว

      Hi,
      I've played abit with the settings and it works, latency could be better but by calculations it should be around 8 msec.
      The sound card didn't work " out of the box" I had to change the alsa.conf file to get it working.
      Squishbox be good on a rpi 3 or 4 but the version 2b must be pushed to it's limits go get an accepteble result, thanks for sharing squishbox with us.
      Regards,
      Dennis

  • @gustavosalmeron2013
    @gustavosalmeron2013 2 ปีที่แล้ว +1

    What about latency? And creating soundwaves within The raspberry pi?

    • @white2rnado
      @white2rnado  2 ปีที่แล้ว +1

      Latency with the headphone jack is about 10ms. Using a USB or GPIO sound card it can be as low as 1.5ms. For your second question - can you be more specific what you mean by "creating soundwaves"?

    • @gustavosalmeron2013
      @gustavosalmeron2013 ปีที่แล้ว

      @@white2rnado I want a virtual analog synthesizer instead of soundfonts

    • @white2rnado
      @white2rnado  ปีที่แล้ว

      @@gustavosalmeron2013 try out Zynthian: wiki.zynthian.org/index.php/Beginners_Headless_Zynthian_Tutorial

    • @white2rnado
      @white2rnado  ปีที่แล้ว

      However, FluidSynth is also practically a virtual modeling synth all by itself - as required by the soundfont spec it has amp and mod envelopes, an LFO, and low-pass filter. You can easily use it as a modeling synth using the included ModSynth_R3.sf2 font, which I demo here: th-cam.com/users/shortsQUQe0vcsR1w

    • @alextrezvy6889
      @alextrezvy6889 5 หลายเดือนก่อน

      @@white2rnado "GPIO sound card it can be as low as 1.5ms." // What kind of logic or connections makes built-in RPi sound card to produce 10 ms latency as opposed to GPIO sound card?

  • @synthgal1090
    @synthgal1090 ปีที่แล้ว

    If this could double as a USB MIDI host with DIN MIDI out it would be the swiss army knife of MIDI boxes tbh

    • @white2rnado
      @white2rnado  ปีที่แล้ว +1

      I've got a discussion about that here: github.com/albedozero/fluidpatcher/discussions/32
      TLDR we're working on it 😉, but we need to code a better driver to create a MIDI port that sends/receives data from the serial port on the Pi

    • @synthgal1090
      @synthgal1090 ปีที่แล้ว

      @@white2rnado could it get away with using a USB-MIDI adapter cable? That's what most Pi MIDI hosts I've seen do and that's a compromise I'd be fine with

    • @white2rnado
      @white2rnado  ปีที่แล้ว

      @@synthgal1090 Sure, that would work!

  • @johnnydohe6506
    @johnnydohe6506 2 หลายเดือนก่อน

    The Perc Pad has it's own sounds and can trigger midi, why you say different?

    • @white2rnado
      @white2rnado  2 หลายเดือนก่อน

      You got me. I was talking about MIDI controllers in general but that one does have its own sounds.

  • @najjjb2
    @najjjb2 2 ปีที่แล้ว

    It works *BUT* the software crashes when I load another SoundFont. If you got a fix for this, please let me know!! (i have a Raspberry pi 4 model b with a 16GB sd card, it's raspberry pi os lite)

    • @white2rnado
      @white2rnado  2 ปีที่แล้ว

      Can you run from a command line by entering `python3 headlesspi.py` then get it to crash again and let me know what the output is?

    • @najjjb2
      @najjjb2 2 ปีที่แล้ว

      @@white2rnado
      fluidsynth: warning: Requested a period size of 64, got 444 instead
      fluidsynth: warning: Failed to set thread to high priority
      fluidsynth: Connection of Midi Through Port-0 succeeded
      fluidsynth: Connection of Impulse MIDI 1 succeeded
      fluidsynth: Connection of Impulse MIDI 2 succeeded
      fluidsynth: warning: Failed to set thread to high priority
      Connection is already subscribed
      Connection is already subscribed
      Connection is already subscribed
      Loading bank 'bank0.yaml' ..
      fluidsynth: warning: Sample 'SineWave': ROM sample ignored
      Bank loaded.
      Selected patch 1/6: Simple EP
      Selected patch 6/6: Elevator Jam
      Selected patch 5/6: Analog Saw
      Selected patch 4/6: Weird Keys
      Shutting down..
      Tho I think I know what the error is. The button to change soundfont is a slider on my keyboard. (Novation Impulse 63) And fluidsynth think that I press the button constantly and that would explain why it's shutting down after a few seconds. But I don't know what numbers the buttons on my keyboard are, Do you know how I can find that?

    • @white2rnado
      @white2rnado  2 ปีที่แล้ว

      @@najjjb2 type `aconnect -io` to see what port ## your midi controller is, then `aseqdump -p ##` to see what messages it sends when you press keys/buttons/etc. If you use a slider to change patches its CC# should match SELECT_PATCH in the headlesspi.py script, not DEC_PATCH or INC_PATCH

    • @najjjb2
      @najjjb2 2 ปีที่แล้ว

      ​@@white2rnado Sorry for the very late response, but I did what you said and everything now works. Thanks! :-)

    • @white2rnado
      @white2rnado  2 ปีที่แล้ว

      @@najjjb2 Nice - glad you were able to come back to it and get things working 👍

  • @xgansterplayz
    @xgansterplayz 2 ปีที่แล้ว

    hi, great tutorial, just what I needed. but please Help!! my midi M-audio Keystation49 does not play any sound on de piano keys, only the to keys make sound!? it is recognized see:
    Port Client name Port name
    0:0 System Timer
    0:1 System Announce
    14:0 Midi Through Midi Through Port-0
    20:0 Keystation 49 Keystation 49 MIDI 1
    20:1 Keystation 49 Keystation 49 MIDI 2
    If I debug my keys I hear sound on top keys (play, stop, pauze button) and I see hits with following command but NO sound:
    aseqdump -p "Keystation 49"
    Waiting for data. Press Ctrl+C to end.
    Source Event Ch Data
    20:0 Note on 13, note 36, velocity 67
    20:0 Note off 13, note 36
    20:0 Note on 13, note 38, velocity 53
    20:0 Note off 13, note 38
    20:0 Note on 13, note 40, velocity 63
    20:0 Note off 13, note 40
    20:0 Note on 13, note 41, velocity 36
    20:0 Note off 13, note 41
    20:0 Note on 13, note 57, velocity 29
    20:0 Note on 13, note 48, velocity 6
    20:0 Note off 13, note 57
    20:0 Note off 13, note 48
    any Ideas what I am doing wrong?? tnx

    • @white2rnado
      @white2rnado  2 ปีที่แล้ว +1

      Looks like your Keystation is sending notes on MIDI channel 13, but the default banks in the software assume your keyboard sends on channel 1. You could edit the bank files, but it's probably easier to change your keyboard channel to 1 as described on page 11 of the manual (www.m-audio.com/support/documents-search)
      You'll probably want to assign your octave buttons to send momentary CC messages to change patches as well!

    • @xgansterplayz
      @xgansterplayz 2 ปีที่แล้ว

      @@white2rnado thanks !! I got it works find now. my sounds has low volume with volume at 100% can I offset it volume level in config?

    • @white2rnado
      @white2rnado  2 ปีที่แล้ว +1

      @@xgansterplayz Sure - in the "fluidsettings" section of SquishBox/squishboxconf.yaml just add an item " synth.gain: XX". XX can be from 0.0-5.0, but value above 1.0 will probably sound distorted. Check the headphones volume with the 'alsamixer' command as well.

    • @xgansterplayz
      @xgansterplayz 2 ปีที่แล้ว

      @@white2rnado thanks ur the greatest

    • @JordiGarciaCasado
      @JordiGarciaCasado 2 ปีที่แล้ว

      @@xgansterplayz try: Bring up terminal, type in alsamixer, F6 to choose soundcard "bcm2835 Headphones". Hold up arrow key.

  • @ejonesss
    @ejonesss 2 ปีที่แล้ว

    can the raspberry pi act as a keyboard as far as your daw can play the pi?

    • @white2rnado
      @white2rnado  2 ปีที่แล้ว

      In theory, you should be able to send MIDI from the Pi to another computer running a DAW and vice versa, but there isn't a simple, readily available hardware solution for connecting USB MIDI hosts (i.e. computer computer) that I'm aware of. Working on it, though - speak up if anyone knows of one!

    • @white2rnado
      @white2rnado  2 ปีที่แล้ว

      Sending MIDI over a network connection between the Pi and your DAW could be another way to get it done.

  • @chrisw1462
    @chrisw1462 2 ปีที่แล้ว

    You can prevent SD card corruption by telling the Pi not to write to the SD card. Obviously, it won't work if your script needs to write to the card, but if it doesn't, or you can get around it, here's the link: medium.com/@andreas.schallwig/how-to-make-your-raspberry-pi-file-system-read-only-raspbian-stretch-80c0f7be7353

    • @white2rnado
      @white2rnado  2 ปีที่แล้ว

      Nice - could be very useful! Currently the script has to write to a file object to blink the LEDs, but maybe it's worth trading that off for longer SD card life. Thanks!

  • @jamesdecross1035
    @jamesdecross1035 4 หลายเดือนก่อน

    Please, do you have an update to this video. I've just spent all afternoon trying to follow different instructions and got absolutely nothing to work. Eeek!

    • @white2rnado
      @white2rnado  4 หลายเดือนก่อน

      Hopefully I'll have a chance to create an updated video soon, but until then you can post details of your issues at github.com/GeekFunkLabs/squishbox/discussions and I can help you troubleshoot

    • @insomniac_lemon
      @insomniac_lemon 2 หลายเดือนก่อน

      @@white2rnado Trying it multiple times today with a Rasberry Pi 2 and the same keyboard as in this video, it seems like the script just isn't running properly, like there is some error/incompatibility.

  • @clebo99
    @clebo99 2 ปีที่แล้ว

    Anyone else not able to access the web site? I can ping my box but I can’t connect to the webpage.

    • @white2rnado
      @white2rnado  2 ปีที่แล้ว

      What do you get - a 404 not found page or something else?

    • @white2rnado
      @white2rnado  2 ปีที่แล้ว

      Can you re-run the install script and say no/no change to everything except installing the web-based file manager, and post the output here or at github.com/albedozero/fluidpatcher/discussions?

    • @clebo99
      @clebo99 2 ปีที่แล้ว

      @@white2rnado I get a 404 I guess. Just a website note available. I can reinstall. I will say that the keyboard works which is great. Was playing it today. Just wanted to be able to add sounds.

  • @themarcvelazquez
    @themarcvelazquez 3 ปีที่แล้ว

    Does this work on raspberry pi 4?

    • @white2rnado
      @white2rnado  3 ปีที่แล้ว

      I haven't had the opportunity to test it on a Pi 4, but I don't see any reason it wouldn't. Let me know if you run into any problems.

    • @themarcvelazquez
      @themarcvelazquez 3 ปีที่แล้ว

      Aha I figured it out! Thanks for setting all this up this is amazing

    • @themarcvelazquez
      @themarcvelazquez 3 ปีที่แล้ว

      Got another issue.. so it FINALLY works but then my pi crashes within 5 minutes. I have raspi 4 on the latest raspberry software and I also have a mini fan connected to it so I feel like it’s not over heating. Any thoughts?

    • @white2rnado
      @white2rnado  3 ปีที่แล้ว

      Yeah - if you're running the Pi headless, the synth shouldn't cause it to heat up enough to even need the fan, unless you've got some other software doing lots of things as well. Here are tips on how to figure out what might have caused a system crash/restart: raspberrypi.stackexchange.com/a/38005 - let me know if you find anything there.

  • @user-gx5ld1rn5j
    @user-gx5ld1rn5j 2 ปีที่แล้ว

    I flashed my raspberry according to the instructions, connected my midi drum module, the raspberry flashes a red diode 3 times in a period. I don't have buttons with notes 24,23,22,21

    • @julienlacaze4087
      @julienlacaze4087 2 ปีที่แล้ว

      Same here :/ Hope we would have a workaround for this ?
      I've tried 2 fresh install with RPI Imager, 32bit Lite, RaspberryPi 2B, with and without the extended 400MB soundfonts, giving the same results.
      I've also tried to put the sd card in a RasPi 3B, ended with same Power Led Blinking 3 times.
      It is said on github that this is due to a bank issue... well, having not touched any file, i do not know how to fix it.

    • @white2rnado
      @white2rnado  2 ปีที่แล้ว +1

      My bad! I was updating the main bank file and made a typo. Should be fixed now! If you run the install/update script again and say yes to the question about "Overwrite existing banks/settings" it should work.

    • @julienlacaze4087
      @julienlacaze4087 2 ปีที่แล้ว +1

      @@white2rnado Thanks for the fast fixing ! It is now working as expected !
      And a big Thank you for sharing this easy to make solution !

    • @white2rnado
      @white2rnado  2 ปีที่แล้ว

      @виталий соколовский you can change the values of CTRLS_MIDI_CHANNEL, DEC_PATCH, INC_PATCH, and BANK_INC at the top of the headlesspi.py file to match control change values that are sent by your drum controller.

    • @user-gx5ld1rn5j
      @user-gx5ld1rn5j 2 ปีที่แล้ว

      @@white2rnado I reinstalled everything, but I still did not hear the sound. If I go to the command line of my raspberry - I see two midi clients 20 - my drums and 128 - fluidsynth. if I run fluidsynth -a alsa -g 5 /usr/share/sounds/sf2/FluidR3_GM.sf2 - I still can't hear anything, but when I check midi clients - I see another fluidsynth 129 if I run aconnect 20: 0 129:0 - I hear drums. but restarting my raspberry I can't hear anything again. What am I doing wrong? How to get away from the command line every time?

  • @JC.2049xlr
    @JC.2049xlr 2 ปีที่แล้ว +1

    User "pi" is no longer available on Raspberry Pi OS. "Headless Pi Synth" Fails to start because of non existant "pi" user. Please advise.

    • @white2rnado
      @white2rnado  2 ปีที่แล้ว +2

      Thanks for the catch! Re-running the install script now will fix the issue. You can answer "n" to everything except the "What script should be run on startup?" question if you don't want to reinstall everything.

    • @JC.2049xlr
      @JC.2049xlr 2 ปีที่แล้ว

      @@white2rnado Thank you. You are awesome!

  • @otti5362
    @otti5362 2 หลายเดือนก่อน

    I installed the software and get "Root path "/home/og/SquishBox" not found!" when starting the web app, although the directory is there. What's going on?

    • @white2rnado
      @white2rnado  2 หลายเดือนก่อน

      Check the permissions on your SquishBox directory - they should be drwxrwxr-x