Robotics · Computer Vision · ML/AI · Embedded & IoT · Linux
I'm an Electronic & Telecommunication Engineering undergraduate at the University of Moratuwa, focused on robotics, computer vision, machine learning, and embedded/IoT systems.
| Project | Work and technologies |
|---|---|
| Micromouse Robot | STM32F411 robot for 16×16 mazes: flood-fill exploration, shortest-path navigation, embedded C, custom Altium PCB, and mechanical CAD. |
| Unitree Go2 in Isaac Sim | Isaac Sim and ROS 2 work for my final-year project, including camera/depth sensing, waypoint navigation, and synthetic dataset recording. Based on Zhefan Xu's isaac-go2-ros2. |
| EKF-SLAM Simulation | Joint robot-pose and landmark mapping in Python/NumPy, with loop-closure diagnostics, 120 paired trials, and a Gazebo Classic / ROS 2 demo. Baseline trajectory RMSE: 0.238 m versus 3.233 m for wheel odometry (20-seed means). Animation. |
| ZED Mapping & Relocalisation | Experimental ZED 2i pipeline combining DROID-SLAM poses, voxel mapping, ACE relocalisation, and Open3D. End-to-end validation is pending. |
| SLRC 2025 Finals | Team PixieBots' top-five finalist robot with autonomous navigation and a 4-DoF arm; C++, PlatformIO, servos, and colour sensors. |
| Unitree Go2 in MuJoCo | Extended Unitree's MuJoCo simulator with a verified C++ ROS 2 sensor bridge: 4,000-point 10 Hz LiDAR, IMU and simulation clock, Go2 teleoperation, KISS-ICP 3D mapping, and RViz visualisation. |
More robotics work: autonomous robot design and competition and MATLAB robotics labs covering coordinate frames, forward/inverse kinematics, and trajectory generation.
| Project | Work and technologies |
|---|---|
| Shortcut Sleuth | Completed 12-run, three-seed CNN vs. ViT background-shortcut study, with foreground-preserving background swaps, verified evaluation, and an interactive PyTorch lab. |
| CNN Experiments on CIFAR-10 | PyTorch coursework covering manual backpropagation, optimizers, regularization, residual networks, and a compact CNN. |
| Boxsmith | A tiny CNN trained from scratch on synthetic shapes, with an interactive object-detection lab for bounding boxes, NMS, IoU, precision–recall, and mAP. |
| Noise to Vogue | DDPMs trained on Fashion-MNIST, with linear/cosine noise-schedule comparisons, denoising animations, and an interactive prediction viewer. |
| Image Processing & Computer Vision | OpenCV, NumPy, and scikit-image coursework: filtering, RANSAC, homography, SIFT stitching, and segmentation. |
| StyleNStay: Composed Image Retrieval | Team project using TransAgg and a BLIP backbone to retrieve fashion images from a reference image and a text modification. |
| Jute Pest Classification | Team coursework comparing a custom CNN with transfer learning using VGG19, InceptionV3, and DenseNet201. |
Foundations: Pattern Recognition—regression, classification, robust losses, and model evaluation.
| Project | Work and technologies |
|---|---|
| Echo-Guard | Noise monitoring with ESP32 sensors, MQTT, a Raspberry Pi server, WebSockets, and a React interface. |
| Medibox | ESP32 medicine reminders and environmental monitoring, with MQTT, Node-RED, and Wokwi simulation. |
| AmpAware | Team smart-plug project. My contribution: PCB design, hardware testing, and system integration. |
| UART Between FPGAs | Verilog UART transmitter/receiver design, baud-rate generation, and FPGA display integration. |
Other hardware work includes a Raspberry Pi security camera, a team strain-gauge torque sensor, and a torque-readings dashboard.
| Project | Work and technologies |
|---|---|
| School Management API | TypeScript/Express CRUD APIs for students, teachers, and courses; MongoDB, JWT authentication, role-based access, Zod validation, and OpenAPI documentation. |
| AWS Infrastructure with Terraform & Ansible | Modular infrastructure for a containerised application: VPC networking, EC2, an Application Load Balancer, and Ansible provisioning. |
| AWS ECS Infrastructure | Terraform modules for container deployment, networking, load balancing, and ECS capacity configuration. |
| Serverless API on AWS Lambda | A containerised Express API using AWS SAM, Lambda Web Adapter, API Gateway, ECR, and Terraform. |
| Java / Vert.x service project (internship) | Built single-process and Hazelcast-clustered service prototypes with Vert.x event-bus service proxies; verified cross-process messaging and compared latency/throughput. |
| Auth0-to-Keycloak migration work (internship) | Added Keycloak OIDC login support to an Auth0-backed frontend and validated the local redirect and token flow. The Kubernetes deployment stage was still pending. |
I also work with Docker Compose, automated tests, and GitHub Actions, and explore software design through projects such as Document Life Cycle.
|
Robotics & Simulation |
Computer Vision & ML |
3D Vision & Mapping |
|
Embedded Systems & IoT |
Linux & Systems |
Software & APIs |
|
Cloud & DevOps |
Electronics, FPGA & CAD |
Linux is part of my day-to-day work: I configure systems, write shell automation, and maintain services and developer tools (using Arch Linux, a Linux distribution). My dotfiles bring together Hyprland, Waybar, Neovim, Zsh, and GNU Stow.
- Desktop and terminal customisation, shell scripting, and CLI utilities.
- systemd services/timers, udev rules, package hooks, and system configuration.
- Backup automation with restic and rclone, plus firewall configuration and secret-handling safeguards.
- Completed: Electronic Circuits & Analysis · Signals & Systems · Computer Organization & Design · Robotics Design & Competition · Electronic Control Systems · Communication Systems Engineering · Electronic Design Realization · Electromagnetics · Pattern Recognition · Image Processing & Machine Vision · Internet of Things · Robotics
|
|
|



