synth
A single clock domain square wave synthesizer (basically a 13-way clock divider with a speaker output). Easy way to annoy your friends and family.
Image credit: Sponk
A single clock domain square wave synthesizer (basically a 13-way clock divider with a speaker output). Easy way to annoy your friends and family.
Image credit: Sponk
The classic arcade game implemented 100% in hardware. VGA output at industry standard 640x480 @ 60Hz!
ESP8266 program which NATs eduroam behind an unencrypted network. Based on the RangeExtender-NAPT from the Arduino ESP8266 community.
Image credit: Yangliy
A simple Chrome extension to automatically add Github, Devpost, and link icons to Creddle.io resumes!
A Firefox and Chrome extension which encourages users to become more politically open. Developed with Javascript using browser APIs.
Using a Altera Cyclone IV FPGA to compute the FFT on hardware! Using Verilog for hardware description and cocotb (python) for the testbench.
Implementations of the Discrete Fourier Transform - using the naive and Cooley-Tukey algorithms written in Rust. Validates FFT-H.
Image credit: Virens
My first foray into Unix systems programming! Using C to play around with sockets and send data packets. Built client and server implementations.
Get the latest news, chat with fellow commuters, and receive updates on transit status. Built on a unique online-offline network infrastructure.
A IoT sensor for foot traffic, interfacing with Slack and Airtable. Built with an ESP8266 microcontroller and a StdLib web service backend.
A modern geolocation-based online marketplace for the sharing economy. Built using Angular, Java and MongoDB. Hosted on Google Cloud Platform.
A Universal Chess Interface compatible chess engine, written in Python. Uses Minimax search with Alpha-Beta pruning and piece-square tables.
Image credit: Jez9999
A redesigned Arduino microcontroller board, from the open source spec. My first project with KiCad and soldering SMT components.
Op-amp circuit based on LM386 chip from Texas Instruments. Powerful enough to drive my electric guitar. Circuit design, layout, and soldering.
Python scripts for training a neural network to compose baroque-style keyboard music. Conversion between MIDI, .txt, and .csv. File retrieval with requests library.
Image credit: Glosser.ca
Android app that uses restaurant inspection data from OpenData to recommend dining options for users. Java backend with IBM Cloudant database.
Image credit: City of Toronto