Developer Blog

QCA4010 in a development kit: Hostless, low-power Wi-Fi SoC

Feb 7, 2017

Qualcomm products mentioned within this post are offered by Qualcomm Technologies, Inc. and/or its subsidiaries.

You’ve built out your embedded Internet of Things (IoT) SW application and you need a Wi-Fi platform to run it on, with low power consumption and a rich set of communication protocols and physical interfaces.

Time to look at the QCA4010 Wi-Fi module from Qualcomm® Technologies, Inc. (QTI). It’s available now in an evaluation kit for professional embedded developers and system engineers.

Low-power Wi-Fi Use Cases

QCA4010 is designed for IoT applications that require low-power Wi-Fi with an integrated micro-control unit (MCU) in a single package, large application memory (800KB) and multiple I/O options. You can connect sensors and actuators to the hostless system-on-chip and start working on a variety of use cases:

Home automation – Connect QCA4010 to the cloud to retrieve weather forecasts. Depending on imminent conditions, you can raise/lower window shades, set temperature in the HVAC system and adjust irrigation.
Lighting – Attach a light sensor to monitor and adjust the intensity and color of light in a room. LIFX uses QCA40xx series chips in its smart lighting products.
Metering – Monitor data on consumption of water, gas and electricity, then send readings over the cloud to utilities for billing and analysis.
Geolocation – Monitor position of users’ wrist bands and other wearables as they move among Wi-Fi networks.
Remote control – Connect switches, motors and displays to the cloud, then control devices worldwide through a mobile app.
Household appliances – Retrofit refrigerators, washers, dryers and other white goods for the IoT.
Logistics – Track movement of goods and mobile devices inside a building’s Wi-Fi network.

With 802.11a/b/g/n connectivity, QCA4010 also paves the way for IoT applications in energy management, medical devices and smart cities.

Development Kit for QCA4010

QTI is working with multiple vendors on development kits that can be purchased by developers to help them build IoT applications around QCA4010. Here’s the process

Purchase a development kit based on QCA4010. In North America, you can purchase a Silex module from Arrow Electronics.
Use any of multiple physical interfaces to connect sensors and other peripherals to the kit (see images).
Download and install the QCA4010 SDK.
Download and install the Cadence Xtensa Toolchain. It includes the tools you’ll need to evaluate, design, develop, produce, support and maintain the products you build around QCA4010.
Write and debug your applications, then iterate on the development kit.

To get your programming rolling, you’ll find plenty of documentation on QCA4010, including a device spec, release notes, a user guide and a quick start guide. We’ve also provided demos in the SDK:

Soft AP mode
HTTP server and HTTP client using wmiconfig commands
Simple DNS server and DNS client
Throughput tests
Concurrency demo
Hostless UART demo

Besides cloud connectivity to popular cloud providers such as Google Weave and Apple Homekit, QCA4010 also supports multiple protocols for communicating locally such as the Open Connectivity Foundation (OCF) and AllJoyn from the AllSeen Alliance.

Next Steps

Get your QCA4010 development kit today. It’s designed for a broad range of IoT design requirements: physical interfaces, Wi-Fi modes, low power options and communication protocols. Build out your prototypes on the kit now, and start shipping in no time.

Related News

Developer

Hardware-software convergence: Key skills to consider

Hardware-software convergence, or how hardware and software systems are working more closely together, illustrates how each are empowering (and sometimes literally powering) the other. And in our current development environment, this is happening more than ever. Of course, deep technical skills will be of the utmost importance to navigate this technological trend, but it is also the soft skills we apply to our engineering practices that are as important in determining our success.

What skills do developers need to nurture, and how do you put them to good use? In this piece, we’ll cover three soft skills developers can use to stay ahead of the hardware-software convergence, and share resources to help you grow and maintain those skills.

Creative inspiration

First off: Creative Inspiration. While it’s easy to identify your technical shortcomings and fill those gaps with training and practice, knowing which soft skills to hone can be a lot more complicated. In fact, you could even think of these soft skills as “mindsets,” since they’re more about how you approach a problem instead of just being a tool you use to solve it. For this first skill, it will be important to start approaching challenges antidisciplinarily, rather than relying on existing mental frameworks. That’s what being creative is all about – finding new ways of doing things.

