Professional Portfolio
Music synthesizer
(Feb 2023 - Mar 2023)
Implemented in a team of 4 embedded software for a music synthesiser with the use of a STM32. Features included were different octaves and volume level, waveforms (sawtooth, square, triangle, sine), the support of simultaneous key presses, a joystick used as pitch bender & volume modifier, record and playback support, and user-friendly, multi-page display.
Autonomous Pet Caretaker (iFeed)
Jan 2023 - Apr 2023
Designed and built (CAD and 3D printed) in a team of 4 a product for the feeding of your pet when you are away. Ability to set feeding time an amount of food through your web server account. Then, the exact number of grams will auto-dispense at the date and time selected for your pet to eat. Set your pets' profiles and choose which one to feed. During feeding time, iFeed will alert the correct pet by calling its name through a built-in speaker. Computer Vision algorithm is implemented to detect the correct pet (by breed) before dispensing the food (otherwise waits until correct detection). Built-in live stream for the monitoring of the pet and a keypad to manually dispense food when you are near.
Mars Rover
May 2022 - June 2022
Designed an autonomous rover for alien colony exploration on Mars (team work). The rover navigates through an arena, detects, analyses (colour and height), and avoids obstacles, and send data to a command centre to build a map of the area and the objects in real-time. The command centre can on-demand send instructions to the robot and remote manage it in-real time. An energy station was developed for the efficient charging of the robot. My main part included the programming of the motor drivers, the gyroscope, and the sensor flow in Arduino for the roaming of the robot in the arena.
Multi-player video game
Feb 2022 - Mar 2022
Created a space invaders game, using as joysticks FPGAs that I programmed. The FPGA included an accelerometer capturing speed/location/ orientation data. Each FPGA is connected to a laptop that transforms the raw data into movement commands, passes them to an AWS cloud server, and then to another laptop that runs the actual game, using TCP connections and SQL.
C to MIPS compiler
Feb 2022 - Mar 2022
I created a C to MIPS compiler. I programmed the lexer in flex, the parser in bison, and the code generator in C. The features that were implemented included variables of all types, structs and pointer types, arrays, functions of multiple parameters, arithmetic/logical expressions, loops, reading/writing elements, switch, break and continue statements, external functions and file linking, recursive functions, and mutually recursive functions.
Drone modeling and Control
Feb 2022 - Mar 2022
Modelled a drone to travel in 2 degrees of freedom, i.e., pitch angle and horizontal translation in MATLAB. Designed the free and forced response controllers and tuned the PID parameters for attitude, velocity, and position control.
MIPS CPU
Nov 2021 - Dec 2021
Created a bus-based MIPS chip in Verilog, and its assembler in python, and tested its performance on benchmark tasks. Implemented it using an ALTERA FPGA DE10-Lite.
Circuit simulator
May 2020 - June 2020
Created a C++ program to read a circuit, perform transient and steady-state analysis. Results are displayed in python. Components compatible for the program include AC & DC voltage and current sources, resistors, capacitors, inductors, diodes, and transistors (NPN & PNP). Relevant business report and demo-video were created.
OpenMIC
Jan 2019 - Nov 2019
I built an open platform (OpenMic) for remotely managing 1000s of Raspberry Pi‘s, towards controlling IoT infrastructures. Participated with it in Open Technologies Alliance (GFOSS) competition in 2019, reaching the finals. Published in A. Varvarigos, A. Kretsis, P. Kokkinos, “OpenMic: open multi-agent intelligence and computing”, Proceedings Panhellenic Conference on Informatics (PCI 21019), pp. 119-126, Cyprus, Nov. 2019. OpenMIC | Proceedings of the 23rd Pan-Hellenic Conference on Informatics (acm.org)
Robotics and Smart cities
Jan 2018 - Jan 2019
Built sensor-carrying traffic-light-obeying robotic vehicles that visit all points of interest of a city, gathering data and executing actions. The tasks operated by the autonomous vehicle are following complex routes, interacting with various sensors, obeying smart traffic lights, and analysing smart trash bins and smart information stations. A control centre in python was built to allow for remote control of the vehicle, provide real-time information on current position and operation condition of the vehicle, provide information on the current state of the smart city infrastructure and any events that the robotic vehicle detects, and maximise the benefits of the vehicle operations. Took part and reached the WRO (World Robotics Organization) competition finals as a “2-big brothers” team against big well-supported High School teams.​
MediBot
Jan 2018 - Jan 2019
Built a prototype AI-based chatbot for teaching differential diagnosis to medical students. The Medical Bot provides a system where voice-enabled chat-bots play the role of patients. The bots interact with doctors or candidate doctors, playing scenarios of various diseases, including usual, rare, or even misleading cases, to train candidate doctors. Moreover, the user has the ability to request the execution of standard laboratory medical examinations. A web-based management application was developed to provide the required functionality for editing existing scenarios and defining new ones. It also monitors the execution of the training scenarios and has the ability to provide useful statistics both overall and per available scenario. I participated with it in 2019 John & Mary Papajohn Business plan competition, reaching the finals of 15 teams (only high-school team to do so). I presented MediBot in front of a business/academic panel.