Internet of Things

2021-22 Trimester B – Internet of Things MMI126818-21-B (15 Credits)

Coursework 1


1 IoT Definition. 2

2 Examples of IoT Products. 2

3 Features of Google Core IoT. 2

4 The MQTT Protocol. 3

5 Demonstrator Application – Implementation 4



A Report Template document is provided separately, for your submission. Do not alter the structure of the template.

Feel free to state any assumptions that you make in responding to any section.

You are required to use your own words in responses to each question. Marks will not be provided for copied narrative or narrative where you have obviously copied and then altered the text slightly.

Unless specifically stated otherwise, you are required to provide only your own diagrams as part of your responses.

You are required to provide a references section, with citations provided within the narrative. You should provide citations for all key aspects that you are describing.

IoT Definition.

Provide in your own words a definition of the term: Internet of Things (IoT).

Examples of IoT Products.

Provide one example of a commercial product that is classified as an IoT System.

Explain the functionality of the product. Include a citation for the product.

Describe the types of applications and services that you think would be required on a central Cloud system to provide the overall product IoT system. This should be based upon your own thoughts and judgement.


Use bullet points when you include a list of responses to any part of this question.

If you wish-to, you can use one commercial product image (please cite this and include in your references) to illustrate your answer.

Please do not use any other copied diagrams; these will attract no marks. If you wish to use any diagrams to support your answer, then please create these yourself.

Features of Google Core IoT.

IoT Core is a key service provided on Google Cloud, to support IoT applications.

Describe the purpose of the service.

Provide brief descriptions of the main components that form the service.

Explain the four concepts: Telemetry, State, Command and Config.

An authentication mechanism is provided to allow IoT Core to determine if a device is making a valid connection to the service. Explain the operation of the authentication service with respect to:

How authentication keys are created by a user for use within the IoT Core Service, and which keys must be provided.

Exactly where the public key and the private key are used.

The process that occurs when a device attempts to connect to the IoT Core service.

Note: It is expected that you will deliver a technical discussion and that you will not deliver marketing-led descriptions taken from the Google IoT web site.

OVER/ Part 4

The MQTT Protocol.

Explain the concepts of publish and subscribe in relation to the MQTT protocol. Include coverage of topics within your response.

Justify which MQTT QoS you would use for an IoT device message publisher in relation to the following scenarios (publishing to Cloud):

IoT telemetry messages that are sent frequently, and the overall system can withstand some message loss.

IoT telemetry messages that are critical and must be received by the Cloud system.

Here are some example MQTT topics that have been set up for an IoT application, to publish environment data from attraction locations, using IoT devices. All attraction locations (Indoor and Gardens) publish humidity and temperature data for indoor areas. Additionally, Garden Attractions publish ‘outdoor’ humidity and temperature data.

Indoor Attractions:






Garden Attractions:







Provide subscription topics that match the following requirements:

Temperature and humidity data for all art galleries.

Temperature data for all art galleries.

Outdoor humidity for all attractions that are named: ‘botanic-gardens’.

Temperature for all indoor and outdoor zones in Glasgow gardens.

All temperature and humidity data for any attractions in London.

OVER/ Part 5

Demonstrator Application – Implementation

You are required to create a demonstrator application, created in Node-Red on Google Cloud, that fulfils the following objectives:

The application regularly receives a message from an IoT device that contains two sensor values (from a pressure sensor and a temperature sensor). The sensor details are provided below.

The device is already provisioned and is automatically sending data via MQTT. You do not have to create the device.

The messages are to be received via MQTT. You are required to utilise a single MQTT-in node to subscribe to all the messages. You must not publish messages to the MQTT topic.

The broker and topic details are provided below.

You must create a Cloud Node-RED Dashboard that comprises the following:

The temperature should be shown on a Dashboard Chart, with a 10-minute history.

The pressure should be shown on a Dashboard Gauge.

A Dashboard Text output should be provided, to be set according to the rules below:

If the temperature > temperature_threshold then a message should be delivered to the Dashboard Text output, to indicate “High Temperature”.

If the temperature <= the temperature_threshold then a message should be delivered to the Dashboard Text output, to indicate “Normal”.

A Clear button should be provided, to clear the Chart and the Gauge.


Chart, Gauge and Text outputs must be suitably labelled, including Units used.

If you wish, you can develop this application on your local Node-RED instance on PC, before transferring it to Google Cloud for the submission version.

Sensor Range
Pressure 25 – 40 PSI
Temperature 8 – 45 degrees Celsius
Temperature Sensor Condition
Temperature > 40 High Temperature
Temperature <= 40 Normal
MQTT Broker
Port 1883
Subscription Topics GCU2021-22-CW1-IOT/temperature


You must deliver the following:

A screenshot of your overall Node-Red Cloud flow that implements this. The screenshot should clearly show the Cloud URL being used for Node-RED.

Two screenshots of the Dashboard, showing output over a representative period. As well as showing the Chart and Gauge, one screenshot should show the ‘High Temperature’ state and the other should show the ‘Temperature Normal’ state on the Text output.

The JavaScript code for any Node-RED Function node that you utilise.

Screen shots for the configurations of any other nodes that you use in your Node-RED flow.

Screen shot of debug output (with objects expanded in debug panel) to illustrate the following:

Two examples of received messages from MQTT node, one for each sensor type. All data in the debug output should be visible. The complete JavaScript object should be shown.

A copy of the complete Cloud flow, using the export feature of Node-Red. The flow-tab should be named as follows:
< SPACE> . Please paste the exported flow (
as text – not as an image) into the relevant table in the Report Template.

A note that provides one of the following:

A statement that all aspects are completed.

A statement that details any aspect of the implementation that is incomplete or does not meet the specification.


The report must be submitted via Turnitin and must be in .docx format only; no PDF files will be accepted.

Do not use direct quotations from external sources. All narrative delivered must be in your own words. Quotations will not gain any marks.

Use bullet-points when you need to highlight several aspects to a response you are making within any part of the report.

You must reference external sources that you have used, using a formal reference scheme. You should use a reference manager utility for this, that integrates with Microsoft Word.

Do not copy diagrams/figures/images from external sources. All such elements must be originated by you, unless explicitly indicated within the coursework specification. Copied diagrams will not gain any marks.

All figures, diagrams, etc should be numbered and captioned using the integral Microsoft Word feature for this.

There is an expectation that your report will:

have consistent layout,

include references, cited within your narrative, that use a standard referencing technique,

be spell-checked,

be grammatically correct,

have a clear narrative structure,

have been proof-read to ensure that it meets each of the aspects listed above.

Writing Skills

This is a very detailed reference guide. Use this if you are in doubt over structural aspects of writing:

Assignment status: Already Solved By Our Experts

(USA, AUS, UK & CA Ph. D. Writers)


Order from Australian Expert Writers
Best Australian Academic Writers