syncgrips
Pushup handles with integrated weight sensors. Track pushup workouts in realtime with smartphone app and Bluetooth Low Energy.
- CAD in build123d
- ESP32 firmware
- Figma UI design
- react-native app
The app syncs both connected devices and displays the data to act as a biofeedback device to improve balance while doing pushup workouts. It also has a 'hot wire' mode for gamified workouts. Like train rider but the balance of your body for control left/right.
smue2 keyboard
Complete rewrite and next design iteration of my keyboard generator. Mesh-based geometry has its limitations and instead of using CGAL-backed OpenSCAD it uses the B-Rep CAD-Kernel OpenCascade as the core component for generating geometry.
Tokens as a Service
Create custom tokens on the Cardano blockchain. Append any metadata and place it with a minting-transaction on the blockchain. Can be used to get an unchangable proof of some file being present at least at the creation-date. Can also be used to create non-fungible tokens of any kind, which is just some metadata to an image file inside of the transaction.
In 2021, it was not possible to mint custom tokens on the Cardano blockchain with a smart contract. To do this, one had to place a custom minting transaction on the blockchain via its command line interface instead. I built a little frontend to create such tokens with Rust and the fastest webframework that was available at the time, actix-web. The user could:
- Upload a media file
- Send shown amount of ADA to the service
- Get your file as a token along some ADA returns back
The service was made up with a webserver which faced the user and tracked orders and a webclient, that checked the blockchain for incoming transactions, mapped them to the orders of the server and created all nessesary transactions on a Cardano node.
Floppy Venture
Teaching Computational thinking with this educational game, where a robot needs instructions to get to the next level. Use drag and drop to compose functions with blocks. An interpreter then runs those commands and controls a robot 3D-Model in the Scene accordingly.
smue keyboard
A dome-shaped split-keyboard with Bluetooth Low Energy. Completely procedural generated 3D-models and circuit boards from code. Uses Constructive Solid Geometry, NURBS surfaces, linear algebra and other math tricks."
Bogus Exchange
The Bogus Exchange is a casual game. Paper trade some random walk with friends. A whole week in 5min. Just create a new Game, send the game-link to your friends and find out, who is the best stock trader. Or the most luckiest one.
Autonomous Air Quality Sensor
Measures seven properties of the air we breathe. Warns you when air is not fresh. Completely solar-powered with LiFePO4 battery instead of a LiPo. Wakes up every 5 minutes, takes measurements and pushes it to a timeseries database. A grafana dashboard is used to view the data.
Measures:
- CO
- CH4, NOx
- P2.5, P10 particular matter
- relative humidity and temperature
- Volatile organic compounds
SPINNE
A lamp that is able to move in all directions.
Custom ATMega328p-based PCB:
- Closed-LoopControl of four DC Motors
- High-Power LED-Driver and RGB LED control
- Receive/Send Bluetooth Data
- Battery and Power Management
- Firmware written in C, compiled with avrgcc
Android-App:
- Bluetooth Remote Control
- Crete Command Queues
- Game-Loop-based rendring using libgdx
glooper
Flappybird-inspired casual game for android. Fish swims in a circle. Touching the screen changes the direction. You can either swim in a right circle motion or in a left one and the goal is to survive while finding out of the cave. Using Box2D as a physics-engine for collision detection.
Rayfork
Proof of concept for an endless-scrolling casual game on mobile. Try to get the laserbeam as far as you can. Used OpenGL rendering, Box2D physics-engine for raycasting and dragging that respects interfering objects and collsisions.