Sorry, this page is no longer available
We may earn an affiliate commission when you visit our partners.
Course image
Ganz Chockalingam and Harinath Garudadri

Do you want to develop skills to prototype mobile-enabled products using state-of-the-art technologies? In this course you will build a hardware and software development environment to guide your journey through the Internet of Things specialization courses. We will use the DragonBoard™ 410c single board computer (SBC).

This is the first in a series of courses where you will learn both the theory and get the hands-on development practice needed to prototype Internet of Things products. This course is suitable for a broad range of learners.

This course is for you if:

Read more

Do you want to develop skills to prototype mobile-enabled products using state-of-the-art technologies? In this course you will build a hardware and software development environment to guide your journey through the Internet of Things specialization courses. We will use the DragonBoard™ 410c single board computer (SBC).

This is the first in a series of courses where you will learn both the theory and get the hands-on development practice needed to prototype Internet of Things products. This course is suitable for a broad range of learners.

This course is for you if:

• You want to develop hands-on experience with mobile technologies and the Internet

• You want to pivot your career towards the design and development of Internet of Things enabled products

• You are an entrepreneur, innovator or member of a DIY community

Learning Goals:

After completing this course, you will be able to:

1. Configure at least one integrated development environment (IDE) for developing software.

2. Make use of git, adb and fastboot to flash multiple OS and repair bricked boards.

3. Install Android 5.1 (Lollipop) and Linux based on Ubuntu.

4. Create, compile and run a Hello World program.

5. Describe the DragonBoard™ 410c peripherals, I/O expansion capabilities, Compute (CPU and Graphics) capabilities, and Connectivity capabilities.

Enroll now

What's inside

Syllabus

Introduction
Welcome to the Internet of Things! Before diving into this course give us a chance to let you know what it is all about! We will walk you through a module by module outline that will give you highlights on the interesting aspects of the course.
Read more

Traffic lights

Read about what's good
what should give you pause
and possible dealbreakers
You want to prototype mobile-enabled products using the latest technologies
You plan to switch your career towards the design and development of IoT-enabled products
You are an entrepreneur, innovator, or DIY community member
Experienced learners who want to expand their expertise
Learners completely new to hardware development

Save this course

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

Reviews summary

Setting up dragonboard for iot

According to learners, this course provides a practical foundation for setting up the DragonBoard 410c, an essential step for developing IoT projects. Students found the lessons on flashing different operating systems like Android and Ubuntu, using tools like adb and fastboot, and setting up the development environment (IDE) to be helpful. While the course aims to be suitable for a broad range of learners, some found the hardware setup process challenging, particularly with specific OS versions or troubleshooting issues that require prior technical experience. It's viewed as a necessary first step in the specialization, focusing specifically on board preparation rather than complex application development.
Needs the DragonBoard 410c to complete assignments.
"You definitely need to purchase the DragonBoard 410c and necessary peripherals to get hands-on experience in this course."
"Without the physical board, you can follow the lectures but won't be able to complete the practical setup exercises."
"Be prepared to invest in the hardware if you want to fully engage with the course material and labs."
Essential preparation for the IoT specialization.
"This course is exactly what you need to get the DragonBoard ready for the rest of the specialization courses."
"It focuses purely on the setup and tools, which is crucial before diving into application development."
"Consider this course the mandatory gateway to using the DragonBoard in practical IoT projects."
Clear steps provided for changing operating systems.
"The videos explaining how to install Android and Ubuntu on the DragonBoard were straightforward and easy to follow."
"Using adb and fastboot was new to me, and the course did a good job introducing these essential tools."
"Learning how to switch between different OS and understanding the flashing process was very valuable for future work."
Difficulty setting up the physical board and OS.
"I had a lot of trouble getting the board recognized on my computer; troubleshooting drivers took hours."
"Flashing the OS didn't work smoothly the first time, and the debugging steps weren't always clear for my specific problem."
"Setting up the development environment and connecting to the DragonBoard required careful following of steps, and small errors caused big delays."

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 Internet of Things: Setting Up Your DragonBoard™ Development Platform with these activities:
Read 'Android Programming: The Big Nerd Ranch Guide'
Enhance your understanding of Android development fundamentals through a comprehensive guide.
Show steps
Create a dedicated notebook for course materials
Organize your notes, assignments, and resources to enhance recall and retention.
Browse courses on Organization
Show steps
  • Purchase a notebook dedicated to the course.
  • Label the notebook clearly with the course name and semester.
  • Create separate sections for notes, assignments, and other resources.
  • Regularly update the notebook with course materials.
Follow an online course for Android Studio setup
Familiarize yourself with the Android Studio development environment before starting the course.
Browse courses on Android Studio
Show steps
  • Search for a beginner's course on Android Studio setup.
  • Choose a course that covers the installation, configuration, and basic usage of Android Studio.
  • Follow the tutorial steps and complete the hands-on exercises.