So where do you start? Ask yourself this question: What is the dent you want to make in the universe? Begin from a place of passion – think about what problems and projects keep you up at night, and what issues big or small you want to solve.

Then, understand that creative inspiration is a process. What seems like overnight genius is often the result of many erroneous attempts (ex: Thomas Edison’s 1,000 or so attempts in creating the lightbulb) and then having the fortitude to gain deeper understanding of an issue to then apply your imagination. We particularly like the design thinking method, which encourages starting from a place of inspired empathy and developing knowledge through lean prototyping and iteration. The Stanford D.School has a Bootcamp Bootleg that you can download for a quick start guide to this design framework.

Apr 17, 2017

Developer

Developer of the month: Computing on the edge with Solstice

The beauty of developer boards like the DragonBoard 410c from Arrow Electronics is their adaptability, and we love hearing about all the different ways people are using them.

We selected Julian Dale and the team at Solstice as our Qualcomm Developer Network Developer of the Month because of their use of the DragonBoard 410c as the hub for their edge facilities management solution in a proof of concept demo that was one of the first to showcase AWS Greengrass, which is only available in limited preview.

We talked to Julian to find out about the challenges of building real-world IoT solutions, and how using the Dragonboard 410c helped them prototype an edge gateway running AWS Greengrass, extending AWS IoT and Lambda functions to add intelligence to what gets sent to the cloud.

Can you tell us about your company and what you develop?        
We’re strategists, researchers, designers and engineers hell-bent on changing the way the world does business. We’re headquartered in Chicago, IL and have delivery offices in New York, NY and Buenos Aires, Argentina.

How was your company started?
In 2001 J Schwan, Founder & CEO, established Solstice Consulting in Chicago as an IT services firm. In 2008, J pivoted the company from developing web-based experiences into mobile. Over these past seven years we’ve grown from a Chicago-based mobile boutique, to a technology firm of over 400 designers and engineers. To reflect this growth, this past fall we rebranded to simply: Solstice.

What is your company's mission?
Solstice is a global innovation and emerging technology firm that helps Fortune 500 companies seize new opportunities through world-changing digital solutions. We exist to prove what businesses are capable of.

Can you share with us your company’s project using DragonBoard 410c and AWS Greengrass? How did your company decide on these technology solutions?
We built a facilities management solution called
The Pulse, designed as an elegant way to capture data in existing buildings and derive insights from the vast amount of information. It was first featured at Solstice's annual innovation conference, Solstice FWD, in September 2016, and has since been upgraded to leverage AWS Greengrass. This powerful edge computing case was showcased during AWS re:Invent in November 2016 .

We built a number of sensor packs that tracked temperature, humidity, sound intensity, and motion. We deployed them throughout the conference venue in order to show attendees a heat map of the busiest areas – where exciting things might be happening – or how to get away from everything for a bit. With The Pulse our aim is to help attendees feel more plugged into the conference experience, and help them make informed decisions about what to do next.

The Pulse uses a DragonBoard 410c, a development board based on the Qualcomm Snapdragon 410 mobile platform, as a gateway device that aggregates and batches information from many different sensors. Snapdragon processors have the power and speed to support edge processing, allowing increased local analysis of data for a more secure and reliable IoT implementation. Combined with AWS Greengrass, this brings new possibilities to commercial, industrial, medical and smart city solutions that can’t rely exclusively on the cloud.

What does innovation mean to your company? 
Innovation is a core pillar of why Solstice exists as an organization. We are always looking at the now, near, and next technologies that will shape our future. In 2015, we launched Solstice Labs, our internal R&D extension, to ensure we’re constantly investigating, testing and dreaming up the innovative technologies of the near future. From emerging IoT technology to augmented reality and much more, we invest in learning what’s coming next so we can keep our clients always looking ahead.

