• 13 Mar 2017

    Introduction to the Synergy Wi-Fi Framework

    More embedded systems are requiring internet connectivity today than ever before. A number of these systems are looking to connect to the internet through wireless solutions rather than through Ethernet for added flexibility and mobility. Integrating Wi-Fi connectivity into embedded systems is often complicated and requires developers to get support from many disparate vendors such as MCU suppliers, Wi-Fi chipset or module...
    • 4 Mar 2017

    Transitioning to ThreadX: Getting up to speed with TraceX

    In the last several posts, we have been examining how important threads are to a real-time embedded system. Each thread acts as its own semi-independent program that must have its stack properly sized and the right priority to ensure that it gets its share of CPU time. Threads are a key concept and most discussions around real-time design is focused on task behavior and synchronization. In this post, we will examine TraceX...
    • 28 Feb 2017

    Transitioning to ThreadX: Managing Thread Priorities

    So far in this series we have been discussing how to create threads and properly size their stack so that developers are able to efficiently use their RAM while not risking a stack overflow. There is far more to thread management than simply getting the stack size correct. Developers need to understand how to make sure that all their threads will be able to meet their real-time deadlines. In order to accomplish this,...
    • 22 Feb 2017

    Transitioning to ThreadX: How to Size the Stack for a Thread

    In the last post, we discussed how a thread is a semi-independent program and saw how every thread has a Thread Control Block (TCB) associated with it. The TCB allows a developer to configure how a thread will behave and set the stack size that will be associated with the thread. Don’t forget that every thread will have its own private stack in addition to the stack that is used during initialization. So how do...
    • 10 Feb 2017

    Transitioning to ThreadX: Creating Threads

    Having access to a Real-time Operating System (RTOS) provides embedded system developers many advantages such as: Breaking the software up into semi-independent programs Deterministic scheduling Providing pre-emption (highest available priority threads run first) Providing a common tool set to synchronization activities within the software In the bare-metal universe, developers must fight with their system...
    • 1 Feb 2017

    Coming up to Speed with e2 Studio 5.2.1 New Features

    There are few things that are as exciting as getting new tools and gadgets and the recent e 2 Studio 5.2.1 release is no different! The latest release is packed with exciting new features that are designed to help make life easier for developers by simplifying the development process. In this post, we are going to examine the highlights and understand how they can benefit developers. For a quick feature overview, examine...
    • 27 Jan 2017

    Using the new tool to create a Custom Board Support Package Pack

    A few months ago, I wrote a post about how to Create a Custom Board Support Package which demonstrated how to use batch files and some magic to make your very own board support packages. As you may remember, the process was far from straight forward but it got the job down. The latest e 2 studio release now includes an export tool that is built into the development environment and dramatically simplifies creating a custom...
    • 26 Jan 2017

    Switching from e2 Studio to IAR Embedded Workbench® for Renesas Synergy™

    For some time now, the Synergy Platform has had the IAR Embedded Workbench® for Renesas Synergy ™ development environment and compiler available to developers. Engineers that have been using e 2 Studio might be hesitant to convert their e2 projects into IAR Workbench projects. Doesn’t this seem like it is going to be time consuming and require quite a bit of work? As it turns out, converting an e2 Studio...
    • 19 Jan 2017

    Synergy Platform Resources Every Developer needs to Know

    Getting up to speed on a new component, framework or platform can seem like a daunting task. There is so much to learn and so little time that without a little assistance, the process is overwhelming and time consuming. Renesas has pulled together numerous resources and made them available to developers to assist them in getting through the learning curve as quickly as possible. In this post, we will walk the reader through...
    • 19 Jan 2017

    Importing and Exporting Synergy Software Projects

    One benefit that developers using the Renesas Synergy™ Platform get is the ability to leverage existing projects and integrate them into their own products. These projects could come as Synergy Application Projects that are used to become familiar with the platform or custom projects that are developed in-house to speed up development. Importing and exporting Synergy Software projects is slightly different and unique...
    • 13 Jan 2017

    Updating Application Software using a Flashloader

    Embedded systems have become extremely complex as systems have moved from disconnected, simple devices to smart and complex internet connected devices. Development teams need a way to remotely fix bugs and also add new features to their products once it has been deployed into the field. In order perform software updates, developers using the Renesas Synergy™ Platform can use the Synergy Software Flashloader Framework...
    • 13 Jan 2017

    Using Synergy Software Generated Framework Code in Applications

    In the last several posts we have been discussing how to customize the BSP and even how to add modules and frameworks to an application. Adding these components to a project is one thing, but figuring out how to use them can be a completely different animal. In this post, we are going to examine how to use the automatically generated code along with tips and tricks for looking up the API and accessing the documentation...
    • 5 Jan 2017

    Understanding SSP Framework Callbacks

    When diving into the SSP Framework, developers might have noticed that quite a few modules have a property for a callback. Embedded software developers who are new to real-time operating systems and have mostly programmed at the bare-metal level may be...
    • 4 Jan 2017

    Adding Frameworks and Modules to the Synergy Software BSP

    In the last several posts, we have been examining how to create our own customized board support packages and even export them as a pack. Today we are going to examine how to add frameworks and modules to a board support package along with important considerations...
    • 4 Jan 2017

    Configuring the Board Support Package (BSP) using the Synergy Configuration Tool

    In the last post, we discussed the fundamentals associated with creating a base project using the “Custom BSP Creator”. In that post, we saw that there are two scripts associated with creating a custom BSP; the Custom BSP Creator and the Custom...
    • 9 Nov 2016

    Creating a Custom Board Support Package (BSP)

    The Renesas Synergy™ Platform development kits are a great way to get a jump start on developing an embedded application. The development boards are readily available at an affordable cost but a development kit will only get a developer so far....
    • 7 Nov 2016

    An Introduction to the SPI Application Framework

    The SPI bus has always been my favorite communication interface. It’s blindingly fast compared to other communication protocols like UART or IIC and doesn’t have a complex protocol involving addressing, NAKs or ACKs. SPI does use a single...
    • 7 Nov 2016

    Communicating on the IIC bus is now easier than ever

    Just the other day I was searching a component suppliers’ website looking for sensors to integrate in a prototype IoT device. After scrolling through hundreds of devices, I realized that while sensors offered multiple options for interfacing to...
    • 5 Nov 2016

    Jump-start Analog Measurements using the ADC Periodic Application Framework

    In order for our digital embedded systems to interact with the analog world around us, they must convert those analog signals into a digital representation that microcontrollers can understand and process. Analog-to-digital converters (ADC) are used in...
    • 5 Nov 2016

    Saving the Day with the Thread Monitor Framework

    Systems have a tendency to work just perfectly while on the bench but once deployed into the field, it is possible for systems to experience lock-up, single event upsets or have a thread run off into the wild. Developers have often employed the watchdog...
    • 28 Oct 2016

    Simplifying Interrupts with the External IRQ Framework

    Let’s be completely honest, no matter how many years a developer may have developing embedded software, setting up and configuring interrupts is still the most error prone and rarely works on the first try. There is just something about these interrupt...
    • 26 Oct 2016

    The Synergy Platform’s very own Console Framework

    The world lives in a rich universe filled with colors and graphical user interfaces but embedded system developers often still live in terminal applications and command prompts. Console applications have been around for decades but have proven to be extremely...
    • 1 Sep 2016

    “Hello World” using the UART Application Framework

    Serial communications are a critical piece to nearly every embedded system. Whether developers are using UART, SPI, IIC or USB, developers need a way for their systems to communicate with the external world. Traditionally the first communication test...
    • 25 Aug 2016

    Getting started with the Messaging Framework

    In the last post, we started to take a deeper dive into the Renesas Synergy™ Platforms building blocks that contain drivers, Application Frameworks and threads. In a real-time embedded system that uses an RTOS, threads act as mini applications each...
    • 19 Aug 2016

    Drivers, Frameworks and Threads, oh my!

    The road to developing robust connected devices in a timely manner does not start by duplicating efforts and reinventing the wheel. Successful development teams build their applications on proven, ready-made drivers and frameworks. These building blocks...