Five other activities
Expand to see all activities and additional details
Show all eight activities
Write and run 'Hello World' program
Gain hands-on experience with writing and running simple Java programs in Android Studio.
Browse courses on Programming Basics
Show steps
  • Open Android Studio and create a new Android project.
  • Create a new Java class called MainActivity.
  • In the MainActivity class, write the 'Hello World' program.
  • Run the program on an emulator or physical device.
Create a mind map of the DragonBoard 410c peripherals
Organize and visualize your understanding of the DragonBoard 410c peripherals.
Browse courses on DragonBoard 410c
Show steps
  • Gather information about the DragonBoard 410c peripherals from the course materials.
  • Use a mind mapping tool to create a diagram.
  • Add branches for each peripheral, including its name, function, and key specifications.
  • Review and refine the mind map to ensure clarity and completeness.
Attend a local Android development meetup
Connect with other Android developers and learn about the latest trends and technologies.
Browse courses on Android Development
Show steps
  • Find local Android development meetups.
  • Attend a meetup and introduce yourself.
  • Engage in discussions, ask questions, and share your experiences.
Build a simple Android app using basic UI elements
Apply your Android development skills to create a functional app with a basic user interface.
Browse courses on Android App Development
Show steps
  • Design the app's layout and functionality.
  • Create the app's user interface using XML and Java.
  • Implement event handling and data binding.
  • Test and debug the app.
  • Deploy the app to an emulator or physical device.
Contribute to an open-source Android project
Gain practical experience and connect with the Android development community by contributing to open-source projects.
Browse courses on Android Development
Show steps
  • Identify an open-source Android project that aligns with your interests.
  • Review the project's documentation and contribution guidelines.
  • Choose a feature or bug to work on.
  • Submit a pull request with your proposed changes.
  • Collaborate with the project maintainers to refine and merge your contributions.

Career center

Learners who complete Internet of Things: Setting Up Your DragonBoard™ Development Platform will develop knowledge and skills that may be useful to these careers:
Android Developer
Android Developers build and maintain mobile applications that run on the Android operating system. As an Android Developer, you will use your knowledge of the Android SDK and the Java programming language to create apps that are both useful and engaging. This course will provide you with the skills you need to develop Android apps from scratch.
Mobile Developer
Mobile Developers are responsible for developing software for mobile devices. This can include apps for smartphones and tablets. As a Mobile Developer, you will need to have a strong understanding of the Android and iOS operating systems. This course will help you to develop the skills you need to build mobile apps that run on both platforms.
Software Developer
Software Developers design, develop, and maintain software applications. As a Software Developer, you will use your knowledge of programming languages and software development tools to create software that meets the needs of users. This course will help you to develop the skills you need to start a career as a Software Developer.
Web Developer
Web Developers are responsible for developing and maintaining websites. As a Web Developer, you will use your knowledge of HTML, CSS, and JavaScript to create websites that are both visually appealing and user-friendly. This course will help you to develop the skills you need to build websites that meet the needs of users.
UX Designer
UX Designers are responsible for designing the user experience for websites and apps. As a UX Designer, you will use your knowledge of human-computer interaction to create interfaces that are both easy to use and enjoyable to interact with. This course will help you to develop the skills you need to be a UX Designer.
UI Designer
UI Designers are responsible for designing the visual appearance of websites and apps. As a UI Designer, you will use your knowledge of design principles and software tools to create interfaces that are both visually appealing and user-friendly. This course will help you to develop the skills you need to be a UI Designer.
Data Scientist
Data Scientists are responsible for collecting, analyzing, and interpreting data. As a Data Scientist, you will use your knowledge of statistics, machine learning, and data mining to extract insights from data. This course will help you to develop the skills you need to be a Data Scientist.
Machine Learning Engineer
Machine Learning Engineers are responsible for developing and deploying machine learning models. As a Machine Learning Engineer, you will use your knowledge of machine learning algorithms and software tools to create models that can solve real-world problems. This course will help you to develop the skills you need to be a Machine Learning Engineer.
Product Manager
Product Managers are responsible for managing the development and launch of products. As a Product Manager, you will work with engineers, designers, and marketers to ensure that products meet the needs of users. This course will help you to develop the skills you need to be a Product Manager.
Project Manager
Project Managers are responsible for planning, executing, and closing projects. As a Project Manager, you will work with stakeholders to define project goals, develop project plans, and track project progress. This course will help you to develop the skills you need to be a Project Manager.
Business Analyst
Business Analysts are responsible for analyzing business processes and identifying opportunities for improvement. As a Business Analyst, you will use your knowledge of business analysis techniques and software tools to create solutions that meet the needs of businesses. This course will help you to develop the skills you need to be a Business Analyst.
Systems Analyst
Systems Analysts are responsible for designing and implementing computer systems. As a Systems Analyst, you will work with users to understand their needs and develop systems that meet those needs. This course will help you to develop the skills you need to be a Systems Analyst.
IT Consultant
IT Consultants are responsible for providing advice and guidance to businesses on how to use technology to meet their business goals. As an IT Consultant, you will work with businesses to assess their needs, develop solutions, and implement those solutions. This course will help you to develop the skills you need to be an IT Consultant.
Network Administrator
Network Administrators are responsible for managing and maintaining computer networks. As a Network Administrator, you will work with network hardware and software to ensure that networks are running smoothly and efficiently. This course will help you to develop the skills you need to be a Network Administrator.
Database Administrator
Database Administrators are responsible for managing and maintaining databases. As a Database Administrator, you will work with database software and hardware to ensure that databases are running smoothly and efficiently. This course will help you to develop the skills you need to be a Database Administrator.

