This is your work, valued

New Zealand

Geoffrey Hunter

Elite
@gbmhunter

Passionate owner behind the embedded engineering blog mbedded.ninja, NinjaTerm, NinjaCalc and other tools.

CppLinuxSerial. Serial port library written in C++.

429

MFixedPoint. MFixedPoint is a header-only fixed-point C++ library suitable for fast arithmetic operations on systems which don't have a FPU (e.g. embedded systems).. Suitable for performing computationally intensive operations on a computing platform that does not have a floating-point unit (like most smaller embedded systems, such as Cortex-M3, CortexM0, ATmega, PSoC 5, PSoC 5 LP, PSoC 4, Arduino platforms e.t.c). Common applications include BLDC motor control and image processing. Best performance on a 32-bit or higher architecture (although 8-bit architectures should still be fine).

176

AltiumScriptCentral. A collection of useful Altium scripts written in the Visual Basic scripting language.

129

NinjaTerm. A serial port terminal that's got your back.

114

blog. The repo backing the blog.mbedded.ninja website.

45

SerialFiller. Like a serial killer, but friendlier. A C++ serial publish/subscribe based communication protocol.

40

NinjaCalc. An embedded engineering calculator toolbox for doing calculations in a breeze.

39

FunctionPointerStateMachineExample. C

35

MPid. A light-weight, fast PID library designed for use on embedded systems (but can also run on any machine which has a G++ compiler).

20

CppUtils. A library with a range of utility classes and methods for jump starting C++ applications.

18

LinuxCanBus. C++

13

MRingBuff. A C++ FIFO buffer framework designed for embedded applications.

11

NinjaHSM. A C++ hierarchal state machine framework tailored for embedded devices.

11

Uart-FreeRtos-C. A FreeRTOS task for controlling a UART on an embedded platform. Designed for use with a PSoC microcontroller.

10

MOsal. An operating system abstraction layer for embedded systems.

10

MToolkit. A collection of code modules to help with your embedded design!

8

Pid-C. Reusable PID controller that supports multiple control loops.

7

ParkTransform-Cpp. Library for performing the Park transformation, a mathematical transformation commonly used for BLDC motor control. Can be used with the fixed point library Cpp-FixedPoint, for ultra fast computations.

6

Altium-Bom-Template.

6

MString. A C++ string object specifically designed for embedded applications.

6

ZephyrCppToolkit. A collection of useful utility features to supercharge your C++ Zephyr firmware.

6

ClarkTransform-Cpp. Library for performing the Clark transformation, a mathematical transformation commonly used for BLDC motor control. Can be used with the fixed point library Cpp-FixedPoint, for ultra fast computations.

6

CppTemplate. A template repository to quick-start C++ development.

5

MUnitTest. A microcontroller-friendly C++ unit test module specifically designed for embedded applications.

5

MHal. A C++ hardware abstraction layer for embedded systems (such as microcontrollers).

5

RingBuff-C. A C ring buffer designed for embedded applications.

4

CsvCpp. C++ character-separated value (CSV) file reader and writer.

4

blog-cpp-callbacks. A repo with examples of implementing C++ callbacks on embedded devices.

4

CppBuildSystemReview. CMake

4

SignalProcessing-DotNet-Cs. A signal processing library written in C# for the .NET framework.

3

LocalExtrema-C. A portable, microcontroller-geared mathematical library for finding local extrema (maxima and minima).

3

c-inheritance-example. An example showing how to implement inheritance in C.

3

MIOStream. A microcontroller friendly C++ IO stream object specifically designed for embedded applications.

3

MCallbacks. A type-independent method-capable callback and event library for C++.

3

Sauron-Cpp. A portable, microcontroller-geared unit test, online test, and metric (benchmarking) library. It keeps a watchful eye on things...

2

MSmartPtr. A C++ smart pointer specifically designed for embedded applications.

2

MAssert. A microcontroller-friendly C++ assert() for embedded applications.

2

MList. A microcontroller-friendly doubly-linked list container.

2

MClide. A command-line style communication interface designed to make it easy to send messages and data between two micro-controllers, a microcontroller and computer, or two computers, via a serial interface that supports ASCII characters (e.g. UART, I2C, SPI).

2

eng-calcs-js. Engineering calculators built with Javascript, and designed to be viewed with a browser (used on www.mbedded.ninja).

2

MLinInterp. A light-weight, fast linear interpolation library designed for use on embedded systems (but can also run on any machine which has a G++ compiler).

2

Logger-Cpp. A C++ library for adding easy and powerful message logging capabilities.

2

MLedController. C++

2

TemplateCodeFiles. Template (skeleton) code files for a variety of languages.

2

Vector-C. A vector container (similar to C++'s std::vector) for C programming.

2

designing-hal-in-cpp. C++

2

C-FreeRTOS-PSoC-Cli. Implements the behaviour of comms commands, sends commands via queues to other tasks. Talks to the FreeRTOS CLI (FreeRTOS_CLI.c).

2

blog-etl-examples. C++ Embedded Template Library (ETL) examples for the mbedded.ninja blog.

1

kicad-automation-scripts. A bunch of scripts to automate KiCad processes

1

zephyr-examples. Zephyr examples that are used on the mbedded.ninja blog.

1

Lights-FreeRTOS-C. A light controller library designed to control LED's and other lights on an embedded platform running FreeRTOS.

1

candy-calc. Framework for creating powerful and beautiful client-side Javascript calculators (used on www.mbedded.ninja).

1

LinuxSetup. Shell

1

YoctoMetaExample. BitBake

1

MSsd1306. An open-source, portable, embedded driver for the Solomon SSD1306 IC, a 128x64 OLED controller.

1

AdventOfCode2019. Rust

1

MChrono. C++

1