Share with us a fun fact about your company.
Every week, Solstice nominate their peers for the “Awesomeness Award”, which is given out every Thursday at our all hands company meeting. The winner is chosen by the previous week’s winner. The winner then has the privilege of sitting in the “Awe-some” Office the following week, and often uses it as a fun space for daily team standups and meetings. The Awesomeness Award promotes our culture of servant leadership by recognizing people that are making their teammates and projects shine.

Apr 6, 2017

Developer

4 new IoT development kits for Bluetooth Low Energy applications

Get your Bluetooth® Low Energy IoT applications ready for a new family of development kits based on the CSR102x modules from Qualcomm Technologies International, Ltd.

The CSR102x family is designed to reduce the development time of the Bluetooth-connected IoT applications your customers are asking for:

Heart rate sensors, security tags, general IoT – The CSR102x Starter Development Kit is a good entry point for IoT development, with I/O expansion connectors for off-board sensors and actuators. It’s ideal for software developers looking to make the transition to embedded programming.
Lighting, home automation, sensor networks – The CSR102x IoT Development Kit is a package of 3 target boards made for networking Bluetooth devices and equipped with on-board LEDs, buttons, switches and sensors.
Beacons, proximity tags, wearables – The CSR102x Bluetooth Node Development Kit is powered by a coin cell battery, comes in a small footpod form factor, and includes a chip antenna, motion sensor, programming connector and internal flash.
Health & fitness, keyboards, mice, alert tags, keyless entry – The CSR102x Professional Development Kit is made for flexibility, with a pluggable CSR1025 chip module and multiple power supply options. It’s built to accommodate application-specific plug-in boards, currently the Sports Watch Application Board and the Smart Remote Application Board (sold separately).

Because “IoT” means so many different things to so many different developers, the CSR102x family covers a wide spectrum of application possibilities. It also checks three of the most important boxes on your IoT shopping list.

The CSR102x Development Kits – Low active power, low overall cost and security

Always-on devices are always-need-power devices. The CSR102x modules feature built-in power regulation and low active power consumption, with less than 5mA active current for transmit and receive operations. In the right applications, a coin cell battery in these modules can last for years.

Somewhere in the family you’ll find a kit with the hardware configuration you’re looking for. To keep your overall system costs low, we’ve designed the CSR102x kits so that very few external components are needed. The modules are implemented with only a single crystal, and you’ll find a direct connection between the antenna and device on each kit. The application boards include all the input controls, sensors and radios for prototyping a sports watch and smart remote control.

Without security, you don’t have much of an IoT story, so the CSR102x modules include application-level security features including encryption, authentication and over-the-air updates (OTAU) which are designed to prevent software running on them from being easily compromised. Applications downloaded may be authenticated using a SHA-256 hash and RSA-1024 signature, and may (at your option) be encrypted using AES-128 – only being decrypted before being loaded into RAM.

The CSR102x family picks up where the CSR101x family leaves off, adding new storage options for application software, lower power consumption, and support for the higher data throughput and additional security features of Bluetooth 4.2.

Are the CSR102x Development Kits right for you?

If you’re an embedded developer with C programming experience, you can dive right in to any kit in the family and start prototyping new apps in no time.

If you’re an app developer who’s been looking for a smooth path into embedded programming, we’ve made the CSR102x Starter Development Kit with you in mind. The IDE that comes with the kit includes full documentation on building sample apps and getting them downloaded to the hardware. The board includes expansion connectors and a programming and debugging interface to connect to the host development PC.

There’s no need for extensive knowledge of processor or Bluetooth technology. You can get the examples up and running quickly with basic knowledge of embedded design and C programming skills.

Next steps

If there’s a one-size-fits-all for IoT, we haven’t found it yet. (And we would know.) That’s why we release our kits in families, with different applications and form factors in mind.

Have a look at our CSR102x Development Kits and find the one that best suits your needs:

Starter Development Kit
IoT Development Kit
Bluetooth Node Development Kit
Professional Development Kit and separate Sports Watch Application Board and Smart Remote Application Board

You’re just a couple of clicks away from taking your IoT development to the next level.

Mar 30, 2017
Developer

Heterogeneous Computing: An architecture and a technique

