BASEplatform Support for Express Logic’s X-WARE IoT PLATFORM

BASEplatform logo.

We announced a few weeks ago support for the Express Logic ThreadX RTOS as well as the X-WARE IoT PLATFORM™ within our very own BASEplatform™. This article goes over some of the advantages of using JBLopen’s BASEplatform Board Support Packages (BSPs) and drivers along with Express Logic’s solution. What Is the BASEplatform The BASEplatform is … Read more

BASEplatform Bring-Up on the Toradex Colibri iMX7

Close-up view of Toradex Colibri iMX7 in evaluation board.

This article will go over some aspects of the early bring-up experience using the BASEplatform™ on the Toradex Colibri iMX7 System on Module (SoM). It will also cover features and advantages of the Colibri SoM for embedded developers interested in using an RTOS or a bare-metal environment on the NXP i.MX7 SoC. The BASEplatform is … Read more

Estimating Worst Case Interrupt Latency at Runtime

Histogram of interrupt latency distribution with pase fail sections for demonstration.

This article shows a simple way of estimating worst case interrupt latency at runtime which can be implemented on most MCUs and RTOSes or even bare-metal. All that is needed is a hardware timer that can generate an interrupt after an arbitrary time delay. The technique is also rather non-intrusive, making it usable all the way to production without significantly affecting the application’s performance.

BASEplatform in Depth: The I/O API

BASEplatform logo.

In the last article about our recently launched BASEplatform product, we gave an overview of the various modules that can be part of the BASEplatform. In this article we go in a little more detail about an important aspect of any embedded software product, the API. In this case, the I/O API since it’s one … Read more

BASEplatform in Depth: The Modules

Diagram of the core modules of the BASEplatform cross platform SDK.

Two weeks ago, we launched our first embedded software product, BASEplatform. This article is the first of a series where we go into more details about the features and advantages of the BASEplatform. BASEplatform is designed to bring application developers all the necessary low-level components such as startup code, drivers, BSP, RTOS integration as well … Read more

Introducing BASEplatform

JBLopen BASEplatform introduction logo.

We are proud to announce that we are jumping in the embedded software component market with the introduction of BASEplatform™. Tackling the fundamentals, BASEplatform is a collection of low-level interface modules, drivers, and board support packages. Designed from the ground up to provide the foundation of a successful embedded software design. Whether for a bare-metal project … Read more

Zynq-7000 Connectivity Using the uC/OS BSP

Close up view of the Digilent Zybo development board showing the Xilinx Zynq-7000 SoC.

In two previous articles, I have looked at using Micrium’s uC/OS RTOS on the Xilinx Zynq-7000. I only covered kernel and storage. This time, I will be exploring some connectivity options in combination with the Digilent Zybo. Namely, using Micrium’s USB device solution and HTTP server through the Zybo’s Ethernet port. This is also a perfect opportunity to try the new and improved release of Vivado 2017.1.

The plan is to use the Zybo on-board SD Card to hold the html files for the HTTP server. To make it more interesting, instead of just copying the files using a PC, I’ll turn the Zybo into a USB mass storage device to access the SD Card.

Digilent ZYBO development board with the Xilinx Zynq-7000 system on chip and FPGA.
Figure 1 – Digilent ZYBO

Read more

i.MX7D M4 Bare-Metal Bring-up and Benchmark

Close up shot of the NXP i.MX7 Sabre development board showing the SoC BGA chip.

Following up on the last piece about the NXP i.MX 7, this article looks at the ARM Cortex-M4 companion of the Cortex-A7 present in the i.MX 7. Or to put it another way, a Kinetis-on-chip since it’s very similar to a high-end Cortex-M4 based Kinetis. This article summarizes my experience writing a brand new bare … Read more

i.MX7D Sabre Bare-Metal Bring-up and Benchmark

Close up shot of the NXP i.MX7 Sabre development board showing the SoC BGA chip.

One of our specialties at JBLopen is board bring-up, either for bare metal or various commercial and open source RTOSes. Despite the number of different platforms, CPU architectures and RTOSes out there, low level bring-up, BSP and driver development are rarely discussed in blogs and articles on the web. The same can be said about … Read more

Improving Interrupt Latency on the ARM Cortex-A9

Interrupt latency distribution for a Cortex-A9 with cold cache.

Continuing from the last post, this article explores features specific to early members of the ARM Cortex-A family such as the Cortex-A9 which can help reduce interrupt latency. Namely the L2 cache and TLB lockdown features found in those processors. It’s important to note that those two features are not available in more recent 32 and 64 bits ARM processors such as the Cortex-A7. Newer cores have a simpler TLB, and most often than not an integrated L2 cache instead of the external L2 found on the A9. However, the Cortex-A9 is still a popular core, found on the Xilinx Zynq-7000 and NXP i.MX 6 SoCs to name a few.

Read more