element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet & Tria Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • About Us
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
IoT: In the Cloud
  • Challenges & Projects
  • Project14
  • IoT: In the Cloud
  • More
  • Cancel
IoT: In the Cloud
Blog Arduino IoT Cloud controlled MKR Robot ARM: Das Blinken LED
  • Blog
  • Forum
  • Documents
  • Events
  • Polls
  • Files
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Join IoT: In the Cloud to participate - click to join for free!
  • Share
  • More
  • Cancel
Group Actions
  • Group RSS
  • More
  • Cancel
Engagement
  • Author Author: jomoenginer
  • Date Created: 22 Mar 2019 8:07 AM Date Created
  • Views 3373 views
  • Likes 10 likes
  • Comments 13 comments
  • mkr_1010
  • arduino iot cloud
  • arduino_iot_cloud
  • arduino mkr 1000
  • iotcloudch
  • robot arm
  • arduinoday2019ch
  • arduino mkr wifi 1010
  • arduino
Related
Recommended

Arduino IoT Cloud controlled MKR Robot ARM: Das Blinken LED

jomoenginer
jomoenginer
22 Mar 2019

IoT: In the Cloud - Arduino IoT Cloud controlled MKR Robot ARM

 

Introduction

 

The Internet of Things is still a hot marketing topic covering everything from Voice Assistants, and Smart Lights, to connected Refrigerators that can order groceries straight from a panel on the door of the frig. There are many predictions that by 2025 there will be something like 21 billion IoT devices chirping on the net.  Considering this, and the increase of the MKR line of dev boards from Arduino, it seems quite appropriate for the folks at Arduino to delve into the Cloud with their Arduino IoT Cloud offering which is Powered by Amazon Web Services (AWS).  Although the IoT Cloud is still in Beta, it does offer some very cool features that take advantage of the MKR devices as well as other connected Arduino devices and Linux based systems such as Raspberry Pi, BeagleBone, and the latest Intel UP boards.

 

Hardware

In this project, a Robot Arm controlled by a MKR1000 and a MKR1010 powered conveyor belt will be used to test the Arduino IoT Cloud features and how it can be used to control these devices in a simulated Manufacturing environment. Also, a MKR Relay Proto Shield, MKR MEM Shield and a MKR2UNO Adapter board along with a Make Wicked Devices Motor Controller board will be used. A Robot ARM make of foam board with 5 servos connected to the Make Motor controller and MKR1000 will be used to simulate a Robot Arm in a manufacturing environment. A conveyor belt will be created to connect to a MKR1010 and MKR Relay Proto Board will be used to move widgets for the Robot Arm.

 

MKR WiFi 1010 - https://www.newark.com/arduino/abx00023/development-board-arm-cortex-m0/dp/71AC0169

MKR1000          - https://www.newark.com/arduino/abx00004/dev-board-32bit-arm-cortex-m0/dp/47AC4164?st=mkr1000

MKR Relay Proto Shield - https://www.newark.com/arduino/tsx00003/relay-proto-shield-mkr-board/dp/47AC6341?st=MKR%20Relay%20Proto%20Shield

MKR2UNO Adapter Board - https://www.newark.com/arduino/tsx00005/eval-expansion-board-uno-shield/dp/47AC6343

MKR MEM Shield - https://www.newark.com/arduino/asx00008/mkr-mem-shield-mkr-development/dp/71AC0214

Make Motor and RC Shield for Arduino v1.1

American Robotic Supply MG-90M Micro Servos

Tower Pro SG92R Micro Servos

Parallax 2-Axis  Joysticks

 

Software

Arduino IoT Cloud - https://www.arduino.cc/en/IoT/HomePage

Arduino Create - https://www.arduino.cc/en/Main/Create

Eclipse MQTT - https://mqtt.org/tag/eclipse

 

 

Related Posts

Arduino IoT Cloud controlled MKR Robot ARM: We have Movement

 

Robot ARM

Robot Arm based on the FoamArmDS design at EasyDS

https://mauriciodgsantos.wixsite.com/easyds/copia-easyfinderds

 

image

 

 

MKR1000, MKR2UNO and Make Motor Controller stack and Joystick control

 

image

 

 

MKR1000 Firmware Update

There could be issues seen connecting the MKR1000 to a WiFi router and thus the IoT Cloud, so before connecting a MKR1000 to the Arduino IoT Cloud, it is best to check the firmware version installed on the board and update it as necessary.

 

For MKR WiFi 1010 Firmware Update, see the following post

MKR WiFi 1010 - Enable BLE Support

 

The instructions for the MKR1000 are from the following:

