Packet Tracer 7.x - Internet of Things tutorials

Packet Tracer 7.2 - Arduino emulation for IoT programming

3.2 1 1 1 1 1 Rating 3.20 (5 Votes)

What is Arduino ?

Arduino is a hardware and software company building microcontroller-based kits for building digital devices and interactive objects that can sense and control physical devices.

The project is based on microcontroller board designs, produced by several vendors, using several microcontrollers. Arduino boards provide digital and analog input/output (I/O) pins that can interface to different expansion boards  and other circuits. The boards feature serial and USB communication interfaces for loading programs from computers to the boards.

Programming the microcontrollers is done through the Arduino integrated development environment (IDE) based on a programming language named Processing, which also supports the languages C and C++.

 

Arduino at Cisco Live 2016

Arduino organised a technical challenge at Cisco Live 2016. The idea was that people at the Cisco event could discover and play with some fun Arduino projects like a RFID lock, a colour sensing and display thing, and a light sensitive theremin. Have a look on the video ;-)

 

Read more ...

Packet Tracer 7.0 - IoT advanced programming & automation

4.1666666666667 1 1 1 1 1 Rating 4.17 (6 Votes)

Tutorial description

This tutorial will provide guidelines to simulate a fully automated IoT environment using the capabilities of the new Cisco Packet Tracer 7.0 devices.

A MCU board connected to smoke and temperature sensors will act as a remote Fire Detection Unit. The board will be securely wifi connected to a 829 ISR router.

A SBC bord connected to a visual alarm will act as a Fire Alarm System.

Both IoT board will register to a central IoE server which will provide automation capabilities to raise the Fire Alarm if a fire is detected by the Remote Fire Sensor.

Packet Tracer 7.0 advanced programming and automation network topology

  

Read more ...

IoT with IoX on ISR 819HG-4G router

2.4166666666667 1 1 1 1 1 Rating 2.42 (12 Votes)

What is IoX ?

Fog computing concept

Cisco IoX hosts applications in a virtual machines running on a hypervisor hosted on an IoX capable hardware called fog node. Cisco IoX is delivered with a pre-packaged Yocto Linux distribution but developpers are free to use any operating system. Yocto has been selected by Cisco because of it's various CPU architectures support, it's comprehensive SDK, and it's slim design to work on resource constraint platforms like routers.

All Cisco fog nodes have converged compute, networking and storage, which simplifies management and reduces power and space requirements and makes possible to run the same application on different kind of fog nodes without modification :

  • Cisco ISR router (ISR 819HG-4G-IOX router simulated in Cisco Packet Tracer 7.0
  • Cisco switch
  • Cisco Unified Computing System (UCS) servers

The data and application access is protected by classical Cisco security mecanism. For example, IoX applications hosted on an ISR router benefit from Netflow to help detect anormal activity and CBAC to inspect to inspect and restrict the network flows. These two security mecanism can be simulated in Cisco Packet Tracer 7.0

Cisco IoX use cases

The main use case of IoX is local interaction with IoT industrial devices.

Example :A manufacturer could use Cisco IoX to host Rokwell Factory software on factory-floor routers. Using Cisco IoX API, the software could communicate with the factory IoT devices running any proprietary protocol. A second fog application could send IoT data to the enterprise cloud network by translating the non-standard or proprietary protocol to IP.

 

Read more ...

Blocky programming IoT devices

2.5555555555556 1 1 1 1 1 Rating 2.56 (9 Votes)

What's blocky ?

Blockly is a visual programmation editor which uses uses graphical blocks to represent code concepts like variables, logical expressions, loops, and more. It helps students to better understand and apply programming principles without having to worry about the specific syntax of a specific programming language.

Code can then be exported to popular programming languages such as python, javascript, ...

Use blocky to program IoT devices in Packet Tracer 7.2

Blocky has been integrated by Cisco in Packet Tracer 7.2 to ease IoT programming for network students not well aware of Javascript or Python programing. The following videos demonstrates the amazing capabilities of this feature.

Video part 1

Video part 2

Packet Tracer 7.2 - Real HTTP server using SBC device

4.5 1 1 1 1 1 Rating 4.50 (4 Votes)

Real HTTP server API in Packet Tracer 7.2

Packet Tracer 7.2 introduced the capability to create a real HTTP server accessible from the outside of the Packet Tracer emulation environment. This capability is only available on the SBC IoT device.

HTTP server can be programmed using javascript, python, or the visual programming language

Javascript API

The following javascript functions have been added in Packet Tracer 7.2 (SBC device only) to support real HTTP server. The HTTP is able to listen on a custom TCP port and to respond with text/plain or any other content-type (file, ...).

Function

Return Type

Description 

Example 

HTTPServer.route(path, method, callback); 

N/A

Sets up a route for path and calls callback when it is requested. Routes also support wildcards using *.

HTTPServer.route("/hello", function(url, response) { 

  response.send("world"); 

});



HTTPServer.route("/*", function(url, response) { 

  response.send("hi"); 

});

HTTPServer.start(port) 

boolean

Starts listening on port. 

HTTPServer.start(80); 

HTTPServer.stop() 

N/A

Stops listening.

HTTPServer.stop(); 

 

 

 

 

Response class

 

Passed into the HTTPServer route handler.

 

send(content)

N/A

Sends content back as response.

response.send("hello");

setContentType(type)

N/A

Sets the content type in the response.

response.setContentType("text/plain");

sendFile(filePath)

N/A

Sends a file back as response. The file path is in the device's file manager, not relative to the source code of the current project/script.

response.sendFile("/test.txt")

sendNotFound()

N/A

Sends a file not found as response.

response.sendNotFound()

 

Use the following javascript code to start a real HTTP server listening on TCP port 8080.

var server = new RealHTTPServer();
server.start(8080);

 

Read more ...