Kat

@northernpaws.bsky.social

She/Her | 🏳️‍⚧️ Embedded Engineer | Building various audio and music devices with embedded Rust 🦀 Website: https://northernpaws.io Patreon: https://www.patreon.com/c/Northernpaws GitHub: https://github.com/northernpaws

Got the second-hand camera body last week and a secondhand XF 18-55mm for video today. Just did a bunch of video tests - I still have a bit to do in terms of lighting and mounting for the camera on my overhead rig, but we’re getting close to being able to look at exploring video content :3

Bild

After a couple years of trying, I’ve realized my X100V just is not working for the more varied workloads I need it for. Recording project videos with it has been nearly impossible which is the main thing I need a camera for currently. So now it’s off to a new home, and I’ve got an X-T4 coming! :3

Bild

okay who wants to go to the park with me and check if the squirrels are actually RAL 700 Squirrel Grey or if they are out of spec

RAL K7 "Classic" standardised colour swatches, spread on a green cutting mat. we're looking at various greens and browns, Mouse Grey and Squirrel Grey in particular. The names seem to bear little resemblance to the actual colours. but you know, gotta name 'em something

Had about of a breakthrough for several projects this past week - most of my audio related projects require a bit of SDRAM for audio processing. Previously my boards have been expensive due to issues getting it routed efficiently on less than 6 layers, or without BGA components.

In an effort to make some small bits of progress on projects where I can, I've purchased some supplies to work on the one area that keeps stalling me - backlit keycaps and tactile buttons!

Sadly things have been so busy lately that I've not had a lot of time to work on my projects - things are finally starting to move forward on me moving to a new place that will both give me more room to work on things, and better access to the resources I need, so that should change soon!

Big win today! After months of dealing with unhelpful tech support, coordinating with multiple people, and waiting for parts.. We finally got an automated cotton candy machine running I’ve been helping a client with since November!

I started roughing in an idea I've had for awhile for a controller for Elite:Dangerous - a fairly basic navigation/systems panel that connects to the game's local API to display ship status and navigation data, but can also load advanced navigation data from community start charts and plan routes.

Bild

I drove past a local bank last night with a yellow LED bar sign under their logo that flashed a few times and then printed “EFI SHELL VERSION xxxx (xxxx)” across the display in huge letters.. makes me wonder if that is suppose to happen, and what the process is that triggered it - an update maybe?

Story time: I was having several issues on the music sequencer boards a couple of months ago where it seemed like my sine wave oscillators I was testing were missing most of their bass. At the time I chalked it up to possibly a problem with my oscillator code, even though it seemed fine.

The schematic and routing for the next revision of my music sequencer hardware is well underway! I decided to swap to using BMA footprints for the MCU and SDRAM, which has ended up saving a significant amount of space and made routing much easier.

A screenshot of a circuit board layout, with a web colourful traces flowing out from a microcontroller to various components on the board.Bild

Been busy the last couple of weeks - got a couple of PRs merged into Embassy, been cleaning up my sequencer code in various areas to start building the foundation for writing the user interface, and started work on the next revision of the sequencer hardware!

Turns out that writing u24 data instead of i24 can cause some really strange results! 😅 The popping was from the audio signal trying to center around the u24 max instead of 0 and causing sharp transitions from my resting value of 0 to the audio data when it started playing.

Now to try to diagnose why I'm getting a small pop when the codec is initialized, and then why it drops off horribly low at the end of playback.. I think the slow climb back to equilibrium after the drop-off at the end of playback is the DAC automute taking over.

Bild

It’s a little quiet - but I’ve gotten audio playback from the SD card working now! On startup it’s searching for a startup.wav file on the SD card, and then decoding and playing it while the startup routine runs.

I’ve spent the last couple of weeks on a major overhaul of all the step-sequencer code to take it from its rough bringup state from the last few months into a well-organized project. I’m very happy with how it’s turning out! Nearly at the point I can actually start building out the software side.

Was chasing a problem with the I2S audio buffers overrunning for days, which I originally thought was a code error in the buffers. Turns out it was related to an overrun issue I had with Uart 6 months ago, where the Embassy buffers overrun because the compiler optimization flag is set too low.. 🫠

And we finally have stable audio! It’s rendering a middle-C sine at 261.5hz perfectly - there’s some variance in the frequency measure by my scope so it jumps between measuring 259-262Hz, but is actually stable.

Bild

And finally managed to solve the driver problems with internal "SD-based" storage IC that have been ongoing since August! Turns out all the Rust `no_std` SD drivers I could find are only written for newer high-capacity cards that use sector addressing, while my 8Gb internal IC uses byte addressing.

Bild