Apache NuttX RTOS PMC

It is my great honor to become a PMC (Project Management Committee) member in the Open-Source Apache NuttX RTOS [1]. Thank you for inviting me into this great community and totally amazing project! :-)

NuttX is a real-time operating system (RTOS) with an emphasis on standards compliance and small footprint. Scalable from 8-bit to 64-bit microcontroller environments, the primary governing standards in NuttX are Posix and ANSI standards. Additional standard APIs from Unix and other common RTOS’s (such as VxWorks) are adopted for functionality not available under these standards, or for functionality that is not appropriate for deeply-embedded environments (such as fork()).

[1] https://nuttx.apache.org/

NuttX RTOS is now Apache TLP

My favorite NuttX RTOS [1] that is “Tiny Unix on MCU” has graduated to Apache Top-Level-Project [2], congratulations! :-)

Apache NuttX [1] is a real-time operating system (RTOS) that emphasizes standards compliance and small footprint, usable in all but the tightest micro-controller environments. It runs on 8-bit, 16-bit, 32-bit, and 64-bit microcontrollers across RISC-V, ARM, MIPS, ESP32, AVR, x86, and other architectures with a high degree of standards compliance. NuttX is used to power the Fitbit fitness tracker, as well as satellites, IoT devices, bluetooth headphones, drones, and more.

What I like most in NuttX is the development team / community.. and scalability starting upwards from 8-bit CPU’s. One day I wish porting NuttX to my 8-bit Atari and 16-bit Amiga and Atari ST and push new life to these amazing machines :-)

[1] https://nuttx.apache.org
[2] https://news.apache.org/foundation/entry/the-apache-software-foundation-announces-apache-nuttx-as-a-top-level-project

ZEPHYR RTOS ROX!

If you never heard about Free-and-Open-Source ZEPHYR RTOS [1] (Apache 2.0 licensed) then it will make your day as the best platform out there for your new embedded electronics design :-) It works on anything.. even on Open-Source-Hardware RISC-V CPU [2] :-)

[1] https://zephyrproject.org/
[2] https://riscv.org/

LibSWD-0.7 RELEASE

It is my great pleasure to inform you folks that, almost after four years, I did a new release of LibSWD-0.7 [1], a low-level embedded systems access open framework. Special thanks goes to Andrew Parlane of Carallon Ltd [2] for his much appreciated contributions! Well now I feel like I need to invent some nice small device based on ARM Cortex-M0 CPU :-)

[1] https://github.com/cederom/LibSWD
[2] http://www.carallon.com/

NXP Technology Days 2016

It was fun to take part in NXP Technology Days 2016. Last year fusion of Freescale into NXP looks good, lots of useful solutions and possibilities gathered in one place. Very interesting On-Chip Security Mechanisms for Embedded Systems and Open-Source implementations for i.MX6 CPU family. Let’s hope that (probably upcoming) fusion of NXP into Qualcomm will not affect Open-Source Community in a bad way..

20161004-nxptechdays-tcedro-small

Heimdall on FreeBSD

Heimdall is an Open-Source utility to work with Android devices manufactured by Samsung. It allows to flash firmware components into memory via FastBoot/ODIN+USB. I have created a patch to build this nice tool on FreeBSD OS (QT gui works as well, to build it you need qt-{gui,qmake,uic,moc,rcc,…} packages installed). When patch is included into the project sources and release is done, I will prepare a FreeBSD port for this nice utility which is only missing a memory dump and live boot to be totally perfect :-)

Read More

LibSWD 0.6 release

I am happy to announce a new release of LibSWD-0.6! Most important feature of this release is the standalone Application with an example of Command Line Interface (CLI), FTDI driver and ARM Cortex-M3 Core Debug and Flash support demonstration. Please report issues via Ticket System. Have fun! :-)

OpenOCD and LibSWD integration complete

Patches that integrate LibSWD with OpenOCD has been already sent, so the platform independent Serial Wire Debug in Open-Source becomes a reality! Mr. Gerrit takes care of the source code review part, while Mr. Jenkins takes care of proper binary build for various platforms and operating systems. This is the right moment to make use of developers mailing list for feedback, asking questions, blaming, testing, adding new features and voting to accept the patches, so the code becomes an integral part of the OpenOCD release! :-)

Orange Labs provided R&D environment for initial stages of the research. Warsaw University of Technology made this possible as part of my MSc and PhD thesis. Krzysztof Kajstura designed and provided his generic KT-LINK (FT2232H based) interface to work with. David Brownell first introduced the Transport layer in OpenOCD in 2010 to split Target from JTAG. Simon Qian was working in parallel on his own SWD implementation for a Versaloon interface (as part of intelligent firmware). Øyvind HarboePeter StugeSpencer Oliver, Rodrigo Rosa helped me on GIT usage and OpenOCD internals,  Freddie Chopin helped me a lot with commited patches to match OpenOCD coding standards, Akos Vandra helped me to test functionality as the program was created… and my other friends should be also noted here for their support :-)

Power of the few outweights power of the many! Thank you for your support! :-)

LibSWD 0.5 Released

LibSWD 0.5 is out! It brings mainly the rename of all function prefix due API conflicts with other existing solutions.

Please visit Project Website for more information :-)

LibSWD 0.4 Released

LibSWD 0.4 is out! It brings various bugfixes and improvements, but most of all stable API to be used with OpenOCD and other external applications.

See Project Website for more information :-)

LibSWD on FedCSIS 2012

“LibSWD serial wire debug open framework for low-level embedded systems access” has been presented on FedCSIS 2012 international conference and the paper has been already published by IEEE Xplore Digital Library.

All my publications are listed on Google Scholar.

Serial Wire Debug for ARM

I have started my works on implementing the Serial Wire Debug (kind of JTAG alternative for ARM-Cortex Cores) for Open-Source OpenOCD and UrJTAG utilities. You can watch the progress at:

http://stm32primer2swd.sf.net

Project type: Open
Status: Work in progress…