Skip to content

Tag Archives: C++

Logovod – macro-free allocation-free user-configurable logger front-end for C++

1. Features logovod features Three styles of use — with functions, ostream left shifts, format string Automatic space insertion of functional style Automatic printing of standard containers, tuples, variants, optional Compile or run-time priority levels Compile or run-time sinks Constrained message length Support for wide-char streams Priority levels according to RFC-5424 section-6.2.1

is_constexpr – a template to test if a function is constexpr

C++ allows declaring functions as constexpr. Such functions could be evaluated at compile time and used, for example in if constexpr(...). However, a non-constexpr function in this context is not allowed. So, if we want to write a template, accepting a function and using it in either if constexpr(...) or old plain if(...) we need […]

COJSON library for Arduino

COJSON library is also available as Arduino Studio .ZIP library: cojson.zip.

COJSON Code Generator

cojson v.2 offers an easy start option by using C++ code automatically generated from a JSON sample the user needs to parse or to write. To use this option just open codegen page, load or copy-&-paste your JSON and copy-&-paste or save the generated C++ code. And then build your application with cojson sources .

Enabling C++ for PSoC projects

PSoC — Programmable System on Chip - is an ARM Cortex based family of MCUs (wiki) by Cypress Semiconductor. Cypress offers developers a dedicated IDE - PSoC Creator. Unfortunately, PSoC Creator, (as of version 4.2) does not support C++, despite the underlying GGC Toolchain (arm-none-eabi-gcc-5.4) has C++ support at descent level. PSoC Creator has an […]

Building OpenSplice DDS for LinkIt Smart 7688 (and other OpenWRT on MIPS)

This post describes how to build OpenSplice DDS for LinkIt Smart 7688 and other OpenWRT targets

USB++ a C++14 template library for handy descriptor definition

Overview USB++ (usbplusplus) is a C++14 template library that gives the user a simple and error-prone way for defining USB descriptors, suitable for embedded projects.

μcuREST Tutorial

Getting Started With μcuREST you can implement REST services and/or a web application for communication with your embedded application. First you’ll need to decide which resources (variables or functions of your application) you wish to expose via HTTP and assign URI to those resources. Then define a μcuRESTresource map, binding URI names to the resources. […]

μcuREST – an application server for constrained platforms

Introduction μcuREST (micurest) is a C++11 library for implementing REST services on constrained platforms, such as bare metal applications on low-end MCUs. The library is platform-agnostic, zero-allocation, and has almost no external dependencies. It allows mapping hierarchically organized URIs to C/C++ variables, constants and methods, and exposing the URIs via HTTP protocol.

USBUART

USBUART is a cross-platform libusb-based library for reading/wring data via USB-UART adapters with Android support. It implements a relay from endpoints of a USB-UART converter to a pair of I/O resources, either appointed by given file descriptors, or created inside the library with pipe(2). User application may then use standard I/O operations for reading and […]