Blog from October, 2015

Happy Halloween from SensorUp!


So our rockstar dev team put together a little Halloween treat for IoT watchers today.

We have a pumpkin lighting up the office for the next few days. Anyone who wants to can change Sensy’s colour via a web page. Click on the colour you want to see, and Sensy glows just for you! We’ve got him livestreamed so you can see. Anywhere in the world, you can now click a colour, and our pumpkin will respond to your every whim in realtime. Click here to try!

Meanwhile, we’re all sitting in the office with a pumpkin that keeps changing colours at will. Which is just like having a ghost in our pumpkin. Highly appropriate for the season!

Sensy’s light is connected to SensorUp’s platform, which in turn is connected to the wide world of the internet. The video is streamed to the same page so that virtual trick-or-treaters can watch the pumpkin respond as they change colours. When you change the colour by clicking the corresponding button, your wishes travel through the internet tubes, through SensorUp’s platform, and then to the pumpkin light. Light changes, video captures, video streams into internet, you see, you’re happy!

SensorUp’s platform is based on the Open Geospatial Consortium’s SensorThings API standard and the OGC/ISO Observations and Measurement data model, the world’s first international standard for IoT sensors and locations. That means the messages and data transmitted through the Internet are all based on open international standards. If you are interested in learning the technical details about Sensy, please read the technical blog.

I think our multi-talented dev team did a pretty good job of carving the pumpkin, don’t you? Happy Halloween!

From a different post, you might have tried to control the colour of Sensy, SensorUp's Internet-connected Pumpkin.  Some of you might say there is nothing new about sending a message to a pumpkin light and change its colour, because you have seen it on Big Bang Theory.

However, what we present here is world's first Internet of Pumpkins enabled by international open standards.  Why open standard IoT?  One of the biggest challenges for today's IoT is the lack of interoperable standards.  Today's IoT systems are a proprietary and fragmented systems using customized APIs, so that it is difficult to integrate these heterogeneous systems to create new applications. An open standard-based system means it is very easy and simple to integrate different systems into a coherent system, so that we can focus on creating innovative applications rather than the daunting details of handling heterogeneous APIs and data formats.

In this technical blog, we are going to explain the underlying interoperable standards allowing you to control Sensy's colour. Figure below shows the system architecture of the Internet of Pumpkins.

Internet of Pumpkin's Open Standard Architecture

 

SensorUp's SensorThings API (STA) is the IoT cloud platform and data exchange platform connecting the different components.  When you click on the change colour buttons on the web page (e.g., red), it sends a HTTP POST request to our OGC SensorThings API server:

POST /v1.0/Datastreams(example_datastream_id)/Observations HTTP/1.1 200 OK
Host: www.example.org
Content-Type: application/json
 
{"result":"red"}

The above request inserted a new data point to the STA cloud.  And because Sensy, our pumpkin, connects to SensorUp STA via the MQTT protocol and subscribes to the colour datastream, whenever the colour is changed, a message will be pushed to Sensy immediately:

MQTT Subscribe /v1.0/Datastreams(example_id)/Observations
 
{
  "result": "pink",
  "resultTime": null,
  "@iot.selfLink": "http://chashuhotpot.sensorup.com/OGCSensorThings/v1.0/Observations(example_observation_id)",
  "@iot.id": example_observation_id,
  "phenomenonTime": "2015-10-29T18:18:10.784Z",
  "FeatureOfInterest@iot.navigationLink": "../Observations(example_observation_id)/FeatureOfInterest",
  "Datastream@iot.navigationLink": "../Observations(example_observation_id)/Datastream"
}

Because the message pushed to Sensy is in the OGC SensorThings API standard, Sensy is able to understand the message and act accordingly.  In this case, Sensy turns red.  (smile)  

In addition to changing colour, we also would like to know what's the most popular colour for Sensy. We use the highchart javascript library, and connect it to SensorThings API via MQTT.  Voilà. Whenever Sensy's colour changed, the bar chart also gets updated.

And yes, it is that simple. The whole implementation is just a few lines of code. All components and codes are reusable for different applications, and that's the benefits for open standards.

