Experiencing Arduino MKR1000: lighting

2016-06-10

Today, I am looking at the new Arduino/Genuino MKR1000: a wifi enabled, LiPo battery ready, microcontroller. But before going all-IoT, I will simply test the MKR1000 with LEDs.

Arduino MKR1000

Recently I bought two MKR1000 from Arduino/Genuino and I’ve started to play a bit with them to see their potential. Before talking about the use of it, let me tell you that it was not easy to buy them online! Adafruit and SeeedStudio did not have them in their stock yet, I had to order them from the official Arduino website and pay with a Paypal account (dormant for years) and add my credit card on it…took me an hour to finalize my order! By now, I believe it should be easier to get, at least Adafruit has it in store.

After following the instruction to make the Arduino IDE compatible with the MKR1000 (I think it is now integrated in the new versions of the IDE>1.6.5), you can start working on the board like any other Arduino compatible board. At the beginning, I had systematically to upload twice to the board, the first time will never work…not good. It seems that this issue is also fixed in the new IDE versions. I guess I got the MKR1000 a bit too early or they did not have time to fix everything before releasing it on the market. After struggling a bit, now things are working well.

LED

“Hello World”

When you are starting a new platform you usually start with the “Hello World”, which in the case of Arduino compatible boards is the “LED Blink”. The only difference from the standard Arduino blink code is the pin number since on the MKR1000 the internal LED is on D6 (on the UNO is on D13).


link to gist

LED Strip with Neopixel library

Once you know everything is working you obviously want to go a bit further! I am working on a lamp project and one of the lamp has an LED strip with 77 addressable RGB LEDs. At first I was planning to use the Polulo library since we have been using it in the past with an Arduino Uno but unfortunately it does not work on the MKR1000 (different microcontroller…). I decided to give a test to the Adafruit Neopixel library (you can get it in Arduino IDE library manager).


link to gist

Most of the code is not mine but inspired/copied from the Neopixel library examples.

FastLED

I found out about this library recently, I need to test it…more later…

Next, I will work on the wifi side and connect the MKR1000 to an MQTT server…