Skip to content
View KaanErgun's full-sized avatar
🏠
Working from home
🏠
Working from home

Block or report KaanErgun

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
KaanErgun/README.md

Kaan Ergün

Senior Embedded Systems Developer — FPGA, computer vision, and the hardware they run on.

I build electronic systems from the ground up.

That usually means starting with an idea or schematic, designing the hardware, writing the FPGA and embedded software, testing the complete system, and turning it into a device that works reliably in the field.

My work sits at the intersection of FPGA development, signal processing, PCB design, embedded Linux, and real-time software. These areas are often divided between several engineers, but I have spent more than ten years working across the complete system.

I have worked on HVDC power systems, aerospace electronics, UAV imaging, industrial computer vision, and embedded AI projects in Turkey and Sweden.

Based in Bodrum, Turkey.

What I do

FPGA and digital design

I develop FPGA systems mainly in VHDL, using Xilinx and Lattice devices.

My work includes:

  • Signal-processing pipelines
  • Computer-vision systems
  • Hardware interfaces
  • Real-time control logic
  • FPGA-based embedded AI
  • Simulation, verification, and hardware testing

I regularly work with Vivado, ISE, Vivado HLS, GHDL, Yosys, and nextpnr.

My focus is not limited to making a design pass simulation. I build systems that run predictably on real hardware and can be tested, measured, and maintained.

Electronic hardware

I design electronic boards from schematic to production.

This includes component selection, PCB layout, power and signal integrity, hardware bring-up, debugging, production preparation, and EMC-aware design.

I mainly use Altium Designer and KiCad.

The goal is not simply to build a working prototype, but to create hardware that can operate reliably outside the laboratory.

Embedded software and Linux

I write C, C++, Python, and system-level Linux software for:

  • Embedded devices
  • Real-time control systems
  • Device controllers
  • Hardware communication
  • Firmware
  • Test automation
  • Production and verification tools

I also design the test systems required to verify the hardware and software together.

A system is not complete until its behaviour can be measured, reproduced, and tested automatically.

Open-source projects

A modern C++ and OpenCV computer-vision toolkit.

It contains a shared computer-vision library and around 16 applications, covering subjects from classic image-processing techniques to YOLO and ONNX-based object detection.

The project also includes a complete licence-plate recognition system with:

  • YOLO-based plate detection
  • Tesseract OCR
  • Client-server architecture
  • Web-based management dashboard

A dependency-free signal-filtering library designed for embedded systems.

It includes C implementations of commonly used filters such as:

  • Kalman filters
  • Biquad filters
  • Median filters
  • Moving-average filters
  • Low-pass and high-pass filters

The same filters are also implemented in Verilog and VHDL, allowing software and FPGA versions to produce bit-exact results.

A lightweight, freestanding printf implementation for MSP430 and other small microcontrollers.

The project also includes a synthesizable hardware printf core written in SystemVerilog and VHDL.

Supported interfaces include:

  • UART
  • AXI4-Lite
  • Wishbone

More projects and technical details are available at libs.kaanergun.com.

Products and applications

An open-source FPGA development environment packaged as a VS Code extension.

It brings together tools such as Yosys, GHDL, and nextpnr and provides a consistent FPGA-development workflow across macOS, Windows, and Linux.

No manual toolchain installation or Docker configuration is required.

A simple and fast Kanban board designed to keep task and project management lightweight.

The name comes from Kaan + Kanban.

A portable terminal environment designed to follow you across different computers.

Other released applications are available at apps.kaanergun.com.

Experience

KTS Engineering — System Architect & Embedded Linux Developer

May 2025–Present · Ankara, Turkey · Hybrid

I design Linux-based device-control systems built around ARM single-board computers and develop the system-level software required to integrate them with custom electronic hardware.

My responsibilities include system architecture, embedded Linux development, hardware communication, device integration, and the design of test and verification infrastructure.

I also prepared the TÜBİTAK 1501 project proposal for the development of an FPGA-based control unit for the AFES system.

As part of the project, I contributed to the development of the device across hardware, FPGA, embedded software, system integration, and verification activities.

Due to confidentiality agreements, some technical details cannot be shared publicly.

Hitachi Energy — HVDC, Sweden

2021–2023

I worked on modernising FPGA-based electronic hardware used in high-voltage direct-current systems.

The work included updating ageing FPGA hardware while preserving compatibility with existing systems.

I also developed automated unit-test and hardware-verification systems to confirm the behaviour of both existing and updated boards.

SKYMARK Aerospace

2016–2021

I founded and led the company’s R&D department.

During this period, I developed an IP camera system from electronic hardware to embedded software and managed a TÜBİTAK-approved technology-development project.

In 2018, this work received TESİD’s Entrepreneur of the Year — Best Business Model award as part of a solution partnership with HAVELSAN.

Kivvi — Founder

At Kivvi, I developed turnkey computer-vision and artificial-intelligence systems together with custom industrial electronics.

One of the main projects was an FPGA-based imaging system for an unmanned ground vehicle, developed around the Xilinx Zybo platform.

The work covered FPGA development, image processing, embedded software, electronic hardware, and system integration.

CorlamLabs

I developed a fetal ECG monitoring system from end to end.

The project included:

  • A custom PCB based on the TI MSP432
  • Embedded C++ software
  • A companion mobile application
  • MATLAB-based signal analysis

Education

  • Physics Engineering, Hacettepe University
  • Computer Programming, Kırıkkale University

Contact

Turkish is my native language. I am fluent in English and have some knowledge of Swedish.


Kaan Ergün

Kıdemli Gömülü Sistemler Geliştiricisi — FPGA, bilgisayarlı görü ve bunların üzerinde çalıştığı donanımlar.

Elektronik sistemleri fikir aşamasından sahada çalışan ürüne kadar geliştiriyorum.

Bu süreç çoğu zaman bir fikir veya şematikle başlayıp elektronik kartın tasarlanması, FPGA ve gömülü yazılımların geliştirilmesi, sistemin test edilmesi ve güvenilir bir ürüne dönüştürülmesiyle devam ediyor.

Çalışmalarım FPGA geliştirme, sinyal işleme, PCB tasarımı, gömülü Linux ve gerçek zamanlı yazılımın kesiştiği noktada bulunuyor. Normalde farklı mühendislere dağıtılan bu alanlarda on yılı aşkın süredir sistemin tamamı üzerinde çalışıyorum.

Türkiye ve İsveç'te; HVDC enerji sistemleri, havacılık elektroniği, İHA görüntüleme, endüstriyel bilgisayarlı görü ve gömülü yapay zekâ projelerinde görev aldım.

Bodrum'da yaşıyorum.

Ne yapıyorum?

FPGA ve sayısal tasarım

Ağırlıklı olarak Xilinx ve Lattice FPGA'ler üzerinde VHDL geliştiriyorum.

Çalışmalarım şunları kapsıyor:

  • Sinyal işleme hatları
  • Bilgisayarlı görü sistemleri
  • Donanım arayüzleri
  • Gerçek zamanlı kontrol mantığı
  • FPGA tabanlı gömülü yapay zekâ
  • Simülasyon, doğrulama ve gerçek donanım testleri

Düzenli olarak Vivado, ISE, Vivado HLS, GHDL, Yosys ve nextpnr kullanıyorum.

Benim için tasarımın yalnızca simülasyonda çalışması yeterli değil. Gerçek donanım üzerinde öngörülebilir şekilde çalışan, ölçülebilen, test edilebilen ve sürdürülebilen sistemler geliştiriyorum.

Elektronik donanım

Elektronik kartları şematik tasarımdan üretime kadar geliştiriyorum.