https://www.arduino.cc/en/Tutorial/FirmwareUpdater

 

 

    1. Downloaded the latest version of the WiFi101 Libraries from:

           https://github.com/arduino-libraries/WiFi101

 

   2. Add the zip file via Add .Zip File... under Sketch -> Include Library

        NOTE: This updates the Wifi101 to 0.15.3

       https://create.arduino.cc/projecthub/nazarenko_a_v/mkr1000-connecting-to-the-wifi-3-steps-d02fed?f=1

 

    3. Under Examples->WiFi101, select, build and load the CheckWiFi101FirmwareVersion Sketch.

        If the result of the Firmware check is NOT PASSED, then proceed with updating the firmware:

       Ex.

WiFi101 firmware check.

  
WiFi101 shield: DETECTED
Firmware version installed: 19.4.4
Latest firmware version available : 19.5.4

  
Check result: NOT PASSED
 - The firmware version on the shield do not match the
  version required by the library, you may experience
  issues or failures.

 

 

    4. Under Examples->WiFi101, select, build and install the FirmwareUpdater sketch

 

image

 

 

    5. From the Arduino IDE Menu, under Tools, select Wifi1010 / WifiNINA Firmware Updater.

 

image

 

    6. Select the MKR1000 serial port connection and then Update Firmware version.

       Version 19.5.4 was selected to match the version shown in the FirmwareChecker but there was a newer version 19.6.1 shown.

 

    7. Click the Update Firmware button to update the firmware.

        When complete and successful, a pop up windows should appear indicating the firmware update completion.

image

 

 

   8. If successful, go back to the Firmware Checker (Step 3) and see if the firmware was updated.

       The result should now show PASSED

WiFi101 firmware check.

  
WiFi101 shield: DETECTED
Firmware version installed: 19.5.4
Latest firmware version available : 19.5.4

  
Check result: PASSED

 

 

    9. From the  Arduino Create IoT Cloud IDE, the device should indicated connection if working properly.

    Monitor output with debug set to 2

[ 10081 ] Connecting to Arduino IoT Cloud...
Compile time: 1553040000

  
[ 12186 ] Connected to Arduino IoT Cloud

 

Arduino Create IoT Cloud

 

If no device has been added to the Device Manager, click on Add New Board to add one.

 

image

 

Or go to the Getting Started Page:

 

image

 

After adding a device it will appear in Device Manager

NOTE: The device will appear if it is connected or not.

image

 

Click on the Checker board Icon in the upper left corner to navigate to get to Arduino IoT Cloud or other options.

image

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Click on Arduino IoT Cloud to add Things.

image

 

Here a MKRLED Thing was created which is use to turn on and off the LED_BUILTIN

NOTE: Currently only a single Thing can be created, I guess since I get the following when trying to add a new Thing

  "No more Things left on your current plan, please remove your existing Thing before creating a new one. Arduino Plans coming soon!"

 

 

Clicking on the defined Thing displays a window showing the Thing's Properties as well as options to add code and edit the thing. A Thing can have multiple Properties.

 

 

 

image

 

Selecting Edit Code will bring up the Arduino Create Editor

Here, a onLEDVAL_Change method was created when the MKRLED Thing was created.  The method is declared in thingProperties.h.

image

 

Click on "GO TO IOT CLOUD" to go back to the Thing.  Clicking on the eyeball Tab of the Thing brings up window to interact with the think.

A Switch that can be turned on and off is used to toggle the MKR1000 LED (6).

 

MKRLED Off

 

image

 

MKR1000 LED_BUILTIN Off

image

 

MKRLED On

image

 

MKR1000 LED_BUILTIN On

 

image

 

Video showing the the MKR1000 LED control from Arduino IoT Cloud

You don't have permission to edit metadata of this video.
Edit media
x
image
Upload Preview
image

  • Sign in to reply

Top Comments

  • jomoenginer
    jomoenginer over 6 years ago in reply to balearicdynamics +3
    My view with the Arduino boards are that they are nice Maker boards or Prototype boards at best. With the partnership between Arduino and ARM and now the extended line of ARM based Arduino boards, they…
  • shabaz
    shabaz over 6 years ago +2
    Hi Jon, Very nice walk-through of the Arduino IoT platform.. I'd not seen this before. I think it will be very popular, if the MKR boards come out-of-the-box ready to use with it. Even if cloud is not…
  • jomoenginer
    jomoenginer over 6 years ago in reply to shabaz +2
    I appreciate the comment. The MKR line of Arduino boards are nice and the foot print allows them to be used in smaller projects similar to the Adafruit Feather or smaller Arduino Tiny boards. I believe…
