Zsync HTTP-based File Transfer Utility Transfers Large Files Efficiently

Zsync WorkFlow Diagram

Zsync is an opensource file transfer utility built on top of rsync algorithm. This helps to download partial/differential files over the HTTP protocol. The utility allows downloading only new parts of a file from a centralized location,  where the older version of the file is already within your computer. While rsync is for syncing data from one computer to another,  zsync allows file distribution, where the file hosted in a server using any web server can be distributed to many and downloaded seamlessly. How it works The command-line utility will do all the differential calculations in the client, instead of doing it in the server as in rsync. Server metadata will be created only once and stored as part of the control file. And rest of the operations and decision making will be handled by the client-side application. This will reduce the huge processing needed on the server-side, even when thousands of clients are trying to fetch the file. Server …

Support CNX Software – Donate via PayPal or become a Patron on Patreon

PicoLibC is a Lightweight C library for Embedded Systems

PicolibC

Well-known developer,  Keith Packard has recently announced the launch of “picolibc” through his blog.  Picolibc is a C Library for embedded systems which  is suitable for small micro-controllers, and this standard C library API’s allows to run even in low memory (RAM) devices. This is an upgraded version of “newlib-nano” with few interesting changes which includes replacement of “stdio” lib with ATMEL-specific printf code adopted from avrlibc. As part of this library, Keith also launched picocrt,  which is responsible for initializing memory and invoking various constructors before calling its own C program, the main function. Features picolibc is a revised version of newlibc, without full-fledged stdio lib and uses lightweight stdio lib from avrlibc, which is more suitable to low memory embedded devices. Meson build-system eases the build process of picolibc source tree for various target platform and hardware. Updated the math test suite to use Glibc as a reference The library is BSD licensed, and non-BSD components were removed …

Support CNX Software – Donate via PayPal or become a Patron on Patreon

UpSwift – Manage IoT & Embedded Linux Devices Easily & Quickly

UpSwift

UpSwift offers a GUI based management interface to their customers to update, manage, control & diagnose IoT and embedded devices. The solution also supports OTA updates to any device which is running the Linux operating system including Raspberry Pi board and other Arm SBC’s. Because of the pull-based, client/server architecture, the client-side binary looks for updates in configurable frequent interval and executes the changes and updates. The communication between the client and the server is established over secured REST API’s. By monitoring the applications logs and other device parameters, UpSwift’s Cloud-Smart engine is capable of behaving intelligently by sending email alerts to the administrator. UpSwift Basic WorkFlow Post-registration and package selection with UpSwift Cloud-based dashboard, customers can start adding their devices into UpSwift dashboard. Depending upon the selected plans (number devices connected, features, etc.. will vary depends on the plan chosen), customers will be able to manage their products remotely. And post device registration, you will be able to download/install …

Support CNX Software – Donate via PayPal or become a Patron on Patreon

Real-Time Performance and Health Monitoring Using Netdata

Netdata

Netdata is a real-time open source monitoring tool, that generates hundreds of metrics of performance and health monitoring parameters. Netdata is capable of  visualizing this data with real-time capabilities along with alerts and notifications. This monitoring agent can be installed in all variant of Linux systems, Mac OS, FreeBSD and in Raspberry Pi . Netdata provides options for archiving the metrics to a remote server by using TimeSeries Databases and processing engines, and can be visualized using Grafana or other tools. Architecture Overview Metrics collector Fetches various system &  health monitoring parameters (uptime, CPU load, CPU usage, RAM utilization, disk usage etc.) . Fetches application metrics including web servers, databases, containers, etc… Netdata’s Internal plugins  collect  most of the metrics from standard Linux system parameters such as /proc, /sys and other Linux kernel sources External plugins contains ready to use plugins developed by using other programing language and interfaced to Netdata daemon as stdout communication. Also allows to write custom …

Support CNX Software – Donate via PayPal or become a Patron on Patreon

Qt for MCUs – Qt Announces support for Microcontrollers

QT_TitleImage1

[Update August 24, 2019: Added information about expected release date and license] About Qt for MCUs Qt- The well known opensource toolkit for creating graphical interface announced their new release: Qt for MCUs, targeting MCU’s. The new graphical toolkit will be capable of running on devices without operating system. This may be a game changer in the entire MCU world, since Qt for MCUs allows developers to create fluid user interfaces on cost-effective micro controllers. This means we will be able to see smartphone like GUI’s which are running on low-end  MCU’s with limited resources. With reference to their press release, assuring that Qt-GUI will consume less power to save the battery life. Qt for MCUs Software Stack While developing any applications for MCU,  developers still can use their powerful declarative UI language QML and rich set of ready-made Qt Quick controls.  And the C++ APIs, helps the user interface with C++  based back-end. applications are being rendered by Qt’s …

Support CNX Software – Donate via PayPal or become a Patron on Patreon

mDash Cloud platform for IoT Devices Targets ESP8266/ESP32, STM32, and TI CC3220 Wireless MCUs

mDash firmware

Cesanta (a company based in Dublin, Ireland) recently launched mDash – an IoT cloud platform for administration of various IoT modules. This platform supports Espressif’s modules ESP32 & ESP8266, STM32 (L4,M4) and TI CC3220, and offers a bunch of features which are known to be  challenging tasks in the IoT world. This includes OTA (Over-The-Air) firmware updates, remote configuration and administration, alerts and notifications, remote device control and file management. This can be achieved through 3 programming platforms – Arduino IDE, ESP-IDF and through Mongoose OS. For evaluation and testing purpose mDash offers a simulator that run as a docker container. Refer our previous post, to understand how to get started with Cesanta’s Moongoose OS for ESP8266. Basic WorkFlow mDash Library The company offers reference firmware/library for the defined hardware platforms. This been implements by using secure MQTT for communication, re-connection and initial provisioning with mDash cloud. You can find the library for ESP32 & ESP8266 with a few examples …

Support CNX Software – Donate via PayPal or become a Patron on Patreon