We may earn an affiliate commission when you visit our partners.
Course image
Mubeen Ali

In this course you will be taught how to create IOT applications from scratch with Node You will also learn how to control the microcontroller in your apps in Python programming with the library plotly dash. In this course you will also learn how to insert sensor data onto a cloud server using Node You will also learn how to retrieve it using Python applications and monitor data on your mobile device. In this course you will also learn how to connect microcontrollers to the Google Firebase database, ThingSpeak cloud server and insert data into the Google Big Query database.

Read more

In this course you will be taught how to create IOT applications from scratch with Node You will also learn how to control the microcontroller in your apps in Python programming with the library plotly dash. In this course you will also learn how to insert sensor data onto a cloud server using Node You will also learn how to retrieve it using Python applications and monitor data on your mobile device. In this course you will also learn how to connect microcontrollers to the Google Firebase database, ThingSpeak cloud server and insert data into the Google Big Query database.

You will also learn in this course in the last four sections how to insert sensor data in the database and stream the data in real time in a python application. You will learn here how to create a user interface using the python library plotly dash and deploy the application on a cloud server to view data in real time. I have used DHT22 and MQ-135 sensors to measure temperature, humidity and level of carbon dioxide in the inside room and outside atmosphere. I have used the microcontroller Arduino and generated the data after each 5 seconds and then inserted the same time in the database. And then created the application in python using plotly dash application to retrieve data in this application and stream that data in real time. You will learn step by step how to use this application and how to create multi page and update data automatically over the selected period of time without refreshing the page.

After learning this course, you will be able to create your own application e.g. you can use different gas sensors, smoke sensors in your home to record data and after inserting in the database, you can monitor your house in your mobile and overcome any risks within time by creating your own application.

Enroll now

What's inside

Learning objectives

  • Build iot applications with nodemcu esp8266
  • Connect nodemcu esp8266 with google firebase database and thingspeak cloud server
  • Create user interface for iot applications in python programming using the library plotly dash and control the microcontroller from your apps
  • Importing and reading sensor data in python and saving in csv and excel file
  • Inserting and retrieving sensors data in google big query database
  • Python library plotly dash
  • Stream sensors data in python plotly dash application in real time
  • Deploy python plotly dash application on heroku cloud server and google cloud server
  • Iot data monitoring applications

Syllabus

Introduction to Course
View Live Sensor Data on Cloud Server
Course Instructions
Installations IDEs and Softwares
Read more

Traffic lights

Read about what's good
what should give you pause
and possible dealbreakers
Covers connecting microcontrollers to popular cloud services like Google Firebase and ThingSpeak, which are commonly used in IoT projects
Teaches how to build user interfaces for IoT applications using Python's Plotly Dash library, enabling real-time data visualization and control
Explores deploying Python Plotly Dash applications on cloud servers like Heroku and Google Cloud, which is essential for making IoT solutions accessible
Employs NodeMCU ESP8266 and Arduino microcontrollers, which are widely adopted in the IoT field for their versatility and ease of use
Utilizes DHT22 and MQ-135 sensors for measuring environmental data, providing practical experience with common IoT sensor technologies
Requires installing specific IDEs and software, which may present a barrier to entry for some learners without prior experience

Save this course

Create your own learning path. Save this course to your list so you can find it easily later.
Save

Reviews summary

Building iot applications with practical projects

According to learners, this course provides a practical, hands-on approach to building IOT applications using NodeMCU, Python (Plotly Dash), and various cloud services. Many students appreciate the focus on real-world projects and the guidance on connecting hardware with software and cloud platforms like Firebase and ThingSpeak. The sections on real-time data streaming using Plotly Dash are highlighted as particularly valuable. However, some students found the course challenging at times, especially regarding environment setup or troubleshooting technical issues that can arise with external services. A few noted that the prerequisites could be clearer, suggesting some prior familiarity with Python or basic electronics is helpful.
Pace varies; assumes some prior knowledge.
"Some parts move very quickly, especially if you're new to Python or electronics."
"Felt like some foundational concepts could have been explained in more detail."
"Better suited for learners with some programming experience."
"Could use more in-depth coverage on specific libraries or optimization."
Valuable section on data visualization.
"The section on streaming data in real-time with Plotly Dash was the highlight."
"Learning how to build dashboards to monitor sensor data was very practical."
"Getting real-time updates in the Python app was a key takeaway for me."
Integrates NodeMCU, Python, cloud platforms.
"Excellent coverage of NodeMCU, Python, and connecting to Firebase."
"Learned how to use Plotly Dash for the first time, very useful."
"Connecting hardware like the ESP8266 to cloud services was demystified."
"The course covers a great stack of technologies for IOT development."
Focus on practical, real-world project building.
"The projects are fantastic, letting you apply concepts immediately."
"I loved building the actual applications and seeing them work end-to-end."
"Hands-on coding and projects are the strongest part of the course for me."
"The practical application examples really helped solidify my understanding."
Setup and technical issues can be difficult.
"Struggled with setting up the development environment, needed extra research."
"Connecting to external services like Firebase had some hiccups that required debugging on my own."
"Troubleshooting hardware connections and library installations was challenging."
"Some steps in the setup process felt a bit glossed over, requiring external help."

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in Build your own IOT applications and monitor data in your app with these activities:
Review Python Fundamentals
Strengthen your understanding of Python syntax, data structures, and control flow to prepare for using Plotly Dash and interacting with sensor data.
Browse courses on Plotly Dash
Show steps
  • Review basic Python syntax and data types.
  • Practice writing functions and using control flow statements.
  • Familiarize yourself with common Python libraries like pandas and requests.
