Thursday, October 22, 2015

Rhiot 0.1.2 is out

Rhiot 0.1.2 is finally out! Many thanks for Taariq Levack for the awesome job he did on the new GPSD Camel component and webcam Camel component.





What has exactly changed between Rhiot 0.1.1 and 0.1.2? Here is the complete list:


  • Added Camel webcam component
  • Deprecated BU353 component on the behalf of the GPSD component
  • Added GPS client coordinates type converter
  • Fixed: BU353 returns "FileNotFoundException: /dev/ttyUSB0 (Device or resource busy)" 
  • Rhiot now supports reading Spring Boot application.properties file
  • Renamed com.github.camellabs.iot.vertx.camel.GroovyCamelVerticle to io.rhiot.vertx.camel.GroovyCamelVerticle
  • Moved camel-kura component from com.github.camellabs to io.rhiot package
  • Device detection is performed in parallel
  • Added "scan" command to the deployer
  • Deployer now allows to specify customized fat jar
  • Deployer now downloads the same gateway version as deployer version
  • Deployer now detects devices from multiple interfaces
  • Deployer now scans OSX network interfaces
  • Device Cloudlet MongoDB connection now timeouts faster

Rhiot is a messaging platform for the Internet Of Things. We are focused on an adoption of the Red Hat JBoss middleware portfolio to provide solutions to common IoT-related challenges.

Monday, October 19, 2015

Rhiot about to support all GPSD-compatible GPS units

The BU353 Camel component for Rhiot has been well received in our community. I'm pretty happy to announce then that we plan to deprecated BU353 component in order to promote new, better and awesome GPSD Camel component. GPSD component is available (and highly recommended to use) starting from Rhiot 0.1.2.

Why is GPSD better than BU353?


  • GPSD component supports all GPSD-compatible GPS units, including BU353
  • GPSD component doesn't read from devices directly, but uses GPSD client and server for this prupose (so it is more reliable for concurrent access use cases) 
  • GPSD Time-Position-Velocity objects can be accessed to receive the detailed GPS information (like a current speed of the device), not only GPS location coordinates
  • you can use GPSD component to read the GPS data from the remote device running GPSD server  


BU353 to GPSD migration


GPSD component is really a drop in replacement for BU353 component. You can simply change your route from...

from("gps-bu353:current-position").
  convertBodyTo(String.class).
  to("file:///var/gps-coordinates");
...to...

from("gpsd:current-position").
  convertBodyTo(String.class).
  to("file:///var/gps-coordinates");
Spot the difference ;) .

Special thanks

Many thanks go to Taariq Levack, our brand new Rhiot committer, who authored this new component. Taariq, you rock :) .

Wednesday, September 30, 2015

Meet me at the ApacheCon Core EU 2015

This Friday I will be speaking at the ApacheCon EU 2015, in Budapest. The even takes place at the same venue as a year before i.e. at lovely Corinthia Hotel Budapest. I will be giving two IoT related talks:


I will be in Budapest for Thursday and Friday. If you are at the Budapest at this time, feel free to drop me a line!

About ApacheCon Core:
Core will bring together the open source community to learn about and collaborate on the technologies and projects driving the future of open source, web technologies and cloud computing. Apache projects have and continue to be hugely influential in the innovation and development of software development across a plethora of categories from content, databases and servers, to big data, cloud, mobile and virtual machine. The developers, programmers, committers and users driving this innovation and utilizing these tools will meet in Budapest, October 1 & 2, for collaboration, education and community building.

Monday, September 28, 2015

Rhiot quickstarts - getting into the IoT really fast!

The goal of the Rhiot project is to allow the developers to create the Internet Of Things projects as easily as possible. We want to make the complex IoT projects simpler and bring the fun to the IoT world, while preserving all the benefits the developers can gain from the rich Red Hat JBoss Middleware portfolio. 
Keeping Rhiot philosophy in mind, we decided to start releasing the quickstarts - the set of the base projects that can be used as a building blocks for the IoT solution. Rhiot quickstarts can be copied and used as the template for your IoT solution.
The programming model we have chosen for Rhiot quickstarts revolves around Camel and Vert.x. Camel routes are our primary choice for the expression of the endpoint connectivity and message routing. So starting embedded MQTT ActiveMQ broker and connecting to it might be as simple as using the following Groovy snippet:
class MyMqttApp extends CamelBootstrap {

    void configure() {
        from(mqtt('topic')).log('Received ${body}')
    }

}
Vert.x verticles and event bus are also the first class citizen in all the Rhiot applications. So Rhiot can help you with detecting Vert.x verticles or make it as easy to connect to the event bus as:
class MyMqttApp extends CamelGroovyVerticle {

    void configure() {
        eventBus('temperature').to(mqtt('temperature'))
    }

}
Looks interesting? More details about Rhiot API and quickstarts soon to come!

Tuesday, September 22, 2015

IoT server platform emerging at Eclipse

Recently at the Eclipse IoT Working group mailing lists one of our members raised the proposal to collaborate on the server-side platform specification.

Why this proposal is so important? Because it may result in the creation of the core engine for the IoT backend services that might become a kind of standard, as there are several companies interested in participating in the project.

I'm definitely interested in getting involved into that initiative. Tomorrow I will be presenting the Rhiot project to the Eclipse IoT Working Group, so the other members can see how Rhiot and that emerging platform could overlap.

I highly recommend to track the minutes published on the Eclipse IoT Working Group mailing lists. The emerging Eclipse platform can be a big thing!

BTW Wondering who is the part of the Eclipse IoT Working Group? EuroTech, IBM, Red Hat, Cisco, Bosch, Sierra Wireless, Canonical, Huawei, Verisign, to mention some of them.



Monday, September 14, 2015

Rhiot 0.1.1 is out

On the behalf of Rhiot team, I'm happy to announce that Rhiot 0.1.1 has been released. It's been a while since efforts related to rebranding the project from Camel Labs to Rhiot have been holding our release train.

What has changed in the latest Rhiot?




Thursday, July 30, 2015

Let's start the rhiot!

As many of you probably already know, in the recent months I've been hooked on the Internet Of Thing in general, and creating the rocking Internet Of Things messaging platform in particular. My R&D activities have been revolving around the adoption of the awesome Red Hat JBoss middleware portfolio to the IoT needs. Me, and the other folks interested in the adoption of the projects like Apache Camel or ActiveMQ to the IoT challanges, joined our forces to create the Camel IoT Labs project.

As the Camel IoT Labs project scope is really wider than the scope of the Camel itself, we decided to give up the old project name. Instead we would like to come up with something that would reflect the fact that we are working on the project with the bigger IoT messaging platform picture in mind.

We decided to go with renaming the project to rhiot (pronounced like riot). Our new name hides the Red Hat and IoT in it - which is fine, because we want to stress that our IoT project relies on the rock solid Red Hat software portfolio as its foundation. Starting from today we will be gradually migrating our Camel Labs to new Rhiot name. That will include moving our GitHub project to the new rhiot organization and changing our Maven coordinates from com.github.camellabs to io.rhiot.

I'm also thrilled to say that Red Hat decided to sponsor some R&D activities around the new Rhiot project. So stay tuned and expect amazing IoT stuff coming from the Rhiot team. Also keep in mind that we have really open policy regarding accepting new contributors for our project - if you want to help us to create the IoT messaging platform, you know where to find me :) .