For more details of the OGC SensorThings API, SensorUp has prepared a comprehensive developer documentation and sample codes. http://sensorup.com/docs/  If you have any interesting ideas, feel free to contact us!  (smile)  

 

One more thing....

If you really want to scare some of us in the office, try the following bash script.... (Gist also available here)

let i=1
COUNT=100
while [ $COUNT -gt 0 ]; do
	curl --request POST \
     --data '{"result":"blue" }' \
     --header "Content-Type: application/json" \
 http://chashuhotpot.sensorup.com/OGCSensorThings/v1.0/Datastreams%28422139%29/Observations
sleep 0.2
curl --request POST \
     --data '{"result":"green" }' \
     --header "Content-Type: application/json" \
 http://chashuhotpot.sensorup.com/OGCSensorThings/v1.0/Datastreams%28422139%29/Observations
sleep 0.2
curl --request POST \
     --data '{"result":"yellow" }' \
     --header "Content-Type: application/json" \
 http://chashuhotpot.sensorup.com/OGCSensorThings/v1.0/Datastreams%28422139%29/Observations
sleep 0.2
	let COUNT=COUNT-i
done

 

 

Dr. Steve Liang gave an invited talk at the Big Data for Productivity Congress '15 in Halifax, Nova Scotia, Canada.  

Here is the summary:

  • Sensors are mini-computers in the field. Different field represents different challenges (battery, power, network, etc.) As a result, the communication protocols need to choose accordingly.
  • IoT Service interfaces (API) and data models are sweet spots for standardization.
  • Service Enablement represents the potential of IoT.
  • Location always matters!
  • Big IoT data = SUM(small sensor data)
  • How smart is your city? Depends on how fast can you move in the IoT value chain.
  • Stop building silos!

 

Amazon launched it’s IoT service yesterday, causing a stir. The move is rightfully viewed as a Big Player announcing that it is in the IoT space. Hooray! And we expect there will be more big players joining the game in the very near future!


So what does this mean for IoT? Here at SensorUp, we look at this exciting development from the perspective of the OGC SensorThings API standard, and our associated standard-based, geospatial IoT Data Exchange platform.


To connect the two, first of all I’ll note that the OGC SensorThings API (STA) and Amazon’s offering complement each other very nicely!  At SensorUp we can’t wait to integrate AWS IoT into the OGC SensorThings standard. OGC SensorThings is an IoT Data Interoperability standard that uses both MQTT and HTTP REST. Amazon’s offering can be seen as a IoT Message Exchange infrastructure. As such, the STA’s data interoperability complements Amazon’s message exchange. As such, the STA standard-based cloud servers can be built on Amazon’s IoT service, and with the devices and applications it supports. Used on top of Amazon’s IoT service, the STA would provide a modern, scalable, flexible, elegant, and most importantly, interoperable way to access and manage IoT observations and associated location data from heterogeneous data sources.

AWS IoT Overall Architecture

SensorUp’s platform, built on top of the OGC Sensor Web Enabelment  standards (including STA), provides an implementation of the standard that developers and businesses can use to build future-proof and interoperable IoT data platform effortlessly. (Without coding from scratch themselves, which would be a huge undertaking.). Using SensorUp’s platform on top of Amazon’s AWS IoT cloud lets you enjoy the AWS’ scalability/elasticity and SensorUp’s open geospatial interoperability and location-intelligence.  What this means is that our solution can  provide better flexibility. This allows customization based on open standards, without worrying that the solution could become obsolete This permits, for example, building applications that more directly highlight specific information important to current users and future users.


Note that SensorUp’s platform can equally be used without Amazon’s IoT service. Implemented on it’s own, SensorUp provides cloud service as well as the data access, management, and application building mentioned above.


In case you haven’t been deluged with the news, here is a little backgrounder on the Amazon IoT offering:


  • Platform for managing sensor devices, application, and data

  • Data is accessible via the standard protocols MQTT and HTTP

  • Pricing involves no minimums, and is a fee-for-use model, asking $5.00 per million messages in most places

  • Prices apply to both publishing sensor data to AWS and delivering messages from AWS to devices. Although, delivery prices are waived when delivering messages to some AWS services, such as Amazon S3.

  • For their purposes, Amazon defines a message as a 512-byte block of data.

  • The service includes C and javascript SDKs

  • The announcement included examples from BMW, John Deere, and hand sanitizer dispensers

  • Started kits are offered from a number of partners, including Texas Instruments

  • Kits are delivered from amazon.com


