Sign in

Not a member? | Forgot your Password?

Search blogs

Search tips

Find us on Facebook

Articles by category

See Also


Software Development - Embedded Systems

This is's official blogs section.

Would you like to be notified by email when a new blog entry gets published on


Important Programming Concepts (Even on Embedded Systems) Part I: Idempotence

There are literally hundreds, if not thousands, of subtle concepts that contribute to high quality software design. Many of them are well-known, and can be found in books or the Internet. I’m go...

posted by Jason Sachs on Aug 26 2014 under Software Development | System Design 
Comments (4) |

Project Directory Organization

A recent question on Reddit’s C Programming sub asked what sort of directory structure people use for their projects. Perhaps not unsurprisingly this didn’t elicit a flood of answers ...

posted by Stephen Friederichs on Aug 20 2014 under Tools | Software Development | Project Management 
Comments (1) |

OOKLONE: a cheap RF 433.92MHz OOK frame cloner

Introduction A few weeks ago, I bought a set of cheap wireless outlets and reimplemented the protocol for further inclusion in a domotics platform. I wrote a post about it here: http://www.embeddedr...

posted by Fabien Le Mentec on Aug 12 2014 under Software Development | Hardware Development | Microcontroller 
Comments (5) |

TFT LCD 10 (1024*600)inch driver for lpc 1788

Hi ...every one.,                    i am developing code for 10" TFT LCD..(1024*600)... Need Help for making...

posted by viju28 on Jul 21 2014 under ARM | Software Development | Microcontroller 
Comments (0) |

Reverse engineering wireless wall outlets

Introduction I am improving the domotics framework that I described in a previous article: I want to support wireless wall outlets, allowing me to s...

posted by Fabien Le Mentec on Jul 19 2014 under Software Development | Communications | Microcontroller 
Comments (0) |

Short Circuit Execution vs. Unit Testing

The key to effective communication is to say what you mean and avoid ambiguity.  Words and phrases with multiple meanings can confuse your audience and hinder communication. That’s why so m...

posted by Stephen Friederichs on Jul 7 2014 under Tools | Software Development | Debugging 
Comments (3) |

A wireless door monitor based on the BANO framework

Introduction I have been thinking for a while about a system to monitor the states of my flat and my garage doors from a remote place. Functionnaly, I wanted to monitor the state of my doors from a r...

posted by Fabien Le Mentec on Jun 10 2014 under Software Development | Hardware Development | Microcontroller 
Comments (5) |

Using the C language to program the am335x PRU

Introduction Some weeks ago, I published an article on how we used the PRU to implement a power supply control loop having hard realtime constraints:

posted by Fabien Le Mentec on Jun 7 2014 under Software Development | Linux 
Comments (31) |

How to make a heap profiler

We'll see how to make a heap profiler. Example code for this post makes up heapprof, a working 250-line heap profiler for programs using malloc/free. It works out of the box on Linux (tested on "real...

posted by Yossi Kreinin on May 23 2014 under Tools | Software Development | Tutorials 
Comments (0) |

How to setup an SSL Certificate Authority for your devices

Digital certificates lie at the heart of Public Key Infrastructure (PKI) security technologies such as server SSL authentication and Internet of Things device authentication. However, known Certificat...

posted by Wilfred on May 19 2014 under Software Development | Tutorials 
Comments (0) |

Using the Beaglebone PRU to achieve realtime at low cost

Introduction I work as an engineer in a synchrotron facility. A few weeks ago, I helped the people in charge of the power supply developments to integrate a realtime control algorithm on a prototype ...

posted by Fabien Le Mentec on Apr 25 2014 under ARM | RTOS | Software Development | Linux | Hardware Development 
Comments (4) |

Unit Tests for Embedded Code

  I originate from an electrical engineering background and my first industry experience was in a large, staid defense contractor. Both of these experiences contributed to a significant lack of ...

posted by Stephen Friederichs on Mar 5 2014 under Software Development | Tutorials | Debugging 
Comments (2) |

Bad Hash Functions and Other Stories: Trapped in a Cage of Irresponsibility and Garden Rakes

I was recently using the publish() function in MATLAB to develop some documentation, and I ran into a problem caused by a bad hash function. In a resource-limited embedded system, you aren't likely t...

posted by Jason Sachs on Jan 28 2014 under Software Development | Applied Math 
Comments (0) |

GSM Module Issue

Hi Friends,   The following is the initialization I am doing on fibocom G610 module   String("AT&F0\r"); //Master Reset Delay_62ms();   String("AT\r");  // Basic Comm...

posted by renesas.embed on Jan 21 2014 under Software Development | Communications 
Comments (0) |

Implementing State Machines

State machines are a great way to design software but they can be difficult to implement well.To illustrate this I’ll develop a simple state machine then increase the complexity to demonstrate s...

posted by Stephen Friederichs on Jan 18 2014 under Software Development | Tutorials 
Comments (5) |

Understanding and Preventing Overflow (I Had Too Much to Add Last Night)

Happy Thanksgiving! Maybe the memory of eating too much turkey is fresh in your mind. If so, this would be a good time to talk about overflow. In the world of floating-point arithmetic, overflow is p...

posted by Jason Sachs on Dec 4 2013 under Software Development | Tutorials 
Comments (0) |

Delayed printf for real-time logging

You often debug by adding a few printfs and looking at the logs. In some real-time/low-level contexts though, you don't have time for text formatting. You don't want prints to affect timing too much,...

posted by Yossi Kreinin on Oct 25 2013 under Tools | Software Development | Debugging 
Comments (2) |

Coroutines in one page of C

A coroutine is a function that you can jump back into after returning from it - and it remembers where it was in the code, and all the variables. This is very useful at times. One use is generating a...

posted by Yossi Kreinin on Aug 20 2013 under Software Development | Microprocessor 
Comments (14) |

Code Metrics - SLOC Count

Many programmers will start having flashbacks at the title of this article because it contains the words 'metrics' and 'SLOC'.  Newer programmers are probably wondering what all of the fuss is ab...

posted by Stephen Friederichs on Aug 19 2013 under Tools | Software Development | Project Management 
Comments (0) |

[ C Programming Techniques: integer type optimization ]

I am currently working on a voltage controller running on a ATMEGA328P, ATMEL AVR 8 bits microcontroller. The controller logic is implemented in the main() routine and relies on a periodical timer who...

posted by Fabien Le Mentec on May 22 2013
Comments (1) |
| 1 | | 3 |