Reading list

We've selected 31 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 Internet of Things: Setting Up Your DragonBoard™ Development Platform.
Must-read for any software developer. It teaches you how to write clean, maintainable code that is easy to read and understand. It great resource for anyone who wants to improve their coding skills.
Comprehensive guide to Android Studio development. It covers all the essential concepts, from setting up your development environment to creating your first Android applications. It good choice for anyone who wants to learn more about Android Studio development.
Comprehensive guide to Android 11 development. It covers all the essential concepts, from new features to best practices. It good choice for anyone who wants to learn more about Android 11 development.
Classic in the Unix community. It comprehensive guide to Unix programming, covering everything from basic concepts to advanced topics. It great choice for anyone who wants to learn more about Unix.
Comprehensive guide to real-time systems design and analysis. It covers all the essential concepts, from basic principles to advanced topics. It great choice for anyone who wants to learn more about real-time systems.
Comprehensive survey of the Internet of Things. It covers all the essential concepts, from basic principles to advanced topics. It great choice for anyone who wants to learn more about the Internet of Things.
Is an excellent introduction to Android programming for beginners. It covers all the basics, from setting up your development environment to creating your first apps. It is also a good reference for more experienced developers who want to brush up on their skills.
Comprehensive guide to the Raspberry Pi. It covers all the essential concepts, from hardware to software. It good choice for anyone who wants to learn more about the Raspberry Pi.
Provides a comprehensive overview of software development, covering the fundamentals of software development, including design, testing, and debugging. It valuable resource for both beginners and experienced software developers who want to learn the best practices of software development.
Provides a comprehensive overview of Android security internals, covering the fundamentals of Android security, including permissions, cryptography, and secure storage. It valuable resource for both beginners and experienced Android developers who want to learn about Android security.
Provides a comprehensive overview of the IoT, with coverage of IoT technologies, architectures, and applications. It good reference for anyone interested in learning more about the IoT or building IoT applications.
Provides a comprehensive overview of the IoT, with coverage of IoT technologies, architectures, and applications. It good reference for anyone interested in learning more about the IoT.
Provides a comprehensive overview of software development, covering the fundamentals of software development, including design, testing, and debugging. It valuable resource for both beginners and experienced software developers who want to learn the best practices of software development.
Great introduction to embedded Linux. It covers all the basics, from setting up your development environment to creating your first embedded Linux applications. It good choice for beginners who want to learn how to use embedded Linux.
Provides a set of guidelines for writing clean code. It covers topics such as naming conventions, formatting, and testing. Following these guidelines can help you to write code that is easy to read, maintain, and debug.
Provides a comprehensive overview of debugging techniques. It covers a wide range of topics, including debugging tools, debugging strategies, and common debugging pitfalls.
Provides a comprehensive overview of Android security. It covers a wide range of topics, including rooting, malware, and reverse engineering.
Great way to learn the basics of Java. It is written in a fun and engaging style, and it covers all the essential concepts. It good choice for beginners who want to learn Java quickly and easily.
Great introduction to the Linux command line. It covers all the basics, from basic commands to more advanced topics. It good choice for beginners who want to learn how to use the Linux command line.
Provides a comprehensive overview of Android programming, covering everything from the basics to advanced topics such as networking and security. It valuable resource for both beginners and experienced Android developers.
Practical guide to designing IoT devices. It covers all the essential concepts, from hardware to software. It good choice for anyone who wants to learn how to design IoT devices.
Practical guide to building IoT projects with Arduino. It covers all the essential concepts, from hardware to software. It good choice for anyone who wants to learn how to build IoT projects with Arduino.
Provides a comprehensive overview of Android user interface design, covering the fundamentals of Android user interface design, including material design, navigation, and layouts. It valuable resource for both beginners and experienced Android developers who want to learn the best practices of Android user interface design.
Comprehensive reference for the Linux programming interface. It covers a wide range of topics, including system calls, file I/O, and network programming.
Provides a comprehensive overview of Android Studio 3.0, the official IDE for Android development. It covers everything from setting up your development environment to debugging and testing your apps.
Provides a business-oriented perspective on the IoT, with coverage of IoT technologies, business models, and applications. It good resource for anyone interested in learning more about the business potential of the IoT.
Great introduction to Android development for beginners. It uses a hands-on approach to teach the basics of Android programming, and it is full of helpful examples and exercises.

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