Bu süreç şunları içeriyor:

  • Bileşen seçimi
  • Şematik tasarım
  • PCB yerleşimi
  • Güç ve sinyal bütünlüğü
  • İlk kart çalıştırma
  • Donanım hata ayıklama
  • Üretime hazırlık
  • EMC gereksinimlerini dikkate alan tasarım

Ağırlıklı olarak Altium Designer ve KiCad kullanıyorum.

Amacım yalnızca laboratuvarda çalışan bir prototip üretmek değil, gerçek kullanım koşullarında güvenilir şekilde çalışabilecek bir cihaz ortaya çıkarmak.

Gömülü yazılım ve Linux

Aşağıdaki alanlarda C, C++, Python ve sistem seviyesinde Linux yazılımları geliştiriyorum:

  • Gömülü cihazlar
  • Gerçek zamanlı kontrol sistemleri
  • Cihaz kontrol birimleri
  • Donanım haberleşmesi
  • Firmware
  • Test otomasyonu
  • Üretim ve doğrulama araçları

Aynı zamanda donanım ve yazılımın birlikte doğrulanabilmesi için gerekli test sistemlerini geliştiriyorum.

Bir sistemin tamamlanmış sayılabilmesi için davranışının ölçülebilir, tekrarlanabilir ve otomatik olarak test edilebilir olması gerektiğine inanıyorum.

Açık kaynak projeler

C++ ve OpenCV ile geliştirilmiş modern bir bilgisayarlı görü araç seti.

Ortak bir bilgisayarlı görü kütüphanesi ve yaklaşık 16 farklı uygulamadan oluşuyor.

İçeriğinde klasik görüntü işleme yöntemlerinden YOLO ve ONNX tabanlı nesne tespitine kadar farklı çalışmalar bulunuyor.

Proje ayrıca tam kapsamlı bir plaka tanıma sistemi içeriyor:

  • YOLO tabanlı plaka tespiti
  • Tesseract OCR
  • İstemci-sunucu mimarisi
  • Web tabanlı yönetim paneli

Gömülü sistemler için geliştirilmiş, harici bağımlılığı olmayan bir sinyal filtreleme kütüphanesi.

Kütüphane, yaygın kullanılan filtrelerin C uygulamalarını içeriyor:

  • Kalman filtreleri
  • Biquad filtreleri
  • Medyan filtreleri
  • Hareketli ortalama filtreleri
  • Alçak ve yüksek geçiren filtreler

Aynı filtrelerin Verilog ve VHDL karşılıkları da bulunuyor. Böylece yazılım ve FPGA uygulamaları bit seviyesinde aynı sonucu üretebiliyor.

MSP430 ve diğer küçük mikrodenetleyiciler için geliştirilmiş hafif ve bağımsız bir printf uygulaması.

Projede ayrıca SystemVerilog ve VHDL ile yazılmış, sentezlenebilir bir donanım printf çekirdeği bulunuyor.

Desteklenen arayüzler:

  • UART
  • AXI4-Lite
  • Wishbone

Daha fazla proje ve teknik ayrıntı için: libs.kaanergun.com

Ürünler ve uygulamalar

FPGA geliştirme araçlarını bir VS Code eklentisi içinde sunan açık kaynak bir geliştirme ortamı.

Yosys, GHDL ve nextpnr gibi araçları bir araya getirerek macOS, Windows ve Linux üzerinde tutarlı bir FPGA geliştirme süreci sağlıyor.

Elle araç zinciri kurulumu veya Docker yapılandırması gerektirmiyor.

Görev ve proje yönetimini gereksiz karmaşıklık olmadan yapmak için geliştirdiğim sade ve hızlı bir Kanban panosu.

İsmi Kaan + Kanban birleşiminden geliyor.

Kişisel terminal ortamınızı farklı bilgisayarlar arasında taşımanıza yardımcı olmak için geliştirilmiş taşınabilir bir terminal uygulaması.

Yayımladığım diğer uygulamalar: apps.kaanergun.com

Deneyim

KTS Engineering — Sistem Mimarı ve Gömülü Linux Geliştiricisi

