All posts tagged: ibm

Although many interested readers may have a focus on the hardware side of the Internet of Things, there is much that can be done with the data and software side as well. One interesting new and open-source solution is the Quarks framework from IBM.

Quarks is a framework for implementing and deploying edge analytics on a variety of different data streams and devices. Quarks allows you to push data analysis and machine learning out to “edge” devices in Internet-of-Things applications – for example, routers, gateways, sensors, appliances and machines at the edge of the network, rather than centralised servers.

This new system runs locally on gateways and edge devices, analysing their streams of data. This means these devices can perform analytics or make decisions based on the data they receive locally, resulting in faster responsiveness and reduced communications costs.

Quarks enables continuous streaming analytics on gateways and edge devices which can work together with centralised server-side systems to provide efficient and timely analytics across the whole network and the IoT ecosystem, from the centre out to the edge.

Performing some analysis of data at the network edge where this data is generated means that the amount of data that needs to be transmitted back to a central server is reduced, and the amount of data that needs to be stored is reduced. Quarks was developed to provide an SDK and an embeddable runtime for these kinds of streamable analytics applications on lightweight devices. It provides APIs and a lightweight runtime to allow you to build analytics for streaming data at the network-edge devices in IoT applications.

This means that Quarks enables you to process data locally – in a lightweight device such as an embedded computer in a car engine, an Android phone, or a lightweight platform such as a Raspberry Pi, for example, before data is transmitted over the network. Quarks provides modularity and a micro-kernel runtime which is resource-efficient to allow deployments on these kinds of devices with constraints in hardware resources such as memory, including only the components in the build that are needed for that specific device or application.

Quarks addresses requirements for analytics at the edge in IoT use-cases that are not addressed well by central server-based analytics solutions. Using centralised analytical tools to make interpretations and decisions from IoT data traditionally means that the data must be transmitted over a network – and this can be problematic when using systems such as long-range wireless, satellite or cellular communications where bandwidth is constrained or expensive.

Reducing server-side analytics in favour of edge-device analytics reduces the amount of data that needs to be transmitted. This decision making at the edge-node IoT device also allows for relatively fast “decision making” and control of connected devices, without waiting for communications back from the server.

Quarks uses Apache Common Math to provide simple analytics aimed at device sensors, for example windowing, aggregation and simple filtering. This local processing means that devices can react locally, offload processing from central servers, and reduce bandwidth costs.

Furthermore, Quarks applications use analytics to determine when data needs to be transmitted to a back-end system for further analysis, action or storage. For example, an IoT sensor may determine whether a system is running outside of normal parameters, such as an engine that is running too hot.

If the system is running normally, you probably don’t need to send the data to the back-end system – this means additional load, bandwidth costs, and extra storage that is needed. But if your Quarks-based analytics detect an abnormal condition, you can then decide to log that data, and send the data to the back-end system to determine why this issue is occurring and how to resolve it.

This makes the whole system much more efficient, with reduced bandwidth and reduced storage requirements, while still capturing the important data where it matters. By detecting only the abnormalities and discarding the “normal” data – you shift from sending a continuous flow of data to sending only the essential and meaningful data, locally filtering the interesting from the mundane and reducing these costs.

You can write an edge application on Quarks and connect it to a cloud-computing service such as IBM’s Watson IoT platform. Quarks can also be used for enterprise data collection and analysis, such as log collectors, application data, and data centre analytics, for example.

And Quarks can be integrated with centralised analytics systems such as IBM Streams or Apache Storm to provide edge-to-centre analytics. This means you have the best of both worlds, with the benefits of both edge-device and server-based analytics and tools for decision making.

Quarks supports connectors for MQTT, HTTP, JDBC, Apache Kafka and IBM’s Watson platform, – as well as analytics systems such as IBM Streams and IBM Bluemix streaming analytics or open-source systems such as Apache’s Spark, Storm, Flink and Samza platforms.

And the best thing is that because Quarks is open-source and highly extensible, it’s possible to add support for custom connectors and analytics applications of your choice, if the currently supported systems do not meet your needs.

And this is where the LX Group us ready to work with you. We have end-to-end experience and demonstrated results in the entire process of IoT product development, and we’re ready to help bring your existing or new product ideas to life. Getting started is easy – click here to contact us, telephone 1800 810 124, or just keep in the loop by connecting here.

LX is an award-winning electronics design company based in Sydney, Australia. LX services include full turnkey design, electronics, hardware, software and firmware design. LX specialises in IoT embedded systems and wireless technologies design.

Published by LX Pty Ltd for itself and the LX Group of companies, including LX Design House, LX Solutions and LX Consulting, LX Innovations.

Muhammad AwaisImplement Internet of Things Edge Analytics with IBM Quarks

As an interesting example of larger, more established companies taking longer to bring a new product or service to market – IBM is now in the open-source cloud development platform arena with their new Bluemix service.

This is a new next-generation cloud development platform based on IBM’s Open Cloud Architecture and the open-source Cloud Foundry project. Bluemix is a Platform-As-A-Service (PaaS) offering that promises to deliver enterprise-level features and services that are easy to integrate into cloud applications.

