Wiring (Arduino Core) ESP-IDF AVR / Arduino ESP8266 / ESP32 HTML5 PHP SQL Git Autodesk Eagle MATLAB C Postman OpenSSL

Personal informations


  • Name: Ing. Martin Chlebovec
  • E-mail: martinius96@gmail.com
  • Residence: Šuňava (District Poprad)
  • Age: 25 years old
  • Other personal informations available at Profesia.sk for companies

  • Education



    Preferred locations for work


  • District Poprad
  • District Liptovský Mikuláš
  • District Spišská Nová Ves
  • Kežmarok
  • Remote / Hybrid

  • Looking for these positions


  • Software engineer
  • Embedded IoT developer (ESP-IDF, FreeRTOS)
  • Electrotechnical engineer
  • SW/HW Tester
  • System administrator
  • PLC developer (no previous experience)
  • Prototype developer (Wiring - Arduino Core)

  • Publications - own / in cooperation - (essays, professional articles, semester and final theses) - SK language


  • Measurements on a physical model of PON networks for the TUKE complex - (LAB 1 TM)
  • Routing within sensor networks - (Seminar paper)
  • mmWaves, antenna types, communication types - (Seminar paper)
  • Secure remote update of ESP32-based IoT sensor - (EEI XII - TUKE)
  • Intelligent relay with WiFi connectivity to the eduroam network - (Bachelor thesis)
  • Secure firmware update in sensor network based on ESP32 - (Diploma thesis)
  • Influence of noise on pixel graphics - MATLAB
  • Electroinstalation - ProgeCAD

  • Knowledge and skills


    Embedded, microcontrollers
  • C - basics
  • Embedded Software - basics
  • Wiring - pre-intermediate
  • ESP-IDF - beginner
  • FreeRTOS - beginner
  • ESPTOOL - basics
  • IoT (Sigfox) - basics
  • Autodesk Eagle - basics
  • EasyEDA - basics

  • Protocols, buses, modulations
  • REST, MQTT, HTTP, SSL, UDP
  • RS-232, RS-485, UART, SPI, I2C, 1-wire
  • PWM
  • Web technologies
  • HTML5 - basics
  • Bootstrap - basics
  • CSS - basics
  • PHP (procedural) - basics
  • SQL - basics
  • Google Charts - basics
  • Other
  • MATLAB - basics
  • VHDL - beginner
  • AutoCAD / ProgeCAD (2D) - basics
  • OpenSSL - beginner
  • Microsoft Office - pre-intermediate
  • OS Linux - basics
  • OS Windows - intermediate
  • Git - basics
  • UML / Draw.io - basics
  • DIALux evo - basics

  • Testing tools
  • Postman - basics
  • Packet Sender - pre-intermediate
  • Language skills
  • English - B1
  • German - A1

  • Interests, area of focus


    During my free time in last few years I have created created various program implementations for AVR ATmega microcontrollers on Arduino development kits and WiFi microcontrollers from Espressif Systems - ESP8266, ESP32 in Wiring framework (Arduino Core) in the Arduino IDE environment. They were primarily programmed for purposes related to data collection, GPIO control, reading values from digital sensors, ADC converter and their transfer to higher systems. I have experience with operating analog inputs and digital IO pins, interrupts for various states of edge detection of digital input signal (RISING / FALLING) with SW debouncing. I can implement pseudo-multitasking program for handling buses, calculations, server requests, etc. Also I can create optimized firmware for ESP8266 / ESP32 for battery operation - Ultra Low Power (ULP), deep sleep mode. I have mastered communication with peripherals using standard buses - UART / RS232 / RS485 / I2C / SPI / OneWire with a compatible Arduino (C / C ++) library. For network and Internet connectivity, I used WiFi / Ethernet technology (communication via SPI for Arduino boards, or RMII for ESP32 with PHY Ethernet) / Sigfox (communication via HW / SW UART) for data transfer to the cloud service, or my own backend available over the Internet, LAN network. I have experience with data transmission via UDP datagrams, but also via standard most used TCP protocols, for instance HTTP(s) / MQTT(s) and their implementation under these microcontrollers. I have created a few simple responsive (Bootstrap) web interfaces in HTML5, which can run on microcontrollers in web server mode, or at web hosting with support for PHP (procedural, not OOP) scripts for backend, that can do datas processing, their storage to MySQL database. For visualization of measured data from sensor nodes in graphical representation I was using Google Charts / Gauges.


    Based on the application requirements, the web interfaces created by me also enable remote GPIO control with the possibility of configuring control data for the application logic (eg target temperature, hysteresis). Control in manual / automatic mode based on conditions -> measured physical quantities, time, etc. Logic executed by executing a PHP script that runs a microcontroller and loads a payload (JSON, RAW ...) in the Response web server, to which it can make a callback. I created a couple of simple web applications with the possibility of multiuser access (session), which allow the user to visualize data from his microcontroller with the possibility of his remote management. The web interface allows to generate source code for the microcontroller based on the set data with the possibility of authentication of the microcontroller via an argument in the POST request, or via HTTP authentication (Basic Auth / Bearer token and others). At FEI TUKE, I carried out a diploma thesis using the ESP-IDF framework (C language) for the ESP32 microcontroller from Espressif Systems. I used the FreeRTOS real-time operating system and mastered the basic basics of task execution (tasks) and task blocking mechanisms, e.g. front - Queue. The final firmware implementation of the thesis for ESP32 included Remote Over The Air (OTA) firmware updates distributed through cloud storage (ECDSA digital firmware signature signature scheme). Firmware transfer via secure transmission channel - HTTPS protocol. Generated own CA certificate, certificate for the domain using the OpenSSL tool, implementation into the HTTPD service of Cent OS. Part of the solution of the diploma thesis was also the permanent launch of HW functionalities ESP32 via eFuses - Secure Boot V1, Flash Encryption in the mode for production applications (Release) to secure the firmware, Bootloader (digest) and boot process. There were also used ESPTOOL package with the tools - esptool.py (ESP32 flash related tool), espefuse.py (internal eFuses tool), espsecure.py (cryptographic operations, key generation, firmware signing).


    References for projects implementations - DEMO:


  • Water Level monitor (Arduino / ESP / Sigfox): https://martinius96.github.io/hladinomer-studna-scripty/
  • RFID gatekeeper (Arduino / ESP, open-source): http://arduino.clanweb.eu/rfid/
  • Temperature and humidity monitor with heating solenoid control: http://arduino.clanweb.eu/daxville/
  • Heating with hysteresis (multiuser web application Arduino / ESP - open-source): http://arduino.clanweb.eu/vykurovanie-online/ test login: admin / admin
  • Irrigation control based on time and weather conditions (Arduino + Ethernet): http://arduino.clanweb.eu/zavlaha/ test login: admin / admin
  • WiFi thermostat with web interface (ESP8266 / ESP32): https://martinius96.github.io/WiFi-termostat/en/
  • Ethernet thermostat with web interface (ATmega328P + Wiznet W5100 / W5500): https://martinius96.github.io/termostat-ethernet/en/
  • Airsoft Domination Timer with RFID / button user entry (ATmega328P): https://martinius96.github.io/Airsoft-DOMINATOR-RFID/en/

  • External links to project source codes - Github:


  • RFID gatekeeper (open-source): https://github.com/martinius96/RFID-otvaranie-dveri
  • ESP-IDF implementations (FreeRTOS) for ESP32 microcontroller: https://github.com/martinius96/ESP-IDF_FreeRTOS_ESP32
  • Heating with hysteresis (multiuser web application Arduino / ESP - open-source): https://github.com/martinius96/Vykurovanie-Multiuser-Webapp
  • C language implementations (CLI console): https://github.com/martinius96/C-scripty
  • Multiuser text-based game Webwars (open-source): https://github.com/martinius96/Webwars
  • WebScraper ESP8266 / ESP32 with UART input for license plate: https://github.com/martinius96/WebScraper-ESP
  • MATLAB implementations: https://github.com/martinius96/MATLAB-scripty
  • Connection to the Slovak public MQTT Broker (Arduino, ESP8266, ESP32): https://github.com/martinius96/MQTT-Broker-IoTIndustries
  • Mastermind - game implementation for Arduino & LCD: https://github.com/martinius96/mastermind-arduino

  • Screenshots from implemented projects - Arduino / ESP8266 / ESP32:



    Screenshots from realized tasks and assignments - MATLAB: