Recent Posts

Building my First Bass Guitar

Tak­ing the di­gres­sion from my last two posts to the ex­treme and the rea­son for half a year of ra­dio si­lence: I built a bass gui­tar! This post is a bit of a pho­to-blog of my first ven­ture in­to luthiery, so you've been warned, there are many im­ages ahead. Read more…

Rust ❤️ Bela – Making Connections

Back from a win­ter hol­i­day break, we re­turn to our se­ries on us­ing Rust with Bela. Last time, we split out our li­brary crate in­to a sep­a­rate pack­age, so we can en­sure the no_std at­tribute is re­spect­ed. Fur­ther­more, we be­gan pars­ing MI­DI events and con­nect­ing them to the vir­tu­al tone wheels. How­ev­er, we did so in the sim­plest pos­si­ble, one-to-one man­ner. Let's fix that. Read more…

Rust ❤️ Bela – MIDI and Sound

Af­ter a brief in­ter­lude on 3D graph­ics in the brows­er, we're pick­ing our se­ries on us­ing Rust with Bela back up. So far we have dis­cussed set­ting up a Rust cross com­pi­la­tion project for Bela, the projects I plan to cov­er and bench­mark-based fea­si­bil­i­ty checks, and the im­proved safe Rust API. This time, we'll ac­tu­al­ly use those APIs to be­gin in­ter­pret­ing MI­DI sig­nals mak­ing some noise! Won't quite be mu­sic yet, but we're get­ting there. Read more…

Rust ❤️ Bela – FFI API Design

Con­tin­u­ing with the cur­rent se­ries of blog posts on us­ing Rust to de­vel­op Bela projects, we have so far talked about set­ting up a Rust cross com­pi­la­tion project for Bela and the projects I plan to cov­er at some point, as well as some ba­sic fea­si­bil­i­ty checks us­ing por­ta­ble SIMD code and criterion. This time, we'll delve in­to the Bela C API, the rea­son­ing be­hind the safe Rust FFI API, and al­so fi­nal­ly pro­duce some sound. Read more…

Rust ❤️ Bela – SIMD Sines

Last time I wrote about how to cross-com­pile code for and run it on the Bela us­ing Rust, but there is still a lot of ground to cov­er. I haven't gone in­to any de­tail about what I'm even plan­ning to do with the Bela or how to ac­cess the Bela-spe­cif­ic APIs. In this post, I'll go in­to the for­mer, in­clud­ing some ba­sic fea­si­bil­i­ty checks which will in­volve — you may have guessed it from the ti­tle — SIMD and sines. Read more…