Parents
  • shabaz
    shabaz over 6 years ago

    Hi Jon,

     

    Very nice walk-through of the Arduino IoT platform.. I'd not seen this before.

    I think it will be very popular, if the MKR boards come out-of-the-box ready to use with it.

    Even if cloud is not required and only on-premise control is desired, the benefits of being able to remotely deploy/edit are compelling. 

    To me it seems there's getting to be little reason to choose the older Arduino boards any more, except cost, but that's relative.. painful if you have to set up stuff for someone using old boards and go back to fix bugs, when you can do it all remotely : )

    I've not used these MKR boards before, but I'm interested now to try one out.

    • Cancel
    • Vote Up +2 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • jomoenginer
    jomoenginer over 6 years ago in reply to shabaz

    I appreciate the comment.  The MKR line of Arduino boards are nice and the foot print allows them to be used in smaller projects similar to the Adafruit Feather or smaller Arduino Tiny boards.  I believe the older boards are still valid especially considering the number of Shields that are available and ease of use.  The Arduino IoT Cloud platform is still under beta and proved to be a bit of challenge and has many restrictions compare to other Cloud type servers, but they are trying.  The do use MQTT in background to control communication between the cloud and board, but I was not able to include my own MQTT broker and only 1 Thing can be connected at a time.  It does support non MKR boards as well as Linux based platforms such as Raspberry Pi, but still only 1 Thing can be connected at a time.

    • Cancel
    • Vote Up +2 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • balearicdynamics
    balearicdynamics over 6 years ago in reply to jomoenginer

    I think that not only the old platforms are already valid but IMHO necessary. While with more complex (no matter powerful) architectures like the Raspberry PI o Beagle Bone family has an OS that gives the possibility to include and coexist a lot of different tasks also concurrently (including very different hardware), the limit of the Arduino – or, more generically, the microcontroller boards – is just that they are limited and in a general view it is not always easy to put together very different kind of hardware: very soon incompatibilities emerges. For example, with the MKR you lose some important features like I2C and SPI protocols, with the Arduino servo library you lose 9 and 10 PWM output and – excluding the Mega 2560 board – with servos PWM becomes almost unreliable, as well as with the WiFI native boards and Bluetooth (MKR family again) the use of the Tx/Rx TTL serial become critical and so on.

    It is not a limit of the popular Arduino boards, and it is almost natural as far as I know; I have experienced limits of this kind generating incompatibility on PSOC 4, 5 and 6BLE by Cypress, PIC microcontroller and many other.

     

    Enrico

    • Cancel
    • Vote Up +1 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • balearicdynamics
    balearicdynamics over 6 years ago in reply to Jan Cumps

    I dig a bit more in this direction and, at least at the moment, they have put a series of very strict limits. The sum of these, excluding the possibility to wow following their examples making something serious – also a toy – maker stuff become very complex and in most of the cases impossible without following compromises.

     

    I tend to think until now that this is a choice of the Arduino platform as for example already four years ago there were other platforms offering the cloud access for free with more and more possibilities. Take a look to Hugo project, with the MediaTek LinkIt ONE (the very first version I was asked to make a project for the launch of the board)

    • Cancel
    • Vote Up +1 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • jomoenginer
    jomoenginer over 6 years ago in reply to Jan Cumps

    i covered the limitation of the Arduino IoT Cloud in my related post

     

    Arduino IoT Cloud controlled MKR Robot ARM: We have Movement

    • Cancel
    • Vote Up +2 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • jomoenginer
    jomoenginer over 6 years ago in reply to balearicdynamics

    balearicdynamics  wrote:

     

    For example, with the MKR you lose some important features like I2C and SPI protocols, with the Arduino servo library you lose 9 and 10 PWM output and –

     

    I was able to configure an i2c Accelerator with an  MKR WiFi 1010 even with it connected to the Ardiono IoT Cloud which uses the crypto chip also on i2c, however you need to be mindful of using the SDA and SCL connections for anything other than i2c.  I had a motor control board that was causing an issue with this when the pin associated with the SDA and SCL signals on the MKR were connected to I just used exteded Arduino headers to not connect those pins.  It should be fine with other i2C devices. 

    • Cancel
    • Vote Up +2 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • Jan Cumps
    Jan Cumps over 6 years ago in reply to jomoenginer

    I had some conflicts in the i2c software. The MKR1010 and wire library don’t work nicely together. Had to insert some tactical init() calls. The radio made the Wire lib stop. The wire lib made the radio stop.

    There are still some rough edges in this new product range.

    • Cancel
    • Vote Up +1 Vote Down
    • Sign in to reply
    • More
    • Cancel
Comment
  • Jan Cumps
    Jan Cumps over 6 years ago in reply to jomoenginer

    I had some conflicts in the i2c software. The MKR1010 and wire library don’t work nicely together. Had to insert some tactical init() calls. The radio made the Wire lib stop. The wire lib made the radio stop.

    There are still some rough edges in this new product range.

    • Cancel
    • Vote Up +1 Vote Down
    • Sign in to reply
    • More
    • Cancel
Children
No Data
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2025 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube