Profile Lucas Sta Maria

I'm a final year Computer Science and Mathematics student at Northeastern University interested in programming languages and developer tooling.

(λx.x x) (λx.x x)


I participated in the NUS Hack&Roll 2021 hackathon in Singapore (virtually) with my friends Leo Lee and Edward Wibowo. Together, we constructed the hardware hack Crisp, which ended up winning the "Best Pre-University Hack".

We came up with the idea of Crisp an hour into the hackathon, after we completely consumed the Pringles can. It was a relatively dumb, but enjoyable joke.

I primarily dealt with the hardware. With my assortment of various tools, I split the Pringles can in half, attached a bread board to one half's inner face, and began wiring everything together. I used my leftover linear key switches (Kailh Speed Silvers, which I got for a bargain) as the note activators that musicians would press. To connect it to our electronics, we individually (and poorly, I might add) soldered a jumper wire to each of a switch's two pins, for a total of 12 switches.

Because our microcontroller was too big, along with our wires being a bit excessive, we were unable to fit the Arduino Mega inside the Pringles can. The Pringles can was brought together again with the use of a glue gun we purchased at a nearby hardware store.

Below is the schematic for the electronics, made with Fritzing:


The firmware for the Arduino mega handles converting the key presses into notes. It also is in charge of changing scales, or adding sharps and flats. This was written primarily by Leo.

Arduino Megas don't support sending MIDI signals natively. As such, we had to write a driver in Python to convert the serial messages into MIDI signals that common digital audio workspaces would interpret. This was written primarily by Leo and Edward.

With a massive amount of time remaining, Leo and I were messing around playing random songs on Crisp. Meanwhile, Edward developed a visualiser using Rust and SDL2.

In short, Crisp turned into an amazing musical instrument. You can watch Leo playing Megalovania on it here.