A full-stack embedded-to-3D pipeline that translates physical motion into a real-time 3D environment. The STM32 reads raw angular velocity from an L3GD20H gyroscope via SPI, transmits parsed data over UART, and a multi-threaded Python script animates a 3D F-15 aircraft model in Blender with zero perceptible latency.
Bare-Metal SPI: Uses STM32 HAL for efficient burst reads, capturing X, Y, and Z axes simultaneously.
Optimized UART: Fixed-point arithmetic formats and transmits sensor data, intentionally bypassing heavy floating-point printf to save MCU flash.
Real-Time Integration: Converts raw angular velocity (Β°/s) into absolute Euler angles (Pitch, Roll, Yaw) on the fly using numerical integration: ΞΈ_current = ΞΈ_previous + (Ο Γ Ξt).
Multi-Threaded Engine: Background daemon thread + Blender Modal Operator parses live serial data without freezing the 3D rendering UI.
Deadband Filtering: Customizable noise threshold prevents model drift from inherent sensor noise.
gyro_spi_read.c
/* Burst-read X, Y, Z angular velocity registers via SPI */uint8_ttx_buf[7]={0xA8|0x80|0x40};/* auto-increment + read */uint8_trx_buf[7];HAL_SPI_TransmitReceive(&hspi5,tx_buf,rx_buf,7,HAL_MAX_DELAY);int16_traw_x=(int16_t)(rx_buf[2]<<8|rx_buf[1]);int16_traw_y=(int16_t)(rx_buf[4]<<8|rx_buf[3]);int16_traw_z=(int16_t)(rx_buf[6]<<8|rx_buf[5]);
Al-Midan is a full-stack application that connects student athletes across Moroccan universities. It facilitates spontaneous sports event organization β matching players, balancing teams, and coordinating campus field reservations in real time.
The platform tackles student isolation and promotes physical well-being by making pickup games as frictionless as sending a message.
Smart Matchmaking: Auto-balances teams based on player skill scores and reliability ratings derived from post-match feedback.
Location-Aware: Surfaces nearby matches and available campus fields using geolocation.
Real-Time Updates: Firestore subscriptions push live player counts and match status changes instantly.
Venue Integration: Partner sports complexes appear in-app with availability, pricing, and student discounts.
Trust System: Post-match reporting identifies toxic behavior and maintains community quality.
Why It Matters
University life in Morocco often leads to sedentary habits and social isolation. Al-Midan leverages the neurobiological benefits of group sports β endorphin release, cortisol reduction β as a healthy alternative to excessive screen time. Initial projections target 11,000+ users across Rabat’s 35 universities within the first semester.
Cloud AI Monitor is a production-grade AIOps platform built during an internship at CIRES Technologies (Tanger Med). It monitors hybrid cloud infrastructure across OpenShift and OpenStack, detects anomalies using a custom mathematical AI model, predicts resource exhaustion, and executes autonomous remediation β all without human intervention.
A real-time face recognition access control bridge built for INPT. The system captures frames from a camera (webcam or ESP32-CAM), identifies enrolled faces via AWS Rekognition, and triggers a servo on the ESP32 to unlock a door. All access events are logged to SQLite with timestamps and confidence scores.
The STM32 firmware reads sensors via ADC and I2C, packages readings into a JSON string,
and sends them over UART to the ESP8266 co-processor every 5 seconds.