As an open-standards-based cloud platform for building, managing, and running apps of all types, Bluemix offers the opportunity to work with the web, mobile, big data, Internet-of-Things applications and smart devices.

Bluemix capabilities include support for Java, mobile back-end development and application monitoring, as well as features from ecosystem partners, all in a cloud-based platform.

This enables organisations and developers to easily create, deploy and manage applications in the cloud, delivering enterprise-level services that can easily integrate with your cloud applications without you needing to know how to install or configure them.

IBM envisioned Bluemix as a system that would answer the needs and challenges facing application developers, their business counterparts and users. For developers, this means a system that significantly reduces the time needed to create and provision the application and allows for flexible capacity in terms of storage as well as delivering flexible capacity for bandwidth and processing.

It handles the back-end infrastructure without requiring the developer to spend time managing it, and allows developers to concentrate on what they do best – developing innovative applications.

For businesses, Bluemix represents a system that allows users to easily create cloud applications without needing a high level of technical knowhow, enabling businesses to rapidly adjust to customer requirements by leveraging the flexibility cloud applications provide – such as instant updates, new features and automatic deployment, empowering and enabling business users to leverage their resources in the most efficient way possible.

Rapid adjustment to changing customer needs and the automatic deployment of new features provides high responsiveness from the customer perspective, and their needs can be addressed very quickly once they make them known. Cloud-based cost savings also reduce the total cost of ownership.

With projections of billions of new Internet-of-Things devices being sold and connected over coming years, with corresponding growth in the amount of network traffic they generate, there have been a number of new technologies emerging that help developers connect and use the data coming from these devices.

One interesting example is MQTT, the Message Queue Telemetry Transport protocol. MQTT is a connectivity protocol specifically designed for machine-to-machine and Internet-of-Things applications, as a very lightweight publish/subscribe messaging transport.

In response to projections for the IoT and the rapidly growing numbers of connected devices, IBM has developed an Internet of Things Cloud – which at the core is based around an MQTT instance. The IBM IoT cloud is currently in beta but is quite functional and you can use it to develop or experiment with publishing and retrieving data from your connected Internet-of-Things devices.

Once you have a device connected to the IBM Internet-of-Things Cloud you can build an app around the data coming from that device, and this is where Bluemix comes in. Using a combination of the IBM IoT Cloud and IBM Bluemix you can have a complete cloud-based based solution for your IoT applications, and Bluemix already has a service that is part of its catalogue to connect to the IBM IoT Cloud.

In addition to the service, Bluemix has a boilerplate for IoT applications which stands up a Node-RED instance allowing you to design data flows for your application. For example you can use Bluemix along with the IoT cloud to build Internet-of-Things applications based on data coming in from a hardware device such as a Texas Instruments Sensor Tag.

You can use Node-RED, running on top of Bluemix and the IoT Cloud, to collect sensor data over the tag’s wireless Bluetooth Low Energy interface, store it in a MongoDB database and create a REST API exposing the data, without writing any code yourself.

Included with IBM’s IoT Cloud there are a number of “recipes”, which are basically example IoT scenarios that can get you up and running quickly with common applications. The recipes contain instructions on how to set up the hardware as well as provide you with the code needed to connect the device to the IoT Cloud and publish data. What makes using these recipes even easier is the quickstart service that is part of the IoT Cloud.

When using the quickstart service you don’t have to create an account or register any devices, you just run the code given to you in the recipe, head to the quickstart page, enter the MAC address of the device and you can see the device data being published to the IoT Cloud.

To get an IoT device and demonstration application up and running quickly it couldn’t be easier. For example, a combined Beaglebone Black and TI Sensor Tag application is one of the recipes provided, supporting the TI Sensor Tag which has a number of sensors on it you can use for many different and interesting use cases, connected to a Beaglebone Black which removes the need for a power-hungry local PC running all the time.

All the hardware needed, the Sensor Tag, the Beaglebone Black, and a Bluetooth LE USB adapter, costs less than 100 dollars, and once you’ve got the hardware you can quickly follow the documentation provided to start publishing data from sensors to the cloud using a combination of Bluemix, IBM IoT Cloud and NodeRED.

IBM Bluemix 2

 Although not the first in the market, IBM’s offering is powerful and scalable – and could be the solution to your IoT product requirements. Here at the LX Group, our experienced award-winning engineering team can harness Bluemix for your success.

 Getting started is easy – join us for an obligation-free and confidential discussion about your ideas and how we can help bring them to life – click here to contact us, or telephone 1800 810 124.

LX is an award-winning electronics design company based in Sydney, Australia. LX services include full turnkey design, electronics, hardware, software and firmware design. LX specialises in embedded systems and wireless technologies design.

Published by LX Pty Ltd for itself and the LX Group of companies, including LX Design House, LX Solutions and LX Consulting, LX Innovations.


Muhammad AwaisIBM’s Bluemix – an open cloud platform for the IoT