RoadTest: Renesas CAT-M1 Cloud Kit CK-RA6M5
Author: work14
Creation date:
Evaluation Type: Development Boards & Tools
Did you receive all parts the manufacturer stated would be included in the package?: True
What other parts do you consider comparable to this product?: The CK-RX65N Cloud Kit for RX65N Microcontroller is comparable to this CK-RA6M5 product.
What were the biggest problems encountered?: The CK-RA6M5 board under review was lacking the IMU components due to availability issues. Some sample software was missing from the Renesas website, and Renesas engineers acknowledged the issue with promised resolution in the near future. Some of the available sample software requires a specific version of the SFP that is not the latest available, and care must be paid to this detail. The available documentation does not specify that serial port 5 is connected to the serial-to-USB port that connects to the external world.
Detailed Review:
The results and take away of the CK-RA6M5 with RYZ014A Pmod Cloud Kit RoadTest are itemized below:
Appreciation to Renesas and element14 for providing the opportunity to review the CK-RA6M5 cloud kit. The overall RoadTest review program is a great way to experience and learn about new hardware and software solutions, and to provide service to the community by submitting a review of the products.
The RoadTest program is the element14 community’s flagship product review program. Testers obtain a product to experiment and to provide element14 a written review of their experiences with the product. The following are important points pertaining to this program.
RoadTesters have 60 days from the receipt of the product to complete testing and review writing on element14.
The review must be filed on the special element14 Roadtest form.
Roadtesters who do not complete their reviews will not be eligible to participate in the program in the future.
This particular RoadTest pertains to the Renesas CAT-M1 Cloud Kit CK-RA6M5. Building a simple IOT project is a way to test this product. The board has a number of sensors that will be tested and reviewed. This testing program will also connect the board to the Cloud. This review will share our experience of the product.
With Renesas’ (a) CK-RA6M5 cloud kit, (b) LTE Cellular CAT-M1 module RYZ014A and (c) ethernet network connectivity options the kit:
With Renesas Flexible Software Package (FSP) the kit:
Additional material available on the following web pages
First Sixty Seconds | First Five Minutes | First Hour | First 24 Hours |
---|---|---|---|
|
|
|
|
The CK-RA6M5 cloud kit enables users to securely connect to the cloud and explore the features of the Cortex®-M33 based RA6M5 group of MCUs and cloud services. In particular, the cloud and IoT services from AWS are used for data analytics and IoT device management.
This RoadTest will (1) review Renesas’ LTE Cellular CAT-M1 module RYZ014A and ethernet network connectivity options. We will also (2) review Renesas Flexible Software Package (FSP) and its complete software stack support using FreeRTOS with the hope to efficiently develop cloud solutions and in a short time. We will (3) test the cloud kit equipped with Renesas’ RYZ014A Cat-M1 module which is a certified LTE cellular module that offers the ability to establish wireless connection between MCUs and cloud services quickly and securely without a gateway.
Renesas claims -- and this RoadTest will test -- that the kit is (4) ready to connect to global cloud service providers such as AWS Cloud and IoT services. The CK-RA6M5 with RYZ014A Pmod Cloud Kit is designed to run on AWS (Amazon Web Services) FreeRTOS using FSP (Flexible Software Package). Once connected to AWS IoT Core, we will (5) test access to the Cloud and IoT services from AWS for data analytics and IoT device management.
In summary, this RoadTest will:
The CK-RA6M5 aims to simplify the process of IoT solution prototyping. The board contains a suite of sensors that can be programmed with the Renesas Flexible Software Package (FSP). A key feature of this kit is the RYZ014A Pmod that provides cellular connectivity to the RA6M5. The following links provides an overview of this package and its key features, benefits and use cases of using cellular connections.
Simplify Cellular-to-Cloud Development with the Renesas Cloud Kits CK-RA6M5 and CK-RX65N
• LTE CAT-M1 with RYZ014A Pmod
• Ethernet
• 0 Full Speed Host and Device
• Multiple on-board sensors
• 2 MEMS microphones
• 2-pin header for battery connector
• 5V input through USB or external power supply
• USB-serial converter
• Debug on-board2 Digilent Pmod (SPI/UART/I2
• C) connectors
• MCU and Pmod current measurement points
• Arduino (Uno R3) connector
The essence of the CK-RA6M5 hardware and software package consists of the following three items:
The following pictures shows the Renesas CK=RA6M5 kit as it arrived and is first opened:
The printed documentation found in the box include:
The electronic components are well packaged in anti-static bags as shown below.
The picture gallery below illustrates the various hardware components for the CK-RA6M5 kit.
{gallery}
CK-RA6M5 with RYZ014A Pmod Cloud Kit |
---|
IMAGE TITLE: CK-RA6M5 Board |
IMAGE TITLE: CK-RA6M5 with Connected Pmod |
IMAGE TITLE: CK-RA6M5 Cloud Kit |
Key components called out on the RA6M5 |
Expansion connectors on the RA6M5 and RX65N cloud kits |
The following link to the quick start guide offers an overview of the power up and interacting with the CK-RA6M5.
Cloud Kit for RA6M5 Microcontroller Group CK-RA6M5 with RYZ014A Pmod Quick Start Guide
This RoadTest uses Linux OS instead of the Windows OS environment. Teaching how to use Linux OS is beyond the scope of this review. Henceforward some experience with the Linux OS is expected.
After first connecting the CK-RA6M5 Board to the host computer via the on-boad debug USB Connector J14 we execute the Linux dmesg command in a terminal to find information regarding the board:
simon@debian:~$ sudo dmesg [ 5230.478494] usb 2-3: new full-speed USB device number 5 using xhci_hcd [ 5230.628542] usb 2-3: New USB device found, idVendor=1366, idProduct=0101, bcdDevice= 1.00 [ 5230.628549] usb 2-3: New USB device strings: Mfr=1, Product=2, SerialNumber=3 [ 5230.628569] usb 2-3: Product: J-Link [ 5230.628572] usb 2-3: Manufacturer: SEGGER [ 5230.628575] usb 2-3: SerialNumber: 000831017019
Next we connect the USB to Serial Connector J20. This time we get:
simon@debian:~$ sudo dmesg [ 8414.580198] usb 2-4: new full-speed USB device number 6 using xhci_hcd [ 8414.735121] usb 2-4: New USB device found, idVendor=045b, idProduct=8111, bcdDevice=10.00 [ 8414.735129] usb 2-4: New USB device strings: Mfr=1, Product=2, SerialNumber=5 [ 8414.735133] usb 2-4: Product: Renesas RSK USB Serial Port [ 8414.735136] usb 2-4: Manufacturer: Renesas Electronics Corporation [ 8414.735139] usb 2-4: SerialNumber: 0000000000001 [ 8414.737079] cdc_acm 2-4:1.0: ttyACM0: USB ACM device
The above information tells us that the RA6M5 USB to Serial registers as /dev/ttyACM0. In Linux we use screen to communicate via the serial port as shown below.
simon@debian:~$ sudo screen /dev/ttyACM0 115200 > Select from the options in the menu below: MENU 1. Get FSP version 2. Data flash 3. Get UUID 4. Get CATM Info 5. Start Application 6. Help
At this point we are successfully interacting with the CK-RA6M5 board.
The heart of the software solution for Renesas CK-RA6M5 Cloud Kit is the Flexible Software Package (FSP). Various flavors (including Linux) of the FSP can be found at the Renesas GitHub FSP Development Site. The FSP is an enhanced software package designed to provide easy-to-use, scalable, high-quality software for embedded system designs using Renesas RA Family of Arm Microcontrollers. The FSP with e² studio Installer (Platform Installer) should install the following soft:ware components:
An informative link for the FSP follows:
Real-Time OS Program Development that Even a Super Beginner Can Do
The e² Studio tool is based on the popular Eclipse IDE. The e² Studio covers all development processes, from the downloading of sample code to debugging. The The e² Studio is included in the Flexible Software Package (FSP).
The GCC toolchain used in the RoadTest can be found in GNU Arm Embedded Toolchain Downloads page. The latest GNU tools require a license package that makes the installation process a little bit more involved.
The Segger J-Link drivers worked flawlessly. We installed the stand alone version for Linux, and test it independently before debugging with the e² Studio.
To Segger J-Link / J-Trace tools, first download the appropriate driver. For the Linux OS we have:
$ sudo apt install JLink_Linux_V784_x86_64.deb
The result is the software installed in /usr/bin
simon@debian:/usr/bin$ ls JL* JLinkConfig JLinkGUIServer JLinkRemoteServer JLinkRTTLoggerExe JLinkSWOViewer_CL JLinkConfigExe JLinkGUIServerExe JLinkRemoteServerCLExe JLinkRTTViewer JLinkSWOViewerCLExe JLinkExe JLinkLicenseManager JLinkRemoteServerExe JLinkRTTViewerExe JLinkSWOViewerExe JLinkGDBServer JLinkLicenseManagerExe JLinkRTTClient JLinkSTM32 JLinkGDBServerCLExe JLinkRegistration JLinkRTTClientExe JLinkSTM32Exe JLinkGDBServerExe JLinkRegistrationExe JLinkRTTLogger JLinkSWOViewer
The device target for the CK-RA6M5 is R7FA6M5BH. This can be obtained from the default Quick Start Example Project embedded in the kit upon first power on. This MCU type is also found in the ck-ra6m5 Quick Start Guide under the kit overview section. In this document relevant MCU features are listed as:
simon@debian:/usr/bin$ ./JLinkExe SEGGER J-Link Commander V7.84 (Compiled Dec 14 2022 16:00:29) DLL version V7.84, compiled Dec 14 2022 16:00:03 Connecting to J-Link via USB...O.K. Firmware: J-Link OB-S124 compiled Dec 7 2022 12:53:45 Hardware version: V1.00 J-Link uptime (since boot): 0d 01h 00m 36s S/N: 831017019 VTref=3.300V Type "connect" to establish a target connection, '?' for help J-Link>connect Please specify device / core. <Default>: R7FA6M5BH Type '?' for selection dialog Device>R7FA6M5BH Please specify target interface: J) JTAG (Default) S) SWD T) cJTAG TIF>S Specify target interface speed [kHz]. <Default>: 4000 kHz Speed> Device "R7FA6M5BH" selected.
The result of the successful connection is shown below.
Connecting to target via SWD ConfigTargetSettings() start Configuring FlashDLNoRMWThreshold=0x200 in order to make sure that option bytes programming is done via read-modify-write ConfigTargetSettings() end Found SW-DP with ID 0x6BA02477 DPIDR: 0x6BA02477 CoreSight SoC-400 or earlier Scanning AP map to find all available APs AP[2]: Stopped AP scan as end of AP map has been reached AP[0]: AHB-AP (IDR: 0x84770001) AP[1]: APB-AP (IDR: 0x54770002) Iterating through AP map to find AHB-AP to use AP[0]: Core found AP[0]: AHB-AP ROM base: 0xE00FE000 CPUID register: 0x410FD214. Implementer code: 0x41 (ARM) Feature set: Mainline Found Cortex-M33 r0p4, Little endian. FPUnit: 8 code (BP) slots and 0 literal slots Security extension: implemented Secure debug: enabled CoreSight components: ROMTbl[0] @ E00FE000 [0][0]: E0044000 CID B105900D PID 005BB906 DEVARCH 00000000 DEVTYPE 14 CTI (?) [0][1]: E0047000 CID B105900D PID 003BB908 DEVARCH 00000000 DEVTYPE 12 CSTF [0][2]: E0048000 CID B105900D PID 001BB961 DEVARCH 00000000 DEVTYPE 21 ETB [0][3]: E0049000 CID B105F00D PID 001BB101 TSG [0][4]: E0040000 CID B105900D PID 000BBD21 DEVARCH 00000000 DEVTYPE 11 TPIU [0][5]: E00FF000 CID B105100D PID 000BB4C9 ROM Table ROMTbl[1] @ E00FF000 [1][0]: E000E000 CID B105900D PID 000BBD21 DEVARCH 47702A04 DEVTYPE 00 Cortex-M33 [1][1]: E0001000 CID B105900D PID 000BBD21 DEVARCH 47701A02 DEVTYPE 00 DWT [1][2]: E0002000 CID B105900D PID 000BBD21 DEVARCH 47701A03 DEVTYPE 00 FPB [1][3]: E0000000 CID B105900D PID 000BBD21 DEVARCH 47701A01 DEVTYPE 43 ITM [1][5]: E0041000 CID B105900D PID 002BBD21 DEVARCH 47724A13 DEVTYPE 13 ETM [1][6]: E0042000 CID B105900D PID 000BBD21 DEVARCH 47701A14 DEVTYPE 14 CSS600-CTI SetupTarget() start Determining TrustZone configuration... Secure Debug: Enabled (SSD) Determining currently configured transfer type by reading the AHB-AP CSW register. --> Correct transfer type configured. Done. SetupTarget() end Memory zones: Zone: Default Description: Default access mode Cortex-M33 identified. J-Link>
This exercise gives us confidence that we have a working JLink connection to the larget.
The ARM online page GNU Arm Embedded Toolchain contains the appropriate ARM toolchain to download. In the case for this present RoadTest, the toolchain to downloaded was
gcc-arm-none-eabi-10.3-2021.10-x86_64
This GNU toolchain above is independent of the Renesas FSP package. In this present RoadTest work using the Linux OS, the FSP toolchain integration did not work, and the above independent toolchain has to be used instead. To add the toolchain, the steps outlined below in section First Run of the e2 Studio below shows the details of how to do this.
Disclaimer: Note that all development for this current RoadTest was done in the Debian Linux Operating System.
The following link provides an introduction to the FSP in some detail.
The document
I-002A Fundamentals of FSP (Non-Trustzone, FSP3.6.0).pdf
is of particular interest. What follows is an instance of some of the points made in the above FSP Lab. A caveat is the this present RoadTest work was done in Linux OS in its entirety.
Download the appropriate FSP at this page:
https://github.com/renesas/fsp/releases
This will take the user to the latest version of the FSP. Please notice that some of the example software work with an earlier version of the FSP since some of the software stack are not updated for the latest FSP version. Updating the software stacks was a more arduous task than using an earlier version of the FSP. The most up-to-date version of the FSP that worked with the software used in this RoadTest was FSP version 3.8 found in this link below and illustrated in the figure underneath the link.
https://github.com/renesas/fsp/releases/tag/v3.8.0
After download of the proper version of the FSP, in Linux we have:
setup_fsp_v3_8_0_e2s_v2022-04.AppImage setup_fsp_v4_2_0_e2s_v2022-10.AppImage simon@debian:~/Downloads$
In the above we have the latest FSP and the 3.8 version of the FSP that is the latest version compatible with the software tested in the RoadTest.
Next, install the software by executing the following:
simon@debian:~/Downloads$ ./setup_fsp_v4_2_0_e2s_v2022-10.AppImage
Follow the installation instructions. Carefully select the GCC ARM Embedded toolset as an installation option as shown below.
Before installing the FSP, verify that the GCC ARM Embedded toolset will be installed as shown in the figure below.
Start the e² Studio via the command line using sudo command.
simon@debian:~/renesas/ra/e2studio_v2022-10_fsp_v4.2.0/eclipse$ ls -l total 576 -rw-r--r-- 1 simon simon 232774 Jan 8 11:20 artifacts.xml drwxr-xr-x 13 simon simon 4096 Jan 8 12:34 configuration drwxr-xr-x 2 simon simon 4096 Jan 8 11:18 dropins -rwxr-xr-x 1 simon simon 87960 Oct 13 14:10 e2studio -rw-r--r-- 1 simon simon 511 Jan 8 12:31 e2studio.20230108123101.ini -rw-r--r-- 1 simon simon 491 Jan 8 12:31 e2studio.ini drwxr-xr-x 101 simon simon 12288 Jan 8 11:20 features -rwxr-xr-x 1 simon simon 138674 Oct 13 14:10 icon.xpm -rw-r--r-- 1 simon simon 9260 Sep 13 13:14 notice.html drwxr-xr-x 5 simon simon 4096 Jan 8 12:33 p2 drwxr-xr-x 34 simon simon 73728 Jan 8 11:20 plugins drwxr-xr-x 2 simon simon 4096 Jan 8 11:18 readme simon@debian:~/renesas/ra/e2studio_v2022-10_fsp_v4.2.0/eclipse$ ./e2studio
The e² Studio complains that there is no toolchain available.
To fix this issue, proceed to Help > Add Renesas Toolchain then select Download,
If this fails, then proceed to Help > Add Renesas Toolchain then select Add. This time navigate to the place where the toolchain resides, select the toolchain in your filesystem and apply the selection.
To verify correct compiler settings, quit the e² Studio. Start again as before, and verify that no warning is shown which will indicate that the GNU toolchain has been properly integrated.
The following is a link to the Renesas knowledge base where developer can find helpful information. In this case we focus in the RA Family tab to find ready help.
Renesas online documentation is excellent and nearly comprehensive. Renesas has done a great job at documenting the software and the hardware; all that is needed is access to hardware, the internet and time. Available documentation is impressive in breath and depth. Even then some documentation is not available such as documentation related to examples that applies to the latest CK-RA6M5 hardware, but this is understandable. Even then, available documentation and project examples for similar boards are adaptable to the CK-RA6M5. The following are links to some essential online documentation.
RA Flexible Software Package Documentation
Example Project Usage Guide.pdf
Additional material available on the following web pages
Available documentation by itself makes Renesas hardware and software worth the effort. On this account, Renesas products and CK-RA6M5 kit is highly recommended. The following are some points that pertains to the available software.
The following is a picture of the FSP development components and how they integrate with the CK-RA6M5 and the cloud.
To get a project running the developer needs four essential steps.
More details can be found in the sections below. The following link lists Introductory RA and FSP courses:
RA and FSP Curriculum: Introductory Courses
Renesas provides excellent documentation on hardware, software, and knowledge base. Renesas has labs available for learning, testing and experimenting. The following link is a landing page for older version of FSP, but it is still relevant for more recent versions. The labs are also meant to be for other hardware kits (EK-RA6M3) other than the CK-RA6M5, but they are adaptable to the kit under review.
Quick FSP 1.0 Labs: Available Labs
A first test for both the hardware and the software is to create an equivalent 'Hello World" hardware/software integration demonstration project. Renesas provides a tutorials and knowledge base labs to do just this in the following link:
Creating Blinky from Scratch Lab
For the CK-RA6M5 and the e2Studio with FSP, the following steps will work. More detailed guidance can be found in the links above.
1. Start a new project
2. Care regarding choosing the board. In our case is the R7FA6M5BH board.
3. Care must be given to selecting the appropriate compiler toolchain. In our case it is the GNU ARM 10.3.1.20210824.
4. Finish the other selections as appropriate.
5. Go to the Project Explorer window of e2 studio and select the configuration.xml file. In the graphical editor in the mid-pane select the Clocks pane (18 in the figure below), ensure that the PLL source is set to HOCO (19 in the figure below). Now click the Generate Project Content button in the top right corner (20).
6. Follow the instructions in the links above in this section to compile the code. The compilation result should be something as shown in the figure below.
7. Right-Click on the name of the program and select Debug As to create a new Debug configuration as shown below.
8. Give care to select the proper hardware to debug when asked. In our case the hardware is the R7FA6M5BH board as shown below.
9. The debug process will continue and the program will stop at a hardware breakpoint. Press the Resume arrow (28 below) to continue with the debug process.
10. The LEDs in the board should be blinking now.
This lab session guides you through the process of using the Segger Real Time Transfer (RTT) function in an RA FSP Project within e2 studio. The link is shown below.
This project needs the Segger J-Link and Segger RTT tools from the product landing page below. The steps on how to do this have been reviewed and documented earlier in this RoadTest.
https://www.segger.com/downloads/jlink/
Once installed, the Segger J-Link RTT Viewer should be available, as seen below. Open the RTT Viewer to bring it up on your PC. The configuration window first appears as shown below.
Select Existing Session and a Search Range for the RTT Control Block as shown above. Reader should be aware that the RTT range was not auto-detect in this particular board. For the CK-RA6M5 board we had to enter the address range manually (0x20000000 0x8000). This is also specified in the Renesas Example Project Usage Guide (look for the link down in this page) in section "6.1 Limitations in connecting with J-Link RTT Viewer v7.68b or later". The recommendation is to do the following:
Search _SEGGER_RTT variable in the map file, generated upon successfully building a configuration of an Example Project, which is by default located in the address space for On-chip SRAM. Apply a search range within the first 32kB of SRAM Memory. Adding multiple ranges may help.
Upon successful connection to an on-going debug session, the RTT outputs should be visible in the RTT Viewer as shown below.
This project initializes the UART with baud rate of 115200 bps. Open Serial Terminal with this baud rate value and provide Input ranging from 1 - 100 to set LED Intensity. See the RTT output below.
The following pictures show the LED output set at 10, 50 and 100 respectively.
The following link is the home site for experimenting with the cloud kit.
Cloud Kit Based on RA6M5 MCU Group
A summary of pertinent documents are below:
AWS Dashboard for CK-RA6M5 and CK-RX65N Application Note
Cloud Kit for RA6M5 Microcontroller Group CK-RA6M5 with RYZ014A Pmod Quick Start Guide
RA AWS MQTT/TLS Cloud Connectivity Solution - Cellular
RA AWS MQTT/TLS Cloud Connectivity Solution - Ethernet
The available sample software (links found above) for the connectivity test was compatible with FSP version 3.7.0 to 3.8.0. FSP versions above 3.8.0 implement changes to the software stack that render the example software unable to compile. It is possible to troubleshoot the software an upgrade to the latest FSP, but this is beyond the scope of this review. For the purpose of this RoadTest it is necessary to downgrade to FSP version 3.8.0 for the following examples. All of the previous tests compile and run equally successfully in this version of the FSP.
When compiling some of the software we may encounter errors such as the one shown in the picture below
In Linux OS we can find the problem by looking for the files that are not found as shown below:
simon@debian:~/e2_studio/workspace38/aws_ck_ra6m5_ethernet_app$ find . -name FreeRTOS*
./Debug/ra/aws/FreeRTOS
./Debug/ra/aws/FreeRTOS/FreeRTOS
./Debug/ra/aws/FreeRTOS/FreeRTOS-Plus
./Debug/ra/aws/FreeRTOS/FreeRTOS-Plus/Source/FreeRTOS-Plus-TCP
./ra_cfg/aws/FreeRTOSIPConfig.h
./ra_cfg/aws/FreeRTOSConfig.h
It is now easy to see that the e2 studio configuration tools make a mistake when writing the header files automatically. The autogenerated files expect a name FreeRTOSconfig.h for a file, but the actual file is named FreeRTOSConfig.h. This is a typo and a bug that needs correction from Renesas. In our case we simple correct the error by correcting the typo and recompile. Repeat as necessary.
In another instance, the compile step fails because is missing a file named iot_crypto.h. In this case the solution is to add the crypto stack as illustrated in the figure below.
If the file "AWS_clientcredential.h is missing, the the following software sacks may be missing as well. Select the stack, re-generate the software, and redo.
To access Renesas AWS cloud dashboard, the kit must be registered at renesas.cloud-ra-rx.com . Follow the instructions in the AWS Dashboard for CK-RA6M5 and CK-RX65N Application Note to provision the device and have access to Renesas AWS dashboard.
NOTE: Sign up at https://www.renesas.cloud-ra-rx.com/ with an email that was not used previously for signing up for an AWS account. This is important to do. Follow the instructions in the application note:
AWS Dashboard for CK-RA6M5 and CK-RX65N Application Note
Cloud Kit for RA6M5 Microcontroller Group CK-RA6M5 with RYZ014A Pmod Quick Start Guide
RA AWS MQTT/TLS Cloud Connectivity Solution - Cellular
RA AWS MQTT/TLS Cloud Connectivity Solution - Ethernet
Cloud Kit Based on RA6M5 MCU Group
https://cloud-ra-rx.awsapps.com/start#/
To obtain the device UUID, compile and run one of the Ethernet or Cellular applications below. Once the application compile and runs, the following interactive menu allows the user to obtain the information needed:
MENU 1. Get FSP version 2. Data flash 3. Get UUID 4. Start Application 5. Help
Follow the instructions in the Ethernet or Cellular application to register to Renesas AWS. Once registration has been successful as shown in the figure below, we get access to the provisioning certificate that we must upload to the CK-RA6M5 board.
For the Linux OS we could use three tools to upload the certificates and other related information unto the CK-RA6M.
1. screen /dev/ttyACM0 115200
This command allows us to interact with the board via the command line. It is simple and fast. However, the screen output gets corrupted at times, and therefore this is not a reliable tool to use to upload sensitive data.
2. putty
Putty is a popular tool used in the Windows world. The Linux version works well, but in the Linux OS this tool can prove difficult to use to upload data to the board.
3. hterm
The following is a link to the Hterm developer site.
https://www.der-hammer.info/pages/terminal.html
This tool proved to be the most reliable to upload the provisioning files to the CK-RA6M5 board.
The user in Linux should enable the user account to be part of the usergroput to which the serial device belongs. In the Linux case the serial port access is via the USB port:
/dev/ttuACM0
To find the usergroup to which this port belong we type at the command line:
simon@debian:~$ ls -l /dev/ttyACM0 crw-rw----+ 1 root dialout 166, 0 Jan 16 02:00 /dev/ttyACM0
Next we verify that the user does not belong to this usergroup already
simon@debian:~$ id -Gn simon simon adm cdrom floppy sudo audio dip video plugdev netdev bluetooth lpadmin scanner
Next add user to the proper usergroup
simon@debian:~$ sudo usermod -a -G dialout simon
Verify that the user is a member of the dialout usergroup.
simon@debian:~$ id -Gn simon simon adm dialout cdrom floppy sudo audio dip video plugdev netdev bluetooth lpadmin scanner
Restart Linux OS. Now all terminal emulator applications will work with the serial port without any issues. Use one of the methods mentioned above to interact with the CK-RA6M5 kit. Follow the instructions in the application note below and the links in the next two sections to upload the provisioning files to the board and to access the AWS dashboard.
AWS Dashboard for CK-RA6M5 and CK-RX65N Application Note
It is very important to pay attention to details and to follow the instructions in the various notes.
The following link contains the application note and the source code for this program.
RA AWS MQTT/TLS Cloud Connectivity Solution - Ethernet
Cloud Kit Based on RA6M5 MCU Group
AWS Dashboard for CK-RA6M5 and CK-RX65N Application Note
The source guide (1) will contain details that guide the user through the necessary steps. The source code (2) should be downloaded and compiled as per the above instructions.
Import the software (2 in the above figure) to the e2studio workspace and compile. For the purpose of the RoadTest we limit to post the results. The relevant necessary steps to compile and run the software have been documented in various sessions above.
The following illustrate that the process outlined in the various Renesas documents linked above result in successful upload to the CK-RA6M5 board of the credential information necessary for IoT communications.
> Select from the options in the menu below: MENU 1. Get FSP version 2. Data flash 3. Get UUID 4. Start Application 5. Help 1. GET FSP VERSION 3.8.0 > Press space bar to return to MENU 3. GET UUID RA MCU 128-bit Unique ID (hex) : 2xxx-5xxx-3xxx-4xxx > Press space bar to return to MENU 2. DATA FLASH a) Info b) Write Certificate c) Write Private Key d) Write MQTT Broker end point e) Write IOT Thing name f) Read Flash g) Check credentials stored in flash memory h) Help > Press space bar to return to MENU CHECK CREDENTIALS STORED IN DATA FLASH Certificate saved in data flash is verified and successful Private key saved in data flash is verified and successful MQTT end point saved in data flash is verified and successful IOT thing name saved in data flash is verified and successful
The following steps were successfully performed as per Renesas instructions:
Certificate saved in data flash is verified and successful
Private key saved in data flash is verified and successful
MQTT end point saved in data flash is verified and successful
IOT thing name saved in data flash is verified and successful
Once the application runs we can see that it connects to the the Renesas AWS successfully as detailed below.
Starting AWS cloud Application.... ******************************************************************************** * Renesas FSP Application Project for AWS Core MQTT * * Application Project Version 1.2 * * Flex Software Pack Version 3.8.0 * ******************************************************************************** Refer to Application Note for more details on Application Project and FSP User's Manual for more information about AWS Core MQTT ******************************************************************************** -------------------------------------------------------------------------------- Ethernet adapter Configuration for Renesas CK-RA6M5: Pre IP Init -------------------------------------------------------------------------------- waiting for network link up -------------------------------------------------------------------------------- Ethernet adapter Configuration for Renesas CK-RA6M5: Post IP Init -------------------------------------------------------------------------------- Ethernet adapter for Renesas CK-RA6M5: Description . . . . . . . . . . . : Renesas CK-RA6M5 Ethernet Physical Address. . . . . . . . . : 00-x-x-x-x-x DHCP Enabled. . . . . . . . . . . : Yes IPv4 Address. . . . . . . . . . . : 10.x.x.x Subnet Mask . . . . . . . . . . . : 255.255.255.0 Default Gateway . . . . . . . . . : 10.x.1.1 DNS Servers . . . . . . . . . . . : 10.x.1.1 DNS Lookup for "a3p0zg4970tbb2-ats.iot.us-east-1.amazonaws.com" is : 54.83.24.232 Successful MQTT Connection to the end point a3p0zg4970tbb2-ats.iot.us-east-1.amazonaws.com Device is Ready for Publishing and Subscription of Messages HS3001 sensor setup success OB1203 sensor setup success ZMOD4410 sensor setup success ZMOD4510 sensor setup success ICM30498 sensor setup success ICM20948 sensor setup success ICP data 083.390 ICP data 99494.812 Msg Sequence Number = 10 Topic Received from Cloud for OB1203 Sensor Data OB1203 data 081.000 OB1203 data 041.000 OB1203 data 005.000 OB1203 data 000.000 Msg Sequence Number = 11 Topic Received from Cloud for IAQ Sensor Data IAQ data tvoc 000.017 IAQ data etoh 000.009 IAQ data eco2 400.176 Msg Sequence Number = 12 Topic Received from Cloud for OAQ Sensor Data OAQ data 000.000 Msg Sequence Number = 13 Topic Received from Cloud for HS3001 Sensor Data HS3001 data 017.379 HS3001 data 081.571 Msg Sequence Number = 14 Topic Received from Cloud for ICM Sensor Data ICM data acce 000.000 ICM data acce 000.000 ICM data acce 8192.000 ICM data mag 000.000 ICM data mag 000.000 ICM data mag 000.000 ICM data gyr 000.000 ICM data gyr 000.000 ICM data gyr 001.000 Msg Sequence Number = 15 Topic Received from Cloud for ICP Sensor Data ICP data 082.910 ICP data 99499.593 Msg Sequence Number = 16 Topic Received from Cloud for OB1203 Sensor Data OB1203 data 081.000 OB1203 data 041.000 OB1203 data 005.000 OB1203 data 000.000 Msg Sequence Number = 17 Topic Received from Cloud for IAQ Sensor Data IAQ data tvoc 000.015 IAQ data etoh 000.008 IAQ data eco2 400.000 Msg Sequence Number = 18 Topic Received from Cloud for OAQ Sensor Data OAQ data 000.000 Msg Sequence Number = 19 Topic Received from Cloud for HS3001 Sensor Data HS3001 data 017.920 HS3001 data 081.085 Msg Sequence Number = 20 Topic Received from Cloud for ICM Sensor Data ICM data acce 000.000 ICM data acce 000.000 ICM data acce 8192.000 ICM data mag 000.000 ICM data mag 000.000 ICM data mag 000.000 ICM data gyr 000.000 ICM data gyr 000.000 ICM data gyr 001.000 Msg Sequence Number = 21 Topic Received from Cloud for ICP Sensor Data ICP data 082.472 ICP data 99497.015 Msg Sequence Number = 22 Topic Received from Cloud for OB1203 Sensor Data OB1203 data 081.000 OB1203 data 041.000 OB1203 data 005.000 OB1203 data 000.000 SPO2 : 88 Heart rate : 41 breath rate : 0 perfusion_index : 0 SPO2 : 88 Heart rate : 41 breath rate : 0 perfusion_index : 0 SPO2 : 88 Heart rate : 41 breath rate : 0 perfusion_index : 0 SPO2 : 88 Heart rate : 41 breath rate : 0 perfusion_index : 0 SPO2 : 87 Heart rate : 41 breath rate : 0 perfusion_index : 0 SPO2 : 85 Heart rate : 41 breath rate : 0 perfusion_index : 0
The program connects to the AWS MQTT broker successfully as indicated in this message extract below
DNS Lookup for "a3p0zg4970tbb2-ats.iot.us-east-1.amazonaws.com" is : 54.83.24.232 Successful MQTT Connection to the end point a3p0zg4970tbb2-ats.iot.us-east-1.amazonaws.com Device is Ready for Publishing and Subscription of Messages
This board version does not have an IMU, and therefore the IMU sensor data is zero as shown below.
Topic Received from Cloud for ICM Sensor Data ICM data acce 000.000 ICM data acce 000.000 ICM data acce 8192.000 ICM data mag 000.000 ICM data mag 000.000 ICM data mag 000.000 ICM data gyr 000.000 ICM data gyr 000.000 ICM data gyr 001.000
All other sensors work as expected as per the recorded data. The CK-RA6M5 board behaves now as an IoT sensor.
For the Cellular application we use the sample software and related documentation presented in this link below.
RA AWS MQTT/TLS Cloud Connectivity Solution - Cellular
Cloud Kit Based on RA6M5 MCU Group
AWS Dashboard for CK-RA6M5 and CK-RX65N Application Note
The source guide (1) will contain details that guide the user through the necessary steps. The source code (2) should be downloaded and compiled as per the above instructions.
The first step after successful compilation and run on the board is to collect the necessary data from the board (detailed numbers have been omitted for security reasons).
4. CAT-M INFORMATION a) IMEI: +CEREG: 5,"xx","xx",7 b) ICCID: xx 3. GET UUID RA MCU 128-bit Unique ID (hex) : 2dxx-xx-xx-xx
Next we go to the "renesas.micro.ai" to activate the SIM card with this information. Successful registration of the cellular hardware results in a screen as shown below. At this point the Cellular module is ready to work.
We check the credentials on the board to ensure that all has been done well and the board is ready for communication.
CHECK CREDENTIALS STORED IN DATA FLASH Certificate saved in data flash is verified and successful Private key saved in data flash is verified and successful MQTT end point saved in data flash is verified and successful IOT thing name saved in data flash is verified and successful
The following log illustrates the successful connection of our IoT node with the cloud via cellular modem.
******************************************************************************** * Renesas FSP Application Project for AWS Core MQTT * * Application Project Version 1.2 * * Flex Software Pack Version 3.8.0 * ******************************************************************************** Refer to Application Note for more details on Application Project and FSP User's Manual for more information about AWS Core MQTT ******************************************************************************** **** Cellular SIM okay **** Network CS registration status received: 2. Network PS registration status received: 0. Network CS registration status received: 2. Network PS registration status received: 2. Network CS registration status received: 2. Network PS registration status received: 5. Network CS registration status received: 5. Network PS registration status received: 5. >>> Cellular module registered <<< >>> Cellular module registered, IP address "10.xx.xx.xx" <<< Cellular Setup Done TLS Connect Success 0 Successful MQTT Connection to the end point a3p0zg4970tbb2-ats.iot.us-east-1.amazonaws.com Device is Ready for Publishing and Subscription of Messages HS3001 sensor setup success OB1203 sensor setup success ZMOD4410 sensor setup success ZMOD4510 sensor setup success ICM30498 sensor setup success ICM20948 sensor setup success Topic Received from Cloud for IAQ Sensor Data IAQ data tvoc 000.000 IAQ data etoh 000.000 IAQ data eco2 000.000 Msg Sequence Number = 0 SPO2 : 78 Heart rate : 41 breath rate : 0 perfusion_index : 0 SPO2 : 76 Heart rate : 42 breath rate : 0 perfusion_index : 0 SPO2 : 75 Heart rate : 42 breath rate : 0 perfusion_index : 0 SPO2 : 75 Heart rate : 42 breath rate : 0 perfusion_index : 0 SPO2 : 76 Heart rate : 43 breath rate : 0 perfusion_index : 0 SPO2 : 74 Heart rate : 82 breath rate : 0 perfusion_index : 0 SPO2 : 72 Heart rate : 82 breath rate : 0 perfusion_index : 0 Topic Received from Cloud for OAQ Sensor Data OAQ data 000.000 SPO2 : 71 Heart rate : 82 breath rate : 0 perfusion_index : 1 SPO2 : 70 Heart rate : 79 breath rate : 0 perfusion_index : 1 SPO2 : 68 Heart rate : 73 breath rate : 0 perfusion_index : 1 SPO2 : 66 Heart rate : 64 breath rate : 0 perfusion_index : 1 Msg Sequence Number = 1 SPO2 : 63 Heart rate : 60 breath rate : 0 perfusion_index : 1 SPO2 : 64 Heart rate : 58 breath rate : 0 perfusion_index : 1 SPO2 : 65 Heart rate : 58 breath rate : 0 perfusion_index : 1 SPO2 : 66 Heart rate : 62 breath rate : 0 perfusion_index : 1 SPO2 : 69 Heart rate : 60 breath rate : 0 perfusion_index : 0 SPO2 : 70 Heart rate : 61 breath rate : 0 perfusion_index : 0 SPO2 : 71 Heart rate : 61 breath rate : 0 perfusion_index : 0 SPO2 : 71 Heart rate : 62 breath rate : 0 perfusion_index : 0 SPO2 : 71 Heart rate : 60 breath rate : 0 perfusion_index : 1 SPO2 : 70 Heart rate : 58 breath rate : 0 perfusion_index : 1 SPO2 : 70 Heart rate : 56 breath rate : 0 perfusion_index : 1 SPO2 : 70 Heart rate : 55 breath rate : 0 perfusion_index : 1 Topic Received from Cloud for HS3001 Sensor Data HS3001 data 018.989 HS3001 data 082.453 Msg Sequence Number = 2 Topic Received from Cloud for ICM Sensor Data ICM data acce 000.000 ICM data acce 000.000 ICM data acce 8192.000 ICM data mag 000.000 ICM data mag 000.000 ICM data mag 000.000 ICM data gyr 000.000 ICM data gyr 000.000 ICM data gyr 001.000 Msg Sequence Number = 3 Topic Received from Cloud for ICP Sensor Data ICP data 083.414 ICP data 99557.945 Msg Sequence Number = 4 Topic Received from Cloud for OB1203 Sensor Data OB1203 data 070.000 OB1203 data 055.000 OB1203 data 000.000 OB1203 data 000.000 Msg Sequence Number = 5 Topic Received from Cloud for IAQ Sensor Data IAQ data tvoc 000.123 IAQ data etoh 000.065 IAQ data eco2 423.380 Msg Sequence Number = 6 Topic Received from Cloud for OAQ Sensor Data OAQ data 000.000 Msg Sequence Number = 7 Topic Received from Cloud for HS3001 Sensor Data HS3001 data 017.170 HS3001 data 082.111 Msg Sequence Number = 8 Topic Received from Cloud for ICM Sensor Data ICM data acce 000.000 ICM data acce 000.000 ICM data acce 8192.000 ICM data mag 000.000 ICM data mag 000.000 ICM data mag 000.000 ICM data gyr 000.000 ICM data gyr 000.000 ICM data gyr 001.000 Msg Sequence Number = 9 Topic Received from Cloud for ICP Sensor Data ICP data 083.563 ICP data 99557.648
Relevant details are the successful Cellular module registration and MQTT connection to the end point.
**** Cellular SIM okay **** Network CS registration status received: 2. Network PS registration status received: 0. Network CS registration status received: 2. Network PS registration status received: 2. Network CS registration status received: 2. Network PS registration status received: 5. Network CS registration status received: 5. Network PS registration status received: 5. >>> Cellular module registered <<< >>> Cellular module registered, IP address "10.168.253.146" <<< Cellular Setup Done TLS Connect Success 0 Successful MQTT Connection to the end point a3p0zg4970tbb2-ats.iot.us-east-1.amazonaws.com Device is Ready for Publishing and Subscription of Messages
The instructions for to access the AWS dashboard are found in the application note:
AWS Dashboard for CK-RA6M5 and CK-RX65N Application Note
Once provisioning has taken place and there is access to Reneas's landing place at:
https://renesas.cloud-ra-rx.com/dashboard/devices-list
Then please note the following in section (8) in the above application note.
After the initial admin/admin login has been done, access to the dashboard is granted seamlessly.
The graph below show data collected by the CK-RA6M5 and transmitted via the AWS MQTT/TLS Cloud Connectivity Solution via ethernet. We were able to corroborate by visual inspection that the data updated in the graph corresponded to the data collected by the CK-RA6M5.
The graph below show data collected by the CK-RA6M5 and transmitted via the AWS MQTT/TLS Cloud Connectivity Solution via the cellular RYZ014A Pmod Cloud Kit. We were able to corroborate by visual inspection that the data updated in the graph corresponded to the data collected by the CK-RA6M5.
The CK-RA6M5 cloud kit with LTE Cellular CAT-M1 module RYZ014A is a great hardware that is well integrated with Renesas Flexible Software Package. The following points are worth some consideration.
The following are results and take away of the CK-RA6M5 with RYZ014A Pmod Cloud Kit RoadTest:
All the RoadTest objectives were met satisfactorily and are summarized in the Results section above this one.
The CK-RA6M5 board is a capable hardware that can be the starting point for any number of embedded projects, and it is highly recommended all on its own. The addition of the RYZ014A Pmod Cloud Kit makes the CK-RA6M5 a very capable IoT platform. Renesas' Flexible Software Package (FSP) integrates well with the hardware, and provides a complete software solution for IoT development. Existing documentation is ample and comprehensive.
We recommend the CK-RA6M5 board, the CK-RA6M5 with RYZ014A Pmod Cloud Kit and the Flexible Software Package (FSP) as an efficient starting platform for robotic projects, industrial automation and IoT solutions.