Paasmer_platform_sdk

Build Your IoT Solution using PAASMER SDK

ManagementTeamMouli1

Srinidhi Murthy

An IOT device is a hardware that connects with various sensors in the enterprises or industries, collects data, preprocess, send them to cloud hosted IOT platform or an IOT application for further analysis and interpretation to present them for decision making or feed them for process efficiency and production improvement. The IOT devices should be developed with the support for IOT communication standards to communicate with different kinds of sensors in the industry and IOT devices should be communicating with each other.

An industry who wants to implement the IOT solution in their company may need to develop different kinds of IOT devices to collect data from various sensors from various locations. It is a time consuming for any IOT solution provider or IOT device developers to develop a new IOT device/solution quickly with support for various kinds of connectivity standards from the scratch.

Once the devices are developed and deployed, the IOT solution should provide a management console to view their devices, the sensors connected to devices and the data collected from them in an easily understandable format. The user who has the authority to manage the IOT devices to view the data and control the devices should be provided with easy to use user interfaces in web UI or smartphone Apps to control the devices. Developing such a management console from the scratch is time-consuming.

An IOT development platform with software development kits to provide APIs to develop IOT devices using commonly used open source IOT hardware can enable IOT solution developers, IOT device developers, and IOT consultants to quickly develop and implement IOT solutions with different kinds of IOT devices.

The IOT platform can also provide a management console to manage all the IOT devices, sensors and their data presented in a user editable formats with control options. The platform can be hosted in in-premises and(or) in the cloud and can connect with the various IOT applications analytical and management applications. This can enable developers to develop value-added IOT solutions quickly.

The software development kits provided in IOT development platform can also provide APIs to quickly develop security layer of IOT solution like TOR and Blockchain.

PAASMER SDK
It enables you to do Design, Connect and Analyze your data using PAASMER’s IOT platform.

Design:
PAASMER’s SDK allows you to connect any sensors to existing IOT boards in the market like Raspberry Pi, Node MCU, and many other IOT boards. The PAASMER platform is hardware agnostic. The trial build will provide support for connecting sensors to RPi and Node MCU and supports languages like C and Python.

Connect:
PAASMER SDK enables easy connectivity of your IOT devices to PAASMER cloud. The SDK allows communication of all the IOT devices with the PAASMER cloud. It works with all the popular platforms and supports multiple communication protocols. The trial version will support the Wi-Fi method of communication using MQTT protocol and RESTFUL APIs. The SDK allows managing all the devices connected to the PAASMER platform.

Analyze:
The PAASMER Developer Login enables the users to Analyze the data that is being sent from the devices and draw a meaningful conclusion out of it. There is also an option for Manual control of sensors based on inputs received.

Paasmer_sdk_platform

Overview of PAASMER IOT platform

SDK:
The PAASMER SDK for Embedded C, Python and ESP Open RTOS is a collection of source files that enables you to connect to the PAASMER IOT Platform. It includes the transport client for MQTT with TLS support. It is distributed in source form and intended to be built into customer firmware along with application code, other libraries, and RTOS.

Features:
The SDK’s simplifies access to the Pub/Sub functionality of the PAASMER IOT broker via MQTT. The SDK has been tested to work on the Raspberry Pi 3 running Raspbian Jessie and NodeMCU / Adafruit Huzzah. Support for Other SBC’s running any flavors of Linux would be available shortly. The SBC-SDK provides functionality to create and maintain a mutually authenticated TLS connection over which it runs MQTT. This connection is used for any further publish operations and allow for subscribing to MQTT topics which will call a configurable callback function when these topics are received. More information is available about the SDK’s at https://github.com/PAASMERIOT/

Developer Login:
The PAASMER Developer Login provides the ability for the User to register, Login, View devices, sensor data and the ability to send control messages to the Edge hardware.

Features:
The PAASMER developer Login is available at http://developers.paasmer.co. Here the user can register for the free trial and upon verification of the credentials is allowed to Login.

After login, the user is directed to the various available SDK’s that he can download and edit the same to enable his devices to be connected to the PAASMER IOT platform.

Once the SDK’s are downloaded onto the devices and his credentials entered and the program is running, the device is connected the PAASMER IOT platform and starts sending sensor information.

This sensor information is available on the PAASMER Developer Login for viewing and base on the sensor information the User can take actions using the control feeds to control actuators.

raspberry-pi_connect to Paasmer IoT Platform copy-min

How to Connect Raspberry Pi 3 to the PAASMER IoT Platform

ManagementTeamMouli1

Srinidhi Murthy

In this blog series we look at how to connect a Raspberry PI 3 to the PAASMER IoT Platform.