Brush up on Node.js Basics
Review the fundamentals of Node.js, including asynchronous programming and working with APIs, to prepare for building IOT applications.
Show steps
  • Review Node.js syntax and core modules.
  • Practice working with asynchronous operations using callbacks and promises.
  • Familiarize yourself with common Node.js packages like express and request.
Python Crash Course, 2nd Edition: A Hands-On, Project-Based Introduction to Programming
Reinforce Python skills with a comprehensive guide that covers the fundamentals and provides practical project examples.
Show steps
  • Read the chapters covering basic Python syntax and data structures.
  • Work through the project examples to gain hands-on experience.
  • Use the book as a reference for specific Python concepts and libraries.
Four other activities
Expand to see all activities and additional details
Show all seven activities
Follow Plotly Dash Tutorials
Enhance your understanding of Plotly Dash by working through online tutorials that demonstrate how to create interactive dashboards and visualizations.
Browse courses on Plotly Dash
Show steps
  • Find Plotly Dash tutorials on the Plotly website or other online resources.
  • Follow the tutorials step-by-step, paying attention to the code examples.
  • Experiment with different Plotly Dash components and layouts.
Build a Simple Sensor Data Logger
Apply your knowledge by creating a project that involves collecting sensor data, storing it in a database, and visualizing it using Plotly Dash.
Show steps
  • Choose a sensor (e.g., temperature, humidity) and connect it to a microcontroller.
  • Write code to read data from the sensor and store it in a database (e.g., Firebase, ThingSpeak).
  • Create a Plotly Dash application to visualize the sensor data in real-time.
Internet of Things with ESP8266
Deepen your understanding of ESP8266 and IOT concepts with a book dedicated to building IOT projects.
Show steps
  • Read the chapters covering ESP8266 setup and configuration.
  • Work through the project examples to gain hands-on experience with IOT development.
  • Use the book as a reference for specific ESP8266 functions and libraries.
Contribute to a Plotly Dash Project
Enhance your skills and contribute to the community by contributing to an open-source Plotly Dash project on GitHub.
Browse courses on Plotly Dash
Show steps
  • Find an open-source Plotly Dash project on GitHub.
  • Identify a bug or feature that you can contribute to.
  • Submit a pull request with your changes.

Career center

