Make With Mouser IoT Design Contest - Blind People Tracker Device with AVRIoT Wx from Microchip [1/2]

Today I will share my project progress with all of you.

INTERMEZZO PART
My first concept when I submitted my idea actually I will make embedded system for helping blind people to navigate into their home.
But on the progress I have some problem.

My first concept actually I need hardware like this :
  1. Microcontroller ( AVRIoT Wx development board )
  2. GPS Module
  3. Distance Sensor
  4. Switch Button

I bought all of them except Microcontroller,
after all my hardware arrived, I tested the hardware one by one...
unluckily.. when I tested the hardware some of that are not working.

From 4 hardware I need, only 2 works, its are Microcontroller and Switch button... hahaha

1619407542329.png


I already make the box also...
1619407563045.png



Because of unluckily situation, I decided to optimize 2 OK hardware Only,
That's why I come up with new concept " Blind People Tracker Device "

The concept is like the diagram below
1619407585389.png



Without further ado, lets start it.
First check the board, is it respond or not,

The best thing from this AVR IoT Wx Development board is , you can make IoT device with easy step and it already powerfull
because hard thing already done by the board, from security, connection to cloud even MQTT protocol also already setup.
So, we only need to plug in the board into PC with supported cable data.

CHECK AVR IOT BOARD

Micrcontroller is the brain of this project. so we should make sure the board is OK before we go further.
to check the board is OK or NG, just plug in the cable data connected to the PC.

After it connected to the PC, there is a drive shows it called "CIRUOSITY"

1619407614247.png


You can see on the picture there are 5 files inside the drive.
click "CLICK-ME.HTM" file and it will redirect you to the Microchip AVR-IoT dashboard web
1619407627828.png




the board still doesn't connect to the cloud, because there is no connection with the board.
to make it connect to the internet, we should configure the board with Wifi connection.

As I said before, this board is so amazing, the hard stuff already done by it.
So to setup the wifi connection, you just need to scroll down the web page, and fill in the wifi information
for example, my wifi name is N and the password is ******* and my wifi security is WPA/WPA2 (General Wifi config)

1619407656823.png



After you filled in the wifi details click download configuration & it will download configuration file that you need to drag and drop into the CURIOSITY drive.
1619407671867.png


after you did the drag and drop WIFI.CFG
The board will connect to you WIFI automatically.

When it success connected to the WIFI, you can see the sensors stat of the board into dashboard
1619407691700.png



There are 2 sensors included into the board, its are Light sensor & Temperature sensor.
as you can see it works... Our board already connected to the internet
CONGRATULATION YOU MADE IOT DEVICE UNDER 5 MINUTES ....... Yeaaayyyyy

It's time go further..
oh I almost forget that, this our device is connected with google cloud platform but it sandbox account.

So we need to migrate it into our private server to do more..
Okay... Let's create google cloud platform.

UNLUCKILY AGAIN.......
after I tried registerd google cloud platform and input my CC details, it erros, the GCP cannot verify my payment.

1619407710837.png



So what should I do ????
Hmm... after read the documentation on the microchip website, the AVR-IoT WG (google cloud platform) is identical with AVR-IoT WA (AWS platform)
the differences only in the software,
Let's re-program the AVR-IoT WG and convert it into AVR-IoT WA
Please follow this video to convert AVR-IoT WG into AVR-IoT WA or vice versa


After change the firmware from WG to WA, click the "CLICK-ME.HTM" file in CURIOSITY drive.
if you redirected to the Microchip AWS dasbhoard (See image below) , it means you are success convert your board into AW type

GET ACCESS ID + SECRET KEY & Connect Board with personal AWS IoT Core

Go to this website https://aws.amazon.com/iot-core/
Create an account & input your CC for payment.
1619407768744.png


When you already have an account, it's time to setting our AWS to connect into the board.

Go to https://console.aws.amazon.com/iam/home#/home
click Policies menu on the left bar and click Create Policy (Blue button)
1619407788505.png



after you clicked the button it will show new window, navigate to JSON tab and fill it with this code
Policy Code:
JSON:
{
        "Version": "2012-10-17",
        "Statement": [
            {
                "Sid": "VisualEditor0",
                "Effect": "Allow",
                "Action": [
                    "lambda:CreateFunction",
                    "iot:*",
                    "iam:CreateRole",
                    "lambda:GetFunctionConfiguration",
                    "iam:AttachRolePolicy",
                    "iam:PutRolePolicy",
                    "iam:PassRole",
                    "iam:DetachRolePolicy",
                    "iam:DeleteRolePolicy",
                    "lambda:DeleteFunction",
                    "iam:GetRole",
                    "lambda:ListFunctions",
                    "lambda:GetFunction",
                    "iam:DeleteRole",
                    "cloudformation:DescribeStacks",
                    "lambda:UpdateFunctionCode",
                    "lambda:AddPermission",
                    "cloudformation:CreateStack",
                    "cloudformation:DeleteStack",
                    "lambda:RemovePermission",
                    "iam:GetRolePolicy"
                ],
                "Resource": "*"
            }
        ]
    }
1619407837712.png


1619407917765.png

click next until you find the last box and enter name

1619407948251.png

click create policy and make sure it is success..
1619408003480.png



after policy created. it's time to create user
1619408037780.png



click Add user button and this window will shows
1619408058407.png



type the name & don't forget to check Programmatic access
(It's important, because this user will be used as our setting to make the board connected to the AWS )

when user have been created , there is notification like this
1619408076978.png


make a note for the access Key ID and secret access key,
its will be used in next process.

It's time to download supported software
Download CLI AWS and istall it (It used as support plugin)
https://aws.amazon.com/cli/

Download IoTProvision and extract it into known path
http://www.microchip.com/mymicrochip/filehandler.aspx?ddocname=en1001525

Open CMD / powershell
and navigate into extracted file and type aws configure
input access key ID & secret access key from previous user you created.
1619408101813.png


btw make sure the region name is same with your region aws user, I made a mistake setting the region and than I changed it with correct one
1619408116670.png



after aws configure command done,
Plug in your board into your pc/laptop
and type this command
.\iotprovision-bin.exe -c aws -m mar --force

It will reprogram the board and make our board connected into our AWS IoT Core server.
wait until the programming process is done like picture below
1619408136643.png



now our board already migrated from sandbox account into personal/private account

Check the board , is it success connect to AWS IoT core or it fail?

Go to https://aws.amazon.com/iot-core/
click manage -> things to get our device id


So, in the backend, when we run the provisioning tool and program our board, it parralelly created this id & topic automatically.
note the id and navigate to test menu on the box type {id}/sensors and click subscribe
1619408154587.png



after you click subscribe button
scroll down the page and if all the configurations are correct. the data from board will send to the cloud in this case in our AWS IoT Core
1619408172072.png



It works......!!! You can see the Ligth & Temp data from the board

UPDATE BOARD FIRMWARE TO FOLLOW PROJECT CONCEPT - Next post

Blog entry information

Author
NoobIsHere
Views
138
Last update

More entries in Design Contest

Share this entry

Top