The PAASMER IoT Platform makes it simple for Internet of Things companies to build and launch IoT-enabled hardware. PAASMER currently provides an SDK which can be installed on the hardware.

Modifying a few lines of code to provide the correct credentials and sensor information, it is ready to be connected to the PAASMER IoT Platform. The sensor data is then available on the PAASMER Developer Login, which can be utilized and actions taken by using the control fields to control various other sensors connected to the Hardware.

A pre-requisite for using the SBC-SDK is available of the Raspberry Pi 3 hardware running Raspbian Jessie OS. More hardware and software support would be added shortly.

An account created in http://developers.paasmer.co allows for a 30 day trial period to explore the PAASMER IoT platform. After creating and activating the account, the SDK for the appropriate hardware can be downloaded.

Given below are the detailed steps to be followed after downloading the SBC-SDK.

PAASMER IoT SDK for Single Board Computers Running Linux

Overview

The PAASMER SDK for Single Board Computers (SBC) like Raspberry-PI, Intel Edison, Beagle Bone is a collection of source files that enables you to connect to the PAASMER IoT Platform. It includes the transport client for MQTT with TLS support. It is distributed in source form and intended to be built into customer firmware along with application code, other libraries, and RTOS.

Features

The SBC-SDK simplifies access to the Pub/Sub functionality of the PAASMER IoT broker via MQTT. The SDK has been tested to work on the Raspberry Pi 3 running Raspbian Jessie. Support for Other SBC’s running any flavors of Linux would be available shortly.

MQTT Connection

The SBC-SDK provides functionality to create and maintain a mutually authenticated TLS connection over which it runs MQTT. This connection is used for any further publish operations and allow for subscribing to MQTT topics which will call a configurable callback function when these topics are received.

Pre-Requisites

Registration on the portal http://developers.paasmer.co is necessary to connect the devices to the PAASMER IoT Platform.The SDK has been tested on the Raspberry PI 3 with Raspbian Jessie (https://downloads.raspberrypi.org/raspbian_latest)

Installation

  • Download the SDK or clone it using the command below.
    • $ git clone github.com/PaasmerIoT/SBC-SDK.git
    • $ cd SBC-SDK
  • To connect the device to Paasmer IoT Platform, the following steps need to be performed.
    • $ cd external_libs/mbedTLS/
    • $ make
    • $ cd ../../
    • $ sudo ./install.sh
  • Upon successful completion of the above command, the following commands need to be executed.
    • $ sudo su
    • $ source ~/.bashrc
    • $ PAASMER
    • $ sed -i ‘s/alias PAASMER/#alias PAASMER/g’ ~/.bashrc
    • $ exit
  • Go to the directory below.
    • $ cd samples/linux/subscribe_publish_sample/
  • Edit the config.h file to include the username(Email), device name, feed names and GPIO pin details.
    #define UserName "Email Address" //your user name used in developer.paasmer.co for registration
    #define DeviceName "" //your device name
    #define feedname1 "feed1" //feed name used for display in the developer.paasmer.co
    #define sensorpin1 gpio-pin-no-for-sensor-1 //modify with the pin number which you connected the sensor, eg 6 or 7 or 22
    #define feedname2 "feed2" //feed name used for display in the developer.paasmer.co
    #define sensorpin2 gpio-pin-no-for-sensor-2 //modify with the pin number which you connected the sensor, eg 6 or 7 or 22
    #define feedname3 "feed3" //feed name used for display in the developer.paasmer.co
    #define sensorpin3 gpio-pin-no-for-sensor-3 //modify with the pin number which you connected the sensor, eg 6 or 7 or 22
    #define feedname4 "feed4" //feed name used for display in the developer.paasmer.co
    #define sensorpin4 gpio-pin-no-for-sensor-4 //modify with the pin number which you connected the sensor, eg 6 or 7 or 22
    #define controlfeedname1 "controlfeed1" //feed name used for display in the developer.paasmer.co
    #define controlpin1 3 //modify with the pin number which you connected the control device (eg.: motor)
    #define controlfeedname2 "controlfeed2" //feed name used for display in the developer.paasmer.co
    #define controlpin2 4 //modify with the pin number which you connected the control device (eg.: fan)
    #define timePeriod 15000 //change the time delay as you required for sending sensor values to paasmer cloud
  • Compile the code and generate the output file.
    • $ sudo make
  • Run the code using the command below.
    • $ sudo ./subscribe_publish_sample
  • The device would now be connected to the Paasmer IoT Platform and publishing sensor values are specified intervals.

Support

The support forum is hosted on the GitHub, issues can be identified by users and the Team from Paasmer would be taking up requests and resolving them. You could also send a mail to support@paasmer.co with the issue details for a quick resolution.