Introduction to Device Programming for IoT: C Edition

In this course, you will get to know about the fundamental concepts of embedded device programming by incorporating various projects in Raspberry Pi and MXChip AZ3166 devices (the AZ3166 is Arduino-software compatible).


Learning Style





12 Hours

Course Duration

Course Info

Download PDF


See Sample

About Individual Course:
  • Individual course plan gives you access to this course
/ Each
6 Learners Have Enrolled For This Course
When you subscribe, you get:
Learn Subscription plan gives you access to this course and over 840 other popular courses
On Sale!
Now Only $39.99 Regular Price $44.99
Now Only $39.99 Regular Price $44.99
/ Month
  • Buy 5-9 Enrollments And Save 68% ($12.74 monthly.)
  • Buy 10-19 Enrollments And Save 72% ($11.24 monthly.)
  • Buy 20-above Enrollments And Save 78% ($8.99 monthly.)
6 Learners Have Enrolled For This Course

You have already taken demo for this course.

If you want to get access to demo again, feel free to contact our support at (855) 800-8240

In this course, you will get to know about the fundamental concepts of embedded device programming by incorporating various projects in Raspberry Pi and MXChip AZ3166 devices (the AZ3166 is Arduino-software compatible).

Course Information

About this course:

This course is part of the Microsoft Professional Program Certificate in IoT.

It is the most general of knowledge that the function of smart devices in our life is crucial. Not only this, constant advancement is being made in this field which has led to the coming up of a new device almost every other day. But is this question pondered over that a developer is required in the background in order to build all those devices? If this is the kind of aim you have, in which you want to turn all the imagined smart devices designs into a reality, this is just the right kind of course you would need. Taking this course will be your first step in programming for the Internet of Things.

In this course, you will get to know about the fundamental concepts of embedded device programming by incorporating various projects in Raspberry Pi and MXChip AZ3166 devices (the AZ3166 is Arduino-software compatible). You will also get to learn about coding a software that regulates the hardware (temperature sensors, photo cells, and more), as well as get an introduction on making a difference with the usage of procedural programming.

The course will start with an introduction on embedded programming, going over embedded device types and the inputs and outputs for devices and sensors. After this, you will traverse through a series of practical exercises comprising of lab projects. These lab projects will be about creating the hardware/software interface, and enabling you to understand C programming for embedded devices. The projects will also be about going over fundamental data regulation for a resource-constrained device. From this step, you will then go through embedded solutions that use your own circuit designs to resolve real life scenarios.

At the end of the course, when it will be completed, the students will gain the skill to create embedded device systems that have the feature of grabbing and process the data from the analog and digital form of sensors, that are generally found in the IoT solutions.

The course has been designed in such a way that it has the duration of 12 hours only. Furthermore, it has beginner difficulty level. This means that it will be a quick task to complete this course, both in terms of its difficulty level and time duration. It has self-paced learning style which means that you can complete it at your own ease and speed. Hence, this course is highly time-saving and productive as it provides refined skills in a short amount of time and with an easy syllabus. 

NOTE: The lab project practical activities in this course is based on the hardware found in the Microsoft IoT Pack for Raspberry Pi and the MXChip IoT DevKit. It is, therefore, recommended that you purchase that before starting, in order to avail the lab projects in this course fully.

Learning objectives:

This course has the following learning objectives:

  • Explaining the different features of an embedded device
  • Setting up development environment for an embedded device type
  • Developing a simple program that gains entrance to GPIO pins
  • Incorporating the components of the C programming language in a constrained resource environment
  • Setting up I/O libraries and obtain pinout readings
  • Creating a simple embedded device application
  • Describing the method of constructing simple circuits thorough the usage of common electrical items
  • Explaining the sensor and device resources available in the market
  • Installing the sensors within an application through the usage of SPI and I2C
  • Describing the procedure of manufacturing a solution that uses more than one sensor
  • Manufacturing the circuits for a solution
  • Designing a software/hardware solution for a general situation


This course is designed for and will be helpful for professionals like IoT engineers and IoT developers, in their workforce environment. The course will give these professionals an edge over other engineers and developers because of the polished and productive skills obtained from it.


The course has requirement that needs to be fulfilled prior to starting it. It is required because it will be very helpful for you during your learning. You must have some previous experience in programming. This is essential because you will be learning about developing and designing in this course. It is recommended, and not strongly required, that you have experience in C programming specifically, as this will be fruitful for you in your learning.


More Information

More Information
SubjectsApp Development
Lab AccessNo
Learning StyleSelf-Paced Learning
Learning TypeCourse
Course Duration12 Hours


Write Your Own Review
Only registered users can write reviews. Please Sign in or create an account

Course Expert:


Brian Hernandez
Web development Instructor

Brian Hernandez is a Mobility professional capable of managing technology projects from concepts to completion with remarkable deadline sensitivity. Proficient in developing Wordpress Plugins, mobile applications, Wordpress Websites etc.

This Subscription Includes:

Virtual instructor Led

Virtual Classroom Courses

Our virtual instructor-led courses give you access to live instructors training you with other live students in a virtual classroom environment.

200+ Virtual Classroom Courses

Online Self-Paced Courses

Take self-paced online courses at your convenience and own pace, with unlimited access to courses in various emerging technologies.

700+ Self-Paced Courses

E-books blogs, case studies, ariticles

As part of informal learning, our platform will recommend E-books, whitepapers, case studies, articles, and videos. This is AI curated content closely aligned with your learning objectives.

E-books blogs, case studies,...

College Accredited Courses

QuickStart courses are accredited by several top schools and universities, including Texas A&M and University of Phoenix. You can print out certificates and also apply them towards your degree plan with them.

College Accredited

Full Learning Dashboard & Analytics

Access all your enrolled, completed, course statistics, and community discussions from one centralized and intuitive learning dashboard with built in analytics, course tracking, time spent, and more.


QuickStart Discussions

Engage with other learners where you can directly chat, ask questions, and socialize with other learners experts and instructors on a course subject.

Community Access Community Access

Virtual Labs

Videos and lectures only go so far. Get real world, hands-on practice with virtual labs (not available for all courses).

Virtual Labs Virtual Labs
Live Instructor Support

Live Instructor Mentoring & Support

Get your IT problems solved through a community of mentors, experts and peers. Get live help from experts to answer questions on course material or guidance on a project.

Mentoring & Discussions Mentoring & Discussions

Career Paths

Start a learning pathway towards understanding and mastering your career. With QuickStart career paths, you can fully understanding and being the best in your field.

Learning Paths Learning Paths

Informal Learning

Access to AI curated content from various content publishers which can help in self-directed learning.

Informal Learning Informal Learning
click here