Investigating ARM Cortex® M33 core – WiFi with Mikroe WiFi 10 click board

For this last blog in the series Investigating ARM Cortex® M33 core I decided to explore the expansion features of the LPC55S69-EVK. This board has three expansion ports (PMOD, Arduino Duo, Mikroe click) and I picked the Mikroe expansion port. Why? Only because I had good experience with these boards with the Hexiwear project.

And because I have been doing some work this month with AWS IOT I wanted to get my LPC55S69-EVK onto my office WiFi network for the Christmas holidays. I know that the MCUXpresso SDK for lpcxpresso55s69 version 2.6.3 has a built-in WiFi example named qca_demo, and so that is what I am investigating today.

That WiFi example supports three WiFi shield boards, and I picked the Mikroe WiFi 10 click board. It’s part number MIKROE-3432 and available from all of the usual catalogue distributors.

WiFi 10 click board from Mikroelektronika

It was a very simple matter to plug the board into the LPC55S69-EVK, and then import the qca_demo project into MCUXpresso IDE with the SDK Import wizard. I’m still using MCUXpresso IDE v11.0.1 and SDK v2.6.3 (but both have been updated this week – 24 December 2019 at the time of writing this blog).

And it was ridiculously easy to get the board onto my office WiFi network. Out of the box the qca_demo example is built for a different shield board. And so (following the guidance in the readme.txt file with the project) I modified the header file wifi_shield.h with a #define for the WIFI10CLICK shield:

Set qca_demo project to use the Mikroe WiFi 10 Click shield.

The demo also is hard-coded to support a specific WiFi SSID and the necessary passphrase. It is set in the main.c source module, and of course it is necessary to modify this for my office WiFi network. Again, these are configured as #defines for the project:

Configure hard-coded SSID and passphrase for the qca_demo project.

Well, that was all that is necessary to get WiFi up and running! The project builds to about 140 kbytes of code (.text section) and about 25 kbytes of RAM (.bss section) in the debug build with no optimisation, and build for debug console through the UART. It is downloaded to the board via the inbuilt LPC-LINK2 debugger on the LPC55S69-EVK and when it runs, qca_demo sets up a command line interface (“CLI”) through the UART.

The readme.txt file in the project defines the commands that are implemented by the CLI. Here is some output from the board listing the commands, and the output from the board when I’ve run the ‘s’ Scan command. The board reports two WiFi networks, one of which is my office network Ozymandias24.

CLI commands implemented by qca_demo example project

The command sequence ‘s’, ‘c’, ‘d’ will scan, connect and then get an IP address via DHCP from my office WiFi access point. Thereafter the demo illustrates some typical ‘internet’ protocols such as ‘p’ IMCP echo request, ‘g’ HTTP Get request on port 80, and ‘R’ DNS resolve.

I cannot express how quickly and easily I was able to get this board onto my WiFi network. Kudos to NXP and Mikroelektronika for a job well done!

You can watch me unbox, install and connect the WiFi 10 Click board to my office WiFi network in this week’s video. And there are 17 other videos to enjoy on the embeddedpro YouTube channel.

This is the last video in the series. I’m working on some plan for future videos and so, if you have any suggestions for future investigations, or comments on this video, then please leave them below. And (hint) the more likes the blogs and videos get, the more time I’m going to spend on the next series…

I wish you all a peaceful, successful 2020…. Mark, embeddedpro®.

3 thoughts on “Investigating ARM Cortex® M33 core – WiFi with Mikroe WiFi 10 click board

  1. Hi mark,

    Thank you for the complete teaching.
    After reading your teaching, we want to use LPC55S69 + Wifi 10 click board to connect to AWS IoT, the connection method is MQTT + TLS1.2, but I don’t know if it is feasible? Or can you provide other suggestions for us to refer to?
    Thank you!



What do you think?

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.