Skip to content
@NetKit-Labs

NetKit Labs

Embedded C/C++ software for MCU and embedded Linux platforms: RTOS, DSP, Edge AI, and FPGA acceleration.

NetKit Labs

Established NetKit Labs to develop embedded C/C++ software for MCU and embedded Linux platforms.

Website · Repositories · Project guide · Explore by topic

Our work spans bare-metal and Zephyr RTOS firmware on Arm Cortex-M/A, embedded Linux, audio DSP, TinyML inference runtimes, and FPGA-based neural network acceleration. The projects connect embedded software infrastructure with keyword spotting, speech commands, and efficient inference on microcontrollers, MPU hosts, and programmable logic.


Focus Areas

  • Embedded Software Development (C/C++)
  • Arm Cortex-M/A Firmware
  • Bare-Metal & Zephyr RTOS Systems
  • Embedded Linux
  • Audio DSP & Keyword Spotting
  • Edge AI / TinyML
  • Neural Network Inference Runtimes
  • FPGA AI Accelerators
  • Hardware/Software Co-Design

Explore by Topic

Area Repository topics
Embedded C/C++ C++ · C23 · Embedded systems
Arm firmware and bare metal Arm Cortex-M · Arm Cortex-A · Firmware · Bare metal
RTOS and real-time systems Zephyr · RTOS · Real-time
Embedded Linux and MPUs Embedded Linux · MPUs
Audio and speech Audio processing · Keyword spotting · Speech commands
Edge AI and inference Edge AI · TinyML · Inference · Neural networks
Memory and containers Memory management · Lock-free utilities · Containers · Static allocation
FPGA and hardware acceleration FPGA · SystemVerilog · NPU · Systolic arrays · Zynq

Featured Projects

KWSKit — Real-time Keyword Spotting with Zephyr

Built a C++20 keyword-spotting application for the Arduino Nano 33 BLE Sense (nRF52840 / Arm Cortex-M4F), using Zephyr RTOS, CMSIS-DSP features, and int8 TensorFlow Lite Micro inference. Continuous 16 kHz microphone audio drives voice-triggered LED control.

Repository: NetKit-Labs/kwskit

Highlights include:

  • Separate thread contexts for PDM capture, audio processing, keyword control, and telemetry
  • Fixed application buffers, thread stacks, and a 64 KiB inference arena
  • Nonblocking score delivery, bounded audio batches, and stale-result rejection
  • Unit and regression tests, firmware CI, and recorded hardware validation
  • Spoken-keyword operation and physical LED toggling verified on the Nano

NetKit — Neural Network Inference Runtime for MCU and Embedded Linux

NetKit is a C++26 inference runtime with C++ and C23 APIs for MCU and embedded Linux targets. Float32 and INT8 paths support resource-constrained deployment, with optimized backends including CMSIS-NN, ESP-NN, NMSIS-NN, and XNNPACK.

Repository: NetKit-Labs/netkit

Highlights include:

  • C++ and C APIs over a shared runtime
  • Float32 and INT8 quantized inference
  • Explicit memory planning for embedded deployment
  • Optimized kernels for Arm, Espressif, RISC-V, and host CPUs
  • Peer benchmarks against established inference runtimes

MemKit — Embedded Container Library for MCU and MPU Environments

MemKit is an embedded C++26 container library with C++ and C23 APIs over shared implementations, designed for bare-metal MCUs, RTOS firmware, and embedded Linux MPUs.

Repository: NetKit-Labs/memkit

Features include:

  • Ring buffers, maps, pools, and other embedded containers
  • C++ lock-free queues and double buffering for task/ISR handoff
  • Static and arena storage for MCU firmware
  • Heap and virtual-memory arena backing for MPU hosts
  • C and C++ APIs over shared container cores

NPUKit — FPGA Neural Network Accelerator

NPUKit is a SystemVerilog INT8 neural network accelerator for the PYNQ-Z2 (AMD-Xilinx Zynq-7020). An 8×8 output-stationary systolic array performs matrix multiplication, with AXI control, DMA tile transfers, and transformer operations split between FPGA fabric and Python host software. Speech-command experiments explore embedded workloads on top of the accelerator.

Repository: NetKit-Labs/npukit

Highlights include:

  • 8×8 INT8 systolic GEMM array
  • AXI4-Lite control and AXI DMA tile I/O
  • On-fabric residual, GELU, RMSNorm, and Softmax operations
  • Python host software for board control and inference
  • Hardware/software co-design with speech-command workloads

Technologies

Languages

  • C
  • C++
  • SystemVerilog
  • Python

Platforms

  • Arm Cortex-M
  • Arm Cortex-A
  • Zephyr RTOS
  • Embedded Linux
  • AMD-Xilinx Zynq SoCs
  • FPGA

Domains

  • Embedded Systems
  • Audio DSP
  • Keyword Spotting & Speech Commands
  • Edge AI / TinyML
  • Neural Network Acceleration

Connect

James Lavrenz

Embedded Software Engineer | C/C++ | Embedded Linux | RTOS | Arm Cortex-M/A | Edge AI

Website · GitHub · LinkedIn

For project questions and bug reports, use the issue tracker in the relevant repository: KWSKit, NetKit, MemKit, or NPUKit.

Pinned Loading

  1. kwskit kwskit Public

    Real-time keyword spotting on Arduino Nano 33 BLE Sense (nRF52840 / Arm Cortex-M4F) using Zephyr RTOS, C++20, CMSIS-DSP, and int8 TensorFlow Lite Micro. Continuous 16 kHz audio and voice-triggered …

    C++ 1

  2. netkit netkit Public

    Embedded-first C++26/C23 neural inference: float32+int8 on MCU/MPU/CPU. CMSIS-NN · ESP-NN · NMSIS-NN · XNNPACK. Peer-benched vs TFLM, microTVM, TF Lite, ONNX Runtime (Arm · Espressif · RISC-V · App…

    C++ 4

  3. memkit memkit Public

    Embedded C++26 container library with C++ and C23 APIs for bare-metal MCUs, RTOS firmware, and embedded Linux MPUs. Ring buffers, lock-free queues, maps, and pools; static/arena storage on MCU, hea…

    C++ 56 8

  4. npukit npukit Public

    SystemVerilog FPGA NPU on PYNQ-Z2 (Zynq-7020): 8×8 int8 output-stationary systolic GEMM + transformer glue. MNIST for fabric bring-up; Google Speech Commands robot commands as end-to-end embedded app.

    Python 1

Repositories

Showing 6 of 6 repositories

People

This organization has no public members. You must be a member to see who’s a part of this organization.

Top languages

Loading…

Most used topics

Loading…