Dec 9, 2019
Qualcomm products mentioned within this post are offered by Qualcomm Technologies, Inc. and/or its subsidiaries.
Technology resources available through Qualcomm Developer Network (QDN) are used by many different types of developers around the world ranging from our industry customers, OEMs, and ecosystem players, to makers, students, and hobbyists.
Our Projects Page showcases these talents and the use of our technologies through clever projects that you can read about and recreate.
Towards the end of each year, we like to acknowledge these contributions by picking the top five projects that we feel exhibit exceptionally noteworthy features. So have a read through, and when you’re done, be sure to submit your own project to be featured here on QDN!
This was one of the first projects posted for the Qualcomm Robotics RB3 Platform, and is designed to help you get started with Amazon AWS Robomaker and the Qualcomm Robotics RB3 Development Kit. This project walks you through the steps needed to run the sample applications included with AWS Robomaker, as well as how to create a custom application and deploy it on the RB3 to allow the robot to rotate in place.
Notable topics described throughout these steps include creating an AWS account, IAM administration, running a simulation job, and deployment through AWS IoT Greengrass.
We like how this project demonstrates edge processing using the Qualcomm Robotics RB3 Platform which is powered by a Qualcomm Snapdragon 845 mobile platform, and cloud processing using a well-known cloud service like Amazon AWS.
Thanks to Zixiang Wang and Weizhang Luo from our engineering team at Qualcomm Wireless Communication Technologies (China) Limited who worked on this project.
This project shows how to develop an image recognition application that runs on an edge device.
We like this project because it shows how to process video data at the edge using open-source frameworks running on our Snapdragon processors.
This is just one of the many projects shared by the Latin American developer community, and shows how enterprise developers have adopted the Qualcomm APQ8016E application processor on the DragonBoard 410c from Arrow Electronics and the 96Boards ecosystem, to create proof of concepts and share their work back to the developer community. The project can also be run on a DragonBoard 820c.
The project includes instructions on how to install OpenCV, TensorFlow, and Python machine learning frameworks, and how to run the included sample “Object Detection” Python application on a Snapdragon processor. More generally, this project is designed to provide developers with a sense for how straight forward development for Snapdragon processors can be.
Thanks to Luiz Teixeira and Álvaro Cunha from Inatel ICC QTT in Brazil.
You probably enhance the pictures you’ve taken with your smartphone all the time, but have you ever stopped to think how your camera seemingly performs magic when processing your photos?
This project sheds some light on what happens behind the scenes in your smartphone, by demonstrating how a combination of software algorithms and hardware optimization are used to create the bokeh effect. It utilizes the Qualcomm Neural Processing SDK to develop a machine learning application which can perform selective background manipulation on an image according to the user’s needs.
It accomplishes this using DeepLabV3, a deep learning framework algorithm by Google for semantic segmentation (the process of linking pixels in an image to labels).
We like this project because it takes developers through the process of converting image data into NumPy data, training a model and converting it to the DLC format, and using the model with our Neural Processing SDK to perform inference on the NumPy data. The project then shows a simple routine for analyzing the semantically-segmented image data and converting the background of the image to grayscale.
Thanks to the team at Global Edge Software in India including: Rakesh Sankar, Shivanand Pujar, Akshay Kulkarni, Sushant Ahuja, Jinka Venkata Saikiran, and Sahil Munaf Bandar.
4. QCA4020 Projects
Our Qualcomm QCA4020 is a low-power, Internet of Things (IoT) System-On-Chip (SoC) solution, that can communicate over multiple protocols and radios. Given this versatility, there were so many great projects posted for QCA4020, that we just couldn’t limit it to one pick for this year’s list.
We like this project because it shows how to get up and running with the Moddable SDK development on QCA4020. Its step-by-step guide includes instructions on how to configure the QCA4020 for debugging, how to prepare it for Moddable SDK apps, and how to build, install, and debug a “Hello World” application. Once complete, developers can then try out the other examples that cover display and sensor drivers, networking, Bluetooth Lower Energy (BLE), and graphic user interfaces.
Thanks to Michael Kellner at Moddable Tech, Inc. in Palo Alto, California, USA.
In this project, a home automation solution is developed based on the QCA4020 development kit by using the BLE channel to monitor a sensor (smoke detector) and to control devices (a smart bulb and smart lock).
This project provides instructions on initializing BLE, connecting sensors, and includes the source code for an application that communicates directly with QCA4020 via BLE to control the sensors. It also includes instructions and resources for end-to-end development including a cool smart phone app/user interface.
Collectively, we feel the elements of this project provide a good starting point to work on IoT projects involving BLE communications with multiple devices.
Thanks again to the team at Global Edge Software in India including: Rakesh Sankar, Akshay Kulkarni, Jinka Venkata Saikiran, and Sahil Munaf Bandar.
5. MDM9206 modem projects
Similar to the QCA4020 projects above, we couldn’t limit ourselves to just one pick amongst the great Qualcomm MDM920x-based projects, so below are the projects that we feel stand out.
First up, we actually have a series of projects based around the GoKit4 Development Kit powered by a Qualcomm MDM9206 LTE modem, that demonstrate how to interface with a pressure sensor, vibration motor (like the kind in your smart phone), heart rate monitor, and motion detector and then send the data collected to Gizwits IoT cloud services.
These projects are very similar in that they provide detailed instructions including a parts list, assembly instructions, and example source code written in C. Together, they showcase the versatility of the MDM9206 in different IoT use cases over NB-IoT.
After reviewing these projects, developers will come away with a good sense for how straight forward it is to set up power efficient edge devices that communicate with the cloud.
Thanks to Thunder Software Technology, Co., Ltd. based in Shenzhen, China.
In last year’s top five projects, we included the LTE for IoT Merchandise Cart project which demonstrated the potential of M2M9206 in a retail IoT setting. For 2019, an updated version of this project has been posted, and has again earned a spot in our top five picks.
The project simulates merchandise carts stocked with products that have been distributed across the grounds of a music festival. A mat with force sensors detects the presence/absence of physical merchandise on a cart and reports this information directly to the MDM9206 development board.
The Quectel LTE OPEN EVB equipped with an MDM9206 sends the sensor data to an AWS IoT cloud service. Using the QTI LTE for IoT SDK, the system can track merchandise carts and sync the inventory levels to an AWS IoT instance over LTE. The AWS instance running the dashboard application gives the users and event organizers the ability to simulate the action of re-deploying the vendor carts by dragging and dropping icons across a map.
Last year’s version of the project used the DragonBoard 410c to collect the sensor information and forward it to the cloud service using the MDM9206. In the 2019 version, the DragonBoard 410c was not used. Instead, the sensors’ data is fed directly to the MDM9206, which sends the data to the AWS cloud service, demonstrating the use of the MDM9206’s capabilities.
With the goal of trying to maximize sales, these components can support a virtually always-on, always-connected services that provide near ubiquitous reach spanning both outdoor and indoor locations. Moreover, real-time data collection allows merchants to make decisions about cart placement and top selling products, so they can help to influence sales.
Thanks again to the team at Global Edge Software in India including: Shamlee C, PN Ramya, Abhinesh S, and Steven P.
These projects demonstrate the diverse developer community on QDN that spans multiple skill levels, areas of focus, and countries! And behind this developer community sit diverse solutions based on QTI technologies.
We hope this blog inspires your next project, and we would love to hear about the projects that you have put together. Once you have a project you want to share, be sure to submit your project to be featured on our Project Page.