One of the most beautiful examples, from Amazon’s perspective, is the dash button. Dash buttons can be placed throughout the home in convenient locations. As you run out of a household product stocked by Amazon and supported by dash buttons, you can simply press the dash button. It will communicate with Amazon to order more laundry detergent (or whatever) for you, straight from Amazon. In the future when sensors are built in to detergent bottles, you won’t even need to push a button to order it from Amazon. The bottle could order it for you!  Exciting, eh?


Five Food-Related IoT Applications

In honour of World Food Day, here’s a list of five beautiful food-related Internet of Things (IoT) use cases! We present these in no particular order, chosen primarily because we think they’re cool :) Bon apetit!


  1. CropX Soil Irrigation Sensors
    http://postscapes.com/smart-irrigation-soil-moisture-sensors-cropx 

    Poke CropX’s sensors directly into the ground in your irrigated field, and track moisture levels. The technology allows farmers to track irrigation in order to optimize watering. Ultimately, this allows them to grow food using less water. 

    The sophisticated data behind CropX takes into account soil types, creating an individualized map showing where to place sensors. When initially placed, sensors self-calibrate, comparing to predicted rates of soil drying. The system packages a complex process in a simple and accessible way. Simplifying the process of including technology in irrigation decisions is an important step in increasing uptake.

     

  2. Smartphone Assisted Certification

    http://www.iicd.org/articles/smart-phones-assist-farmers-in-zambia-in-faster-organic-certification 

    In Zambia, farmers now have an easier time becoming certified as organic producers with the help of a smartphone-assisted process. Previously, data was collected in the field on paper, then returned to central offices and entered into electronic systems. One can imagine that this process could be slow, and prone to transcription errors.

    The process was modernized with the use of smartphones, allowing field agents to collect data electronically, entering it directly into their phones (or tablets) while visiting a farm. Streamlining the process allowed information to flow more easily from the farm field to certification, making it easier, and more transparent. The system is also faster, so producers are certified sooner.


  3. John Deere’s Interconnected Farming Systems

    https://datafloq.com/read/john-deere-revolutionizing-farming-big-data/511

    John Deere, farming machinery provider, is linking up their machines, and providing useful data based on these networks. For example, historic and real-time data are combined to provide insight into weather, soil, and crops. The information can be accessed by farmer in the field, via smartphone or tablet. The system can provide answers about the best time and place to plant, plough, and harvest. Productivity and efficiency gains result in more output, with less required input such as energy and water.


  4. Phytech Plant Sensors

    http://postscapes.com/wireless-farming-sensors-phytech

    Phytech’s patented sensors are placed directly on plants. The sensors are delicate enough to be clamped right onto the stem or fruit of the plant. This allows them to measure plant vitals such as stress levels and moisture, and communicate any unmet needs to farmers.

    These sensors have been called fitbits for plants, because of their ability to measure and report health metrics of the organism.


  5.   SensorUp Rocky View Well Water Monitoring Citizen Science

    http://rockyview.geocens.ca/bingmap_browser

     

    Groundwater levels are ciritcal to agriculture, and in Rocky View, Alberta, a rural municipal district with a lot of agriculture happening, citizens are helping monitor groundwater levels.

     

    In an application that combines groundwater monitoring, citizen science, and state-of-the-art IoT, Rocky View Well Water Monitoring is a collaboration between industry, government, researchers, and residents. Residents monitor their own water wells and report depth levels via a web interface.

     

    The interface also allows browsing well water data via a map or graph-based interface, and includes data from government monitored wells. And, this interface happens to be powered by SensorUp :) SensorUp’s open source and standard-based platform underpins the most modern iteration of the monitoring interface, which will be live soon. The platform is based on the OGC SensorThings API.


Image credit: https://upload.wikimedia.org/wikipedia/commons/thumb/f/fa/Ecologically_grown_vegetables.jpg/1280px-Ecologically_grown_vegetables.jpg