Ernest Warzocha's repositories
Arduino-IMU-and-AHRS-tests
Various 6-dof and 9-dof orientation sensors test for the purpose of Tangible Interaction Design classes.
Arduino-Neopixels-animations
Neopixels light animations with sine wave, perlin noise, lerp etc. Code is written by using FastLED library. Supplement to my Physical Computing workshops.
ARM-STM32-bare-metal-examples
Basic examples of STM32 ARM bare-metal programming. No high level libraries or IDE. Pure C. It's still in progress.
Processing-Generative-Typography
Reference examples from Introduction to Generative Typography workshops held as a part of my old Creative Coding classes. Repository contains TTF font generator.
Stable-diffusion-flow-of-latent-space-using-Perlin-noise-algorithm
Applying Perlin Noise algorithm for procedural spatial noise flow and interpolation of latent space in Stable Diffusion.
Stepper-motor-bare-metal-STM32
A non-blocking bare-metal firmware to control stepper motor with A4988 driver, made on STM32F446RE board using timers and interrupts.
Web-Bluetooth-and-HM-10-module-for-Arduino
A simple browser terminal for HM-10 Bluetooth LE modules available at my workshop. May be helpful for some of my students.
Arduino-distance-sensors-comparison
Testing various kind of distance sensors with Arduino for the purpose of Tangible Interaction Design classes.
AVR-bare-metal-examples
A series of bare metal AVR development basic examples with commentary to help you get started.
FCN-image-segmentation
Implementation of FCN-8 tested on handwritten digits dataset. Nothing fancy, just trying to use various architectures for image segmentation.
Neopixels-bare-metal-STM32
Bare-metal implementation of WS2812 LED strip using DMA and PWM for STM32F446RE. Tested with 1 meter strip.
Neural-style-transfer
An AI algorithm to stylize one image with another. Repository consists of two notebooks: basic NST implementation from scratch and Fast-NST pre-defined sample code for comparison.
Servo-motor-in-Assembly
Playing around with timers and ADC on STM32F446 to control a servo with a knob. Trivial unless written purely in ARM assembly on STM32 Cortex-M4F.
Stepper-motor-in-assembly
Controlling stepper motor using A4988 driver and PWM written from scratch in ARM assembly on STM32 Cortex-M4F.
Web-MIDI-to-Arduino
Simple boilerplate for hacking the Arduino Leonardo to control the pins directly in browser with MIDI interface.
Arduino-heart-rate-pulse-sensors
A comparison of pulse sensors for Arduino. It's an enhanced version of tests made with my students for one of their project in 2020.
CNN-Image-segmentation-for-CARLA-with-U-Net
Implementation of image segmentation task for autonomous car driving via U-Net architecture in Tensorflow.
MIDIUSB
A MIDI library over USB, based on PluggableUSB
Web-bluetooth-and-Arduino-Nano-33-BLE
An example of using Web Bluetooth API with Arduino BLE board. It uses custom characteristics rather than serial port profile.
Autoencoder-denoiser
Use autoencoder model to denoise the images.
CNN-GradCAM
Implementation of Gradient-weighted Class Activation Maps of a simple classifier in Tensorflow. In progress.
CPU-usage-tracker
A CPU usage tracker using POSIX Threads written in C.
DCGAN-Hands-Generator
Basic Deep Convolutional Generative Adversarial Network to generate hand images. An old assignment from one of the courses I took.
MPU6050-complementary-filter-in-assembly
Compute gyro+accel IMU orientation angles by using complementary filter algorithm written purely in ARM assembly on Cortex-M4F STM32. Work in progress.
Neural-Network-in-pure-NumPy
A feedforward neural network from scratch without any high level deep learning libraries. Pure mathematics and NumPy.
PoseNet-and-p5js
An experiment with PoseNet and p5.js. It uses hand position estimation from camera input to bounce the ball on the screen.
Processing-looped-animations
As requested by students, various approaches to create looped gif using sine wave and Perlin Noise for the first homework.
RETAIN-heart-failure-prediction-model-RNN
A recurrent neural network to predict heart failure based on ICD-9 patient data analysis from MIMIC dataset. RETAIN network uses "Reverse Time Attention Mechanism" for predictions.
STM32-CMake-boilerplate
A basic boilerplate to start working with STM32, arm-none-eabi and CMake with custom toolchain setup for bare-metal development.