If you’re looking to create great mobile experiences, optimization isn’t optional: it’s a crucial step that helps transform good ideas into great execution. In our previous “Start Cooking with Heterogeneous Computing Tools on QDN” blog, we discussed the concept of heterogeneous computing and how it can help you get more from mobile hardware by sending computational tasks to the best suited processor. Heterogeneous computing is designed to help you achieve better application performance while improving thermal and power efficiency.

However, not all systems capable of heterogeneous computing are created equal and it’s important to understand why. Heterogeneous computing is both a computational technique and a hardware architecture. To achieve greater benefits, you are better served with hardware architected for heterogeneous computing from the ground up along with a software stack that facilitates heterogeneous computing techniques. It’s the combination of purpose-built hardware and a software stack offering granular control within a larger framework of system abstraction that allows for the deep optimizations that heterogeneous computing can deliver.

The Qualcomm Snapdragon Mobile Platform is designed on these principles. This starts with the microarchitecture – the choices made in platform circuitry that include how individual processors are engineered for high performance and how to optimize compute paths between the processors. Let’s look at the main components of the Snapdragon mobile platform and a few of the microarchitecture considerations that went into its design:

Qualcomm Kryo 280 CPU

Designed to handle complex workloads like web browsing and in-game artificial intelligence, the Kryo 280 features an octa-core processor with independent high efficiency and high performance core clusters. During normal operation, the high efficiency cores run most tasks while the high-performance cores activate for anything needing more power.

Qualcomm Hexagon 682 DSP

With the Hexagon wide Vector eXtensions (HVX), the Hexagon DSP excels at applications requiring heavy vector data processing, such as 6-DOF (or Degrees of Freedom) head motion tracking for virtual reality, image processing, and neural network computations. With a 1024-bit instruction word capability and dual execution of the control code processor and the computational code processor within the DSP, Hexagon can achieve breakthrough performance without draining system power.

Qualcomm Adreno 540 GPU

Ideal for arithmetic-heavy workloads that require substantial, parallel number crunching like 3D graphics rendering and camcorder image stabilization, the Adreno GPU is engineered to achieve improved power efficiency and 40% better performance than predecessors. Designed to deliver up to 25% faster graphics rendering and 60x more display colors compared to previous designs, the Adreno GPU supports real-life-quality visuals, and can perform stunning visual display feats like stitching together 4K 360 video in real time.

Heterogeneous computing in microarchitecture design

Beyond the performance enhancements among the individual processors, the Snapdragon mobile platform was designed to optimize the use of the processors together. For example, the Hexagon DSP can bypass DDR memory and the associated data shuffling CPU cycles by streaming data directly from sensors to the DSP cache. Similarly, the Adreno GPU supports 64-bit virtual addressing, allowing for shared virtual memory (SVM) and efficient co-processing with the Kryo CPU. These are just two of the microarchitecture design choices in the Snapdragon mobile platform that make it cutting-edge for heterogeneous computing.

Software

As we noted at the beginning of this post, heterogeneous computing is also a technique. And to truly support heterogeneous computing requires a software stack that provides developers the abstractions and the control to leverage the optimizations in the hardware per the requirements of their application.

To program the DSP or the GPU for heterogeneous computation, and to maximize their performance, developers can use the Qualcomm Hexagon SDK and the Qualcomm Adreno SDK, respectively. These SDKs open a toolbox of controls allowing for precision manipulation of data and computational resources.

For system-wide heterogeneous computing control, Qualcomm Symphony system manager SDK provides the software utilities designed to achieve better performance and lower power consumption from the Snapdragon mobile platform. Symphony is designed to manage the entire platform in different configurations so that the most efficient and effective combination of processors and specialized cores are chosen to get the job done as quickly as possible, with minimal power consumption.

On top of these SDKs it is possible for developers to build their applications directly – many developers opt for this route. However, there is a growing ecosystem of SDKs, frameworks and supporting libraries for accelerating development within a given application domain. Two examples of this are QDN's Adreno SDK for Vulkan for the Vulkan graphics API and our recently released Snapdragon VR SDK.

How to Put Heterogeneous Computing Techniques into Practice with Tools from Qualcomm Developer Network

Mar 23, 2017

Join the conversation.