Paho Python MQTT Client – Understanding Callbacks

Callbacks are functions that are called in response to an event. The events and callbacks for the Paho MQTT client are as follows: Event Connection acknowledged Triggers the on_connect callback Event Disconnection acknowledged Triggers the on_disconnect callback Event Subscription acknowledged Triggers the  on_subscribe callback Event Un-subscription acknowledged Triggers the  on_unsubscribe callback Event Publish acknowledged Triggers the on_publish callback Event Message Received Triggers the on_message callback Event Log information available Triggers the on_log callback

Continue reading

Configure a Mosquitto Bridge With SSL Encryption

It is very likely that a bridged connection between two brokers will be encrypted. The Mosquitto broker (server) provides two methods of using SSL encryption on a bridged connection Certificate encryption PSK encryption In this tutorial we will be configuring a secure bridged connection using both methods. If you are new to certificates then you should read this tutorial on SSL encryption and certificates before continuing.

Continue reading

Guide to IOT Networking and Messaging Protocols

The Internet of things (IOT) will utilize the existing networking infrastructure, technologies and protocols currently used in homes/offices and on the Internet, and will introduce many more. The purpose of this tutorial is to give you a quick overview of what networking and application protocols are likely to be used to build the IOT.

Continue reading

DNS Zones and Zone Files Explained

DNS is comprised logically of Domains but physically of zones. A domain is a logical division of the DNS name space whereas a zone is physical, as the information is stored in a file called a zone file.

Continue reading

MQTT Sensors and Network Traffic Observations

MQTT is primarily a M2M protocol. It was originally designed for send sensor data from a remote oil field. As the number of sensors increases the amount of network traffic generated by sensors will increase dramatically and depending on the transport it could prove expensive. It will be important to understand this sensor traffic and how it can be reduced.

Continue reading

Host Name Resolution Methods Explained

On computer and home networks when you type an Internet address into a web browser the web browser needs to convert that web address into an IP address. To do that it uses the the name resolution processes provided by the host machine. There are several ways that the host machine can resolve a domain name. The main ones are:

Continue reading

DNS Lookups Explained

In this tutorial we will examine what happens when you use DNS to lookup or resolve a domain name to an IP address. We look at how DNS lookups work, and the exact process involved when looking up a domain name. We follow the client DNS query as it is processed by the various DNS servers in the response chain. Before we start it might be useful to compare DNS name resolution with a standard question and answer that takes place in everyday life.

Continue reading

Paho Python MQTT Client-Understanding The Loop

When writing code using the Paho Python client you would have had to use the loop() function . In this tutorial we will look at what it does, and why it is necessary. When new messages arrive at the Python MQTT client they are placed in a receive buffer. The messages sit in this receive buffer waiting to be read by the client program.

Continue reading