Skip to content
View Vanderhell's full-sized avatar

Block or report Vanderhell

Report abuse

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

Report abuse
Vanderhell/README.md

Hi, I'm Vanderhell πŸ‘‹ ko-fi

I build industrial software, embedded firmware tools, and small deterministic engines for systems that have to keep working when conditions are not ideal.

My work focuses on practical C99, C#, and C++ tooling for:

  • embedded firmware
  • industrial software and communication
  • diagnostics and reliability
  • storage and power-loss recovery
  • data acquisition
  • constrained edge systems

Build tools that are small enough to understand, strict enough to trust, and useful outside of demos.

My usual design bias:

  • deterministic behavior
  • clear contracts and failure modes
  • small integration surfaces
  • zero or minimal dependencies
  • caller-owned state where possible
  • bounded memory and execution where practical
  • tests before claims

🌐 Project documentation: vanderhell.github.io


LOX β€” Liquid Oxygen for Embedded Systems

LOX is the technical brand for my embedded and systems projects. The name represents concentrated engineering: compact code, high pressure, predictable behavior, and systems that can be tested instead of guessed.

The LOX family consists of focused libraries rather than one large framework:

  • loxdb β€” deterministic embedded database for constrained systems and microcontrollers
  • loxdb_pro_docs β€” public API documentation for the commercial loxdb_pro modules
  • loxdust β€” verified persistent object storage with recovery operations
  • loxbudget β€” heap-free admission control based on resource budgets
  • loxboot β€” zero-heap bootloader core with A/B slots and rollback-oriented flow
  • loxguard β€” supervised execution boundaries and failure evidence
  • loxalarm β€” deterministic alarm-state core
  • loxseq β€” power-loss-aware step sequencer
  • loxperm β€” permissive and interlock evaluator
  • loxsort β€” constraint-aware deterministic sorting
  • loxc β€” trainable codec for domain-specific text payloads

Embedded C99 projects

  • axiom-one β€” focused deterministic primitives for common embedded problems
  • GrayGyre β€” allocation-free Gray-code data-placement primitive for spreading adjacent indices across logical cells
  • skipspace β€” heap-free traversal and subtree skipping for large implicit constrained search spaces
  • micro-toolkit β€” collection of small, composable embedded C99 libraries
  • micronet β€” LAN-first messaging for embedded nodes and desktop diagnostics
  • uMesh β€” lightweight ESP32 mesh networking over raw 802.11
  • iotspool β€” persistent store-and-forward MQTT queue

Micro toolkit

  • microsh β€” debug shell with history and tab completion
  • microlog β€” multi-backend structured logging
  • microfsm β€” table-driven finite-state machine engine
  • microres β€” retry, backoff, circuit breaker, and rate limiter
  • microconf β€” schema-driven configuration with CRC and flash storage
  • microcbor β€” minimal CBOR encoder and decoder
  • micoring β€” lock-free SPSC ring buffer
  • microtimer β€” one-shot and periodic software timers
  • microbus β€” topic-based event and publish/subscribe bus

Safety, monitoring, and recovery

  • microhealth β€” runtime health monitoring
  • microwdt β€” per-task software watchdog
  • microboot β€” boot and crash-loop recovery manager
  • microassert β€” unified panic system
  • microota β€” OTA update flow with commit and rollback
  • microflash β€” unified flash abstraction
  • panicdump β€” persistent Cortex-M3/M4 crash dumps
  • MCU-Malloc-Tracker β€” deterministic heap diagnostics for bare-metal MCUs
  • nvlog β€” power-loss-safe append log
  • microtest β€” single-header C test framework

Safer embedded C and cryptography

  • defer β€” automatic resource cleanup through DEFER()
  • cguard β€” scope guards and result types for C
  • safemath β€” checked arithmetic and buffer sizing
  • microcrypt β€” SHA-256, HMAC-SHA256, and AES-128 ECB/CBC/GCM
  • microdh β€” minimal X25519 key exchange

Industrial, data, and desktop projects

Industrial communication and IoT

  • IOBusMonitor β€” desktop tool for Modbus TCP/RTU and Siemens S7 PLCs
  • RTULogSuite β€” ESP32 and Windows Modbus RTU logging toolchain
  • Pragotron-Controller β€” minute-impulse controller for a Pragotron stepper clock

Data and file engines

  • num8 β€” O(1) membership engine for eight-digit numbers
  • num8-lup β€” low-bandwidth update propagation protocol
  • IronFamily.FileEngine β€” binary IoT file engines and tooling

.NET

  • MultiGpuHelper β€” scheduling compute workloads across multiple GPUs
  • CrudFramework β€” lightweight CRUD framework for .NET applications

Hardware

  • securebox-hw β€” secure hardware password manager concept

Collaboration

I welcome practical feedback from people working with embedded C, microcontrollers, RTOS or bare-metal firmware, industrial devices, and constrained edge systems.

Useful contributions include:

  • integration on real hardware
  • failure reports with logs and reproducible evidence
  • storage and power-loss validation
  • portability feedback
  • code and API review
  • documentation and example improvements

Pinned Loading

  1. IOBusMonitor IOBusMonitor Public

    Multi-protocol desktop tool for reading, archiving and visualising data from Modbus (TCP / RTU) and Siemens S7 PLCs.

    C# 4 1

  2. uMesh uMesh Public template

    Lightweight open mesh protocol over raw 802.11 for ESP32

    C 6 2

  3. loxdb loxdb Public

    Predictable-memory embedded database for microcontrollers. KV, time-series, and relational engines with WAL recovery. C99, zero dependencies, verified on ESP32-S3.

    C 7 2

  4. loxguard loxguard Public

    Guard Blocks for embedded C: checked execution boundaries, failure events, recovery policy, and local blackbox evidence.

    C 1

  5. IronFamily.FileEngine IronFamily.FileEngine Public

    Internal IoT-focused monorepo for IronFamily binary engines (ICFG, ILOG, IUPD) with .NET/native implementations, deterministic testing, and performance benchmarking.

    C# 1 1

  6. num8 num8 Public

    O(1) membership engine for 8-digit numbers (00000000-99999999). Fixed 12.5 MB bitset file, CRC32-protected header, C99, zero dependencies, MIT.

    C 1 1