Arduino and the STL library (C++)

So, you are using Arduino and you wonder if you can use the Cpp STL library in your code. The good news is: yes that’s possible! Even if some feature will still be lacking, or some others will be limited, you will be able to use things like std::vector and std::string in your Arduino programs. … Read more

Arduino Protothreads [Tutorial]

Arduino protothreads, when to use them, how to use them, and why? In this tutorial I’ll show you, step by step, how to use protothreads in your Arduino programs. First I’ll give you a template that you can use for any protothread you create. Then you’ll see more complex examples and how to use multiple … Read more

Arduino Interrupts Tutorial

What are Arduino Interrupts? How to use them? What should you know about them? In this Arduino Interrupts tutorial I’ll show you an example of when you can use interrupts and how to handle them. I’ll also give you a list of important points you should pay attention to, because, as you’ll see, interrupts are … Read more

Arduino Object Oriented Programming (OOP)

This tutorial is an introduction to Arduino Object Oriented Programming. If you’re already programming using C++ and OOP, and want to start writing Arduino OOP code, you’re in the right place. I’ll show you through some examples how to re-write some of the most common Arduino tutorials using the OOP way. At the end of … Read more

Arduino millis() vs micros()

When using the Arduino library, you have two simple ways of getting the current time since the Arduino board started: millis() and micros(). Those are very useful functions that you need in almost all your programs. For example, they will allow you to write multitasks programs very easily, and thus avoid using the delay() function. … Read more

The Arduino Language in 10 Points

Programming on Arduino is definitely not the same thing as programming on a standard computer. So, what exactly is the Arduino language? It seems like you’re programming in C/C++, but soon you realize that it’s not exactly C/C++. You don’t really know what you can do, and what you can’t do. In this post I’ll … Read more