Do|you|know when the first thing was connected to the Internet of Things? Some could say it was 1982 and a Coke vending machine at the Carnegie Mellon University. Since then, the IoT has come a long way and is getting adapted more and more, especially with the ongoing IT/OT convergence.
But let's start simple: What does IoT exactly describe? Well, the main purpose of the IoT is to get digital presentations of analog things such as objects, environments, or systems. So basically, sensors are capturing analog events, turning them into digital data points which will then be collected in a data lake (sitting in the Cloud or data center).
This may sound very simple, but in most cases it isn't. Many sensors and gateways speak different protocols, support different hardware and software and mostly every industry (manufacturing, utilities, transportation etc.) are going their own way when it comes to technology. Fortunately, there are some (de-facto) technology standards out there, such as LoRaWAN, MQTT, Bluetooth, and 4G/5G, which are accepted by the industries and make IoT projects easier to deploy. However, the end-to-end architecture from the things to the Cloud/data center is a long way which requires various skillsets.
Some examples of IoT technologies
This is where DevNet IoT and the DevIoT Certification can help guiding you through your learning journey. Getting a certification shouldn't be a burden, it's study content should motivate you and bring out your passion of the various (IoT) technologies. I can tell you from my experience, I really enjoyed studying for this exam! Besides, this knowledge is definitely not hurting your career and can bring up further job opportunities for you as an IoT System Engineer, IoT Architect, IoT Application Developer or extend your knowledge in your current role or at the beginning of your career.
At first, let's take a look at the exam itself and if it fits to you: First of all, the DevNet IoT certification is focused on connecting sensors, infrastructure and cloud in an industrial or enterprise setting (for example in transportation, manufacturing, utilities, defense, smart cities etc.).
Also, the certification aims for more software-oriented topic areas as you can see below from the exam outline. So, you definitely should have a general IoT/industrial networking architecture knowledge (Exam topic 1.0), but the main focus here is how to securely (7.0) connect various things, and aggregate, compute and visualize (2.0-6.0) the vast amount of data with Cisco and Open-Source technologies. Doesn't this sound interesting?!
Get the details on each of these topic areas here: https://developer.cisco.com/certification/exam-topic-iot/
When taking this exam, you can expect a generic technological approach (including Open-Source technologies, standards, open data formats etc.), which also includes how Cisco IoT components are utilized. So, by studying for this exam, you are definitely not covering Cisco-only technologies.
If you are sure now to take on the certification, definitely go ahead to the study materials, and even if you are unsure about it, just check out some of the free content materials, learning labs, sandboxes (virtual environments for testing) and sample code we are providing, to see if you are interested in the content or not.
Personally, I would highly recommend for people who are already using any Cisco industrial products to go ahead and at least check out the study materials. But also, general and embedded software developers, (industrial) network engineers, infrastructure/cloud engineers who are involved in IoT projects and any engineer who is working on IT/OT convergence projects should definitely check out and see what the DevNet IoT Certification has to offer and how you can benefit from it.
A couple notes before we dive into the study guide:
So, with those disclaimers out of the way... here we go with...
1. Getting Started: Let's start simply and warm-up with some basics
Get to know the basics of Python or any other programming language. There won't be any specific questions about programming, but it is a good fundamental knowledge to know how programming languages work and what they can do within an IoT context. Here is a small Python tutorial selection:
Basics of REST API: Similar to the programming fundamentals it is necessary to know how REST APIs work. And don't worry, it is pretty simple:
Read more about industrial networks and the CPwE architecture:
Read more about the IT/OT convergence with ongoing projects:
2. Moving to the Edge:Now let's focus on how you can develop and deploy "true" edge applications.
Learn more about Cisco IoT gateways:
Get started with Cisco IOx Edge Compute framework & Docker. Deploy your application on your local Cisco device or DevNet sandbox:
Read more about the implementation in the Remote and Mobile Assets Design and Implementation Guide: Edge Compute
Watch a video of how you can easily connect a serial sensor to your IOx application and a Cloud-managed Cisco gateway
3. Protocols & Sensors: Dive into the various protocols of IoT, focusing on data exchange
Video: Cisco Wireless Technologies and Use Cases in Industrial IoT. This is very detailed, but helpful for you to get a good overview.
MQTT & Websockets:
AMQP:
LoRaWAN:
Bluetooth Low Energy:
3G/4G/5G:
OPC UA:
Modbus:
4. Various Cisco and Open-Source Software:
Cisco Edge Intelligence:
Cisco IoT Control Center:
Cisco IoT Field Network Director:
Databases -where do you put your data? At the edge, in the cloud?
Data Visualization -get to know how you can visualize IoT sensor data:
5. IoT Security: As you know security is very important, especially when connecting many devices. The main goal here is to understand what tools are out there, how they work, and their benefits.
S1) Simply send any sample data from your script (client) via an MQTT broker (e.g. Mosquitto) into any database (e.g. Telegraf + InfluxDB) and visualize them (e.g. Grafana)
S2) Create a Hello-World.py script which outputs a random Chuck Norris joke from the API and execute this in your own built Docker container. If you have access to Cisco Gateway Management, get all gateway names.
S3) Connect a virtual sensor to the Cisco Edge Intelligence broker and send the data to a local database. This whole sample project can be done within the DevNet sandbox:
S4) Get hands on a real Cisco industrial switch and deploy an IOx application on it via the webUI and ioxclient:
S5) Connect any sensor you have (real hardware or virtual), send the data via your deployed IOx Edge Application (on your local Cisco gateway or use the DevNet sandbox) to your local database or cloud instance.
Feel free to write some answers in the comments section below.
I hope these study materials give you a good start to prepare for your DevNet IoT certification! Please let me know if it helps. All the best for your exam!
We'd love to hear what you think. Ask a question or leave a comment below.
And stay connected with Cisco DevNet on social!
Twitter @CiscoDevNet | Facebook | LinkedIn
Visit the new Developer Video Channel