Mayıs 2025–Devam ediyor · Ankara, Türkiye · Hibrit

ARM tabanlı tek kart bilgisayarlar ve Linux işletim sistemi üzerinde çalışan cihaz kontrol sistemlerinin mimarisini tasarlıyor, bu sistemlerin özel elektronik donanımlarla çalışmasını sağlayan sistem seviyesindeki yazılımları geliştiriyorum.

Sorumluluklarım arasında sistem mimarisi, gömülü Linux geliştirme, donanım haberleşmesi, cihaz entegrasyonu ile test ve doğrulama altyapılarının tasarlanması bulunuyor.

Ayrıca AFES sisteminin FPGA tabanlı kontrol kutusunun geliştirilmesi için TÜBİTAK 1501 proje başvurusunu hazırladım.

Proje kapsamında cihazın donanım, FPGA, gömülü yazılım, sistem entegrasyonu ve doğrulama çalışmalarında görev aldım.

Gizlilik sözleşmeleri nedeniyle bazı teknik ayrıntıları kamuya açık olarak paylaşamıyorum.

Hitachi Energy — HVDC, İsveç

2021–2023

Yüksek gerilim doğru akım sistemlerinde kullanılan FPGA tabanlı elektronik donanımların modernizasyonunda çalıştım.

Çalışmalarım, yaşlanan FPGA donanımlarının güncellenmesini ve mevcut sistemlerle uyumluluğun korunmasını kapsıyordu.

Ayrıca mevcut ve güncellenmiş kartların davranışını doğrulamak için otomatik birim test ve donanım doğrulama sistemleri geliştirdim.

SKYMARK Aerospace

2016–2021

Şirketin Ar-Ge departmanını kurdum ve yönettim.

Bu dönemde elektronik donanımından gömülü yazılımına kadar uçtan uca bir IP kamera sistemi geliştirdim ve TÜBİTAK tarafından onaylanan bir teknoloji geliştirme projesini yönettim.

Bu çalışmalar, HAVELSAN çözüm ortaklığı kapsamında 2018 yılında TESİD tarafından verilen Yılın Girişimcisi — En İyi İş Modeli ödülünü aldı.

Kivvi — Kurucu

Kivvi bünyesinde özel endüstriyel elektronik donanımlarla birlikte çalışan uçtan uca bilgisayarlı görü ve yapay zekâ sistemleri geliştirdim.

Öne çıkan projelerden biri, Xilinx Zybo platformu üzerinde geliştirilen FPGA tabanlı insansız kara aracı görüntüleme sistemiydi.

Çalışmalar FPGA geliştirme, görüntü işleme, gömülü yazılım, elektronik donanım ve sistem entegrasyonunu kapsıyordu.

CorlamLabs

Fetal ECG ölçümü yapan bir sağlık cihazını uçtan uca geliştirdim.

Proje şunları içeriyordu:

  • TI MSP432 tabanlı özel elektronik kart
  • C++ ile geliştirilen gömülü yazılım
  • Yardımcı mobil uygulama
  • MATLAB tabanlı sinyal analizi

Eğitim

  • Hacettepe Üniversitesi, Fizik Mühendisliği
  • Kırıkkale Üniversitesi, Bilgisayar Programcılığı

İletişim

Türkçe ana dilimdir. İngilizceyi akıcı olarak kullanıyorum ve temel düzeyde İsveççe biliyorum.

Popular repositories Loading

  1. k_filter k_filter Public

    C 25 1

  2. KaanErgun KaanErgun Public

    1

  3. Login-Page-React-and-Tailwind Login-Page-React-and-Tailwind Public

    TypeScript 1

  4. vhdl-basix vhdl-basix Public

    Basic VHDL codes

    VHDL

  5. cpp_project_automation cpp_project_automation Public

    Python

  6. P-Nucleo-WB55_LedButton P-Nucleo-WB55_LedButton Public

    C++