Learners who complete Build your own IOT applications and monitor data in your app will develop knowledge and skills that may be useful to these careers:
Internet of Things Developer
An Internet of Things developer is responsible for building and maintaining the software and hardware that allows devices to connect to the internet and each other. This course teaches the fundamentals of creating IOT applications, specifically focusing on how to connect microcontrollers to cloud servers like Google Firebase and ThingSpeak. The course's practical projects, such as monitoring temperature and humidity using sensors and displaying that data in real time, directly translate to the tasks an Internet of Things developer performs daily, and using the Plotly Dash library helps build the user interfaces this role requires. The course explores how to process, store, and visualize sensor data, crucial skills for IOT development.
Embedded Systems Engineer
An embedded systems engineer designs, develops and tests the hardware and software in embedded systems. This course provides hands on experience by building Internet of Things applications using microcontrollers and sensors. By learning to program microcontrollers with Python, interface with cloud database using Node, along with visualizing sensor data using Plotly Dash, this course sets a strong foundation in embedded systems development. The work includes learning to collect, process and stream sensor data which is part of the embedded systems engineer's day to day work. Learning how to integrate hardware components with cloud services is also key for this type of engineering.
Data Visualization Engineer
A data visualization engineer is adept at transforming raw data into clear and insightful visuals. This course is extremely helpful in learning how to develop applications that can visualize data using Plotly Dash. The course's focus on streaming sensor data, creating real time charts, and building user interfaces directly aligns with the needs of a data visualization engineer. The learner will gain hands-on experience in data retrieval, processing, and presenting it in various formats using python applications and deploying them on cloud servers. These are all crucial skills for a data visualization engineer.
Software Engineer
A software engineer is a professional who designs, develops, and maintains software systems. This course may help an engineer develop a new skill set in IOT applications. The course offers hands-on experiences with full stack development, from collecting data with sensors, sending data to cloud servers using Node, and building user interfaces with Python using the Plotly Dash library. Creating IOT applications, deploying these applications to cloud servers, and working with databases helps to prepare the software engineer for a wide variety of development tasks.
Application Developer
An application developer is responsible for designing, building, and maintaining software applications. The course allows the developer to build IOT applications from scratch by using Node to manage microcontrollers, Python to construct user interfaces with Plotly Dash, and connect to cloud databases. The course explores the creation of interfaces that display real-time data, a common task for application developers. The course's deployment of applications onto Heroku and Google Cloud provides a full development view.
Cloud Solutions Architect
A cloud solutions architect is responsible for the design, planning, and management of cloud-based infrastructure. This course helps build a foundation in cloud based services, where one learns how to connect microcontrollers to cloud servers such as Google Firebase and ThingSpeak. The course is helpful in understanding data flows by learning to insert sensor data into cloud servers using Node and retrieving data using Python applications. Additionally, it will be helpful to apply knowledge of deploying apps on cloud platforms like Google Cloud and Heroku, which are all relevant for a cloud solutions architect.
Data Analyst
A data analyst interprets data to identify trends and patterns and help organizations make better decisions. This course may be useful in helping a data analyst learn new skills. The course teaches how to collect data from sensors, store them in databases like Google Big Query, and then retrieve that data. In addition, the use of Plotly Dash to create dashboards and visualize this data is a valuable skill for a data analyst. This course provides practical experience in the full data lifecycle, which is beneficial for this career.
Automation Engineer
An automation engineer designs, develops, and implements automated systems and processes. This course may be helpful for building skills with IOT applications, which are a vital part of various automation systems that one might encounter as an automation engineer. The course's focus on connecting microcontrollers, collecting sensor data, and displaying it in real time with Plotly Dash can help build a foundation in automation. This course provides practical skills in the data flow process from sensor to visualization.
Research Scientist
A research scientist designs and conducts experiments, analyzes data, and publishes findings to further scientific knowledge. This course may be valuable for research scientists who need to use sensor data in their work. The course's method of collecting data from IOT sensors, storing and retrieving from databases, and visualizing it using Python and Plotly Dash can be helpful for analyzing data from real world data sets. This course may provide the scientist with hands-on skills in utilizing IOT for research.
Database Administrator
A database administrator is responsible for the performance, integrity, and security of databases. This course may be useful in understanding the flow of data from IOT devices into databases. The course shows how sensor data is inserted into databases like Google Big Query and retrieved for analysis. It would be helpful for a database administrator to understand how data is structured and managed in database systems, particularly in the context of real time data. This course provides an understanding of the data flow in such systems.
Network Engineer
A network engineer designs, implements, and maintains computer networks. This course may be useful for understanding how data flows from IOT devices through networks to cloud servers. The course focuses on connecting microcontrollers to cloud databases, and streaming live sensor data by using Node and Python. It may be helpful for a network engineer to understand these data pathways. Knowledge of how data moves between devices and servers may be useful in the day to day tasks of a network engineer.
Technical Support Specialist
A technical support specialist provides assistance to users experiencing technical issues with hardware and software. This course may be useful in understanding the architecture and operation of IOT devices and systems. The course covers the full life cycle of IOT application development, from collecting data with sensors to deploying live applications. This course can be helpful for understanding the technologies used in IOT devices and could be useful in troubleshooting issues. A support specialist may be helpful in diagnosing issues related to the full IOT stack.
Project Manager
A project manager plans, organizes, and oversees projects within budget and deadlines. This course may be useful in understanding the various steps involved in an IOT based project. The course covers the full scope of an IOT project from building the hardware connections to deploying applications on cloud servers. This course can help a project manager better understand the technical aspects of IOT projects and manage project teams more effectively. A project manager may be helpful in facilitating communication between different groups working on a project.
Quality Assurance Analyst
A quality assurance analyst tests software and hardware to ensure it meets quality standards and is free of defects. This course may be useful in gaining an understanding of IOT systems and how they function. The course shows the step by step process of setting up and deploying a complete IOT application. A quality assurance analyst may be helpful in testing the functionality of IOT applications, and the course can help inform the development of test criteria for such systems. This course provides an understanding of the full lifecycle of an IOT application.
Technical Writer
A technical writer creates documentation for technical products and services. The course will be helpful for a technical writer who needs to write about IOT applications. This course will help a technical writer become familiar with the process of building IOT projects by using Node to send sensor data to the cloud, and Python with Plotly Dash to visualize the data. This course may be useful in learning about the key technologies and processes in IOT development to become a better technical writer in this field. The course gives an overview of the various components in building an IOT application.

Reading list

We've selected two books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Build your own IOT applications and monitor data in your app.
Provides a solid foundation in Python programming, covering essential concepts and libraries used in the course. It's particularly helpful for beginners or those looking to refresh their Python skills. The project-based approach allows you to apply your knowledge to real-world scenarios, making it an excellent resource for hands-on learning. It is commonly used as a textbook at academic institutions.
Provides a comprehensive guide to building IOT projects using the ESP8266 microcontroller. It covers topics such as connecting to Wi-Fi, reading sensor data, and controlling devices remotely. It is particularly useful for understanding the hardware aspects of IOT development. This book adds more depth to the course.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Similar courses are unavailable at this time. Please try again later.
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2025 OpenCourser