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?:
What were the biggest problems encountered?: ThingSpace
I am grateful for being selected for this roadtest - AVNET Monarch LTE-M Development Kit -- EU. Thanks to AVNET and SEQUANS for the great roadtest material as well as to rscasny for the great management. However, I have to say this is the most challenging roadtest I have taken so far. The challenge isn't about technical difficulties from either hardware or software perspective. It all comes from the LTE service provider. Until this point of time, my Monarch GO module is still in pre-active and disconnected state even though I can clearly see from AT command console that the module has been registered to the network. After contacting the service provider a few times without response, Avnet support team contacted me and tried to help me solve the problem. Hopefully the issue can be resolved soon (I will update this review if there's any good news coming out). Personally, I gave up on the service provider.
My original plan for this roadtest was to create an IoT Sump Pump Overflow Alert System. Because of the LTE data service problem mentioned above, I have to change my plan. I played with the kit and modified the demo software (added a so-called interactive demo) through which I can directly type AT command to Monarch GO module. I will attach my code change (a patch file) and hopefully it can facilitate other people's use of the kit.
9 1/4" x 6 1/2" x 1 5/8"
The hardware is well protected by two pieces of foam with a copy of quick start guide on top. The Arduino Shield board covers almost all break-out I/O pins of NXP LPC55S69-EVK so users may find a little bit challenging to add more devices (sensors/actuators) for their own application.
It would be very helpful if a female connector is provided on the top side of the shield board for unused I/O pins. Otherwise, the kit may only be good for running Avnet provided demos. For users want to use this kit for prototyping their own application, the unused I/O pins are precious resources.
Dimensions: 35 mm (1.38”) x 50 mm (1.97”) x 14.95 mm (0.59”)
You may wonder what is under the small rubber cover. It's actually an SWG_VE series RF connector on the PCB board for LTE test signal. You can connect the monarch GO to LTE signal source/test equipment through a MXHQ87WA3000 RF cable (not included in this road test). I think this connector is mostly used for hardware test. For regular users using monarch GO as off-the-shelf module, you may never use this connector at all.
There are quite lot of technical references at this link Monarch Go. I started my road test with the Azure IoT demo Monarch LTE-M Development Kit IoT Central Out of Box Example. The example is very easy to follow. If your device has a good LTE signal, you should see something similar to the following screenshot.
However, the sensor data update stopped very soon (probably in less than 10 minutes). I started to trouble shooting the problem. The first thing to check was my monarch device's status and data usage. Until this point, I didn't realize how bad ThingSpace is.
The data service provider has Guide Tour video showing how to set up account and activate devices. It clearly shows what an active device looks like in the device management page (video screenshot shows below)
However, my device status is shown as Pre-active and Disconnected even though I somewhat successfully run the Azure IoT demo. Up to this moment (22:30-EST, 4/16/2021), after I paid two monthly fee and the third month charge will come soon, my device status is still the same.
Actually I requested the activation twice and both failed.
After those two unsuccessful attempts, I sent a support request through the page shown below. This is the only way you might get help from them. You cannot attach your screenshots in the problem description. There's no phone number that you can contact the support team with.
After I reported my problem, the support replied with an email and said the device was active from a Do-Not-Reply email address. From this point, I realized I have big trouble with this road test. I complained there was no effective support channel by raising another support ticket. And the support replied that I could reply to the Do-Not-Reply email address. I did reply a couple of times and never got response after my third emails. From their replies, it seems everything is fine from their end but I didn't see any correct information from my web browser.
They don't even bother to get the billing information correct. However, they never missed charging me the monthly fee though. It shows my service ended 48 days ago but they charged both Feb. and Mar. monthly fee and I am confident they won't miss charging me for the April's service fee either. Anyways, enough is enough. Originally I was planning to use their service for a long period of time for my sump pump alarming system. Now, I will cancel the service after the roadtest.
For users who want to integrate monarch GO module into their own device or application, you may need to register an account with SWQUANS. Once your registration is approved, you can download technical documents from Monarch Go - SEQUANS. The screenshot below shows what type of technical reference you can download. I found the following three document are specially helpful for me: Sequans Monarch Go Datasheet and Hardware Integration Guide, Monarch Platform SR184.108.40.206 AT Commands Reference Manual and Monarch Platform SR220.127.116.11 Use Cases with AT Commands.
I modified the Azure IoT demo example and added another demo which can provide a direct interaction between Monarch GO module and your PC's serial terminal. You can type AT commands and observe GO module's response in the serial terminal. Here's a list of changes (shown below) and the patch file is attached at the end of this review. You can directly apply the patch to your downloaded git repository, then build the project and program the hardware.
$ git show --stat commit 6db5b0cddcedf1cba57b8aa3767d84148e97ef8b (HEAD -> master) Author: Charles Mao <email@example.com> Date: Fri Apr 16 21:33:10 2021 -0400 Add interactive AT command demo .cproject | 61 +++++++++++----------- CellIoT/gsm_at_lib/src/snippets/sms_send_receive.c | 2 +- .../src/aws_dev_mode_key_provisioning.c | 4 +- freertos/demos/include/iot_config_common.h | 4 +- .../pkcs11/mbedtls/iot_pkcs11_mbedtls.c | 2 +- .../include/platform/iot_network_freertos.h | 6 +-- .../freertos_plus/standard/tls/src/iot_tls.c | 4 +- .../demo/msft_Azure_IoT_clientcredential.h | 6 +-- .../demo/msft_Azure_IoT_clientcredential_keys.h | 2 +- msft_Azure_IoT/msft_Azure_IoT.c | 4 +- source/interactive_demo.c | 45 ++++++++++++++++ source/interactive_demo.h | 18 +++++++ source/main.c | 6 +++ 13 files changed, 117 insertions(+), 47 deletions(-)
Once you programmed the added demo, you can open a serial terminal and start exercising all AT commands listed in Monarch Platform SR18.104.22.168 AT Commands Reference Manual. The following subsections are some examples I have tried.
You can use AT+CGMI command to get manufacturer identification, AT+CGMM command to model identification, AT+CGSN command to get device serial number and AT+CGMR to get device revision.
You can use AT+CFUN=1 command to attach your monarch GO modem to the LTE network. From the screenshot below, you can see my GO device has successfully connected to the LTE network and signal strength is -71dBm which is very good. Please note that the lines starting with a sequence number (such as 17, 18, ..., 22 below) are not direct output from the GO device. They are the interpretation of GO device's response and created by the Azure IoT demo code.
PDP (Pack Data Protocol) context is a tunnel through which your modem can send/receive data to other data network such as Internet. AT command AT+CGDCONT? can check what data networks your modem can be connected to. AT+CGACT? command can check which context has been activated on your device. AT+CGACT=<tunnel_number> command can activate one or more specific contexts. In my case shown below, the context for Internet is activated.
AT+CSQ command can be used to check how strong the LTE signal is at your device's position. The first digit in the response (i.e., 19) is half of the difference between the actual signal strength and -113dBm. In other words, the signal strength is equal to -113 + 2 x 19 = -75dBm. The second digit (i.e., 99) means the bit error rate (BER) is unknown.
Monarch GO module can not only provide data service such as TCP/UDP and MQTT (as used in the Azure IoT demo example) but also can send and receive SMS text messages.
Right after my device is activated, it started receiving garbage message, but it wasn't that bad. In one and half month subscription period so far, two garbage messages received. If too many had been received, it might reach the SMS limit of your subscription and your device won't be able to send/receive SMS messages.
Follow section 5.1.3 in the document Monarch Platform SR22.214.171.124 Use Cases with AT Commands, you can type a series of AT commands to send SMS messages to your cell phone. Please note that your serial terminal should support sending hexadecimal numbers. As highlighted below, your SMS message should end with 0x1a (i.e., CTRL-Z). Otherwise, the message won't be sent out.
Monarch GO device can also receive SMS messages. For example, I sent "Hi, Monarch GO" text message from my cell phone at 9:06PM.
When I check the device for received message at 9:04PM, it showed no message. At 9:06PM, it showed 1 message had been received. I can read the same message I sent from my cell phone.
In general, I am happy with the road test kit, but did feel frustrated with the LTE service provider. The monarch GO module works well even though I'd like to see it be a little bit more miniaturized. I also hope monarch GO users can easily access technical reference document without requiring account registration. NXP EVK and MCUXpresso IDE are easy to use for the road test. However, if all the unused I/O pins were made available on the top of the shield board, it would be very helpful for someone using this kit for prototyping their own application. The demo software is OK but it could be polished a bit. For example, it could add a utility that users can directly interact with GO device through AT commands just like what I did in the review.
Just a quick update about the wireless service provider: as I expected, they charged another monthly fee on time. I ended up with a device sucking monthly fee forever because I cannot deactivate it. Since…
They don't offer contact number. The only feedback method is the support page shown in my review. You cannot attach screenshot in the support page. They claim my device works fine and without screenshot…
Nice road test report.
Someone asked me how to use the patch by email. In case someone else has the same question, here's my answer:
You can download the attachment at the end of my review (i.e., https://www.element14.com/community/servlet/JiveServlet/download/3559-316154/Add-interactive-AT-command-demo_patch.txt.zip) and unzip it to your working folder. Next, type the following commands in the listed order
$ cd Monarch-AzureAWS-OOB.gi
$ git apply ../Add-interactive-AT-command-demo_patch.txt
Import the project to MCUXpresso IDE and select build configuration to one of Azure configurations.
you need to update the following files with your own device and/or cloud service configuration (I believe the user's manual have some guidance)
Nice road test report.
Just a quick update about the wireless service provider: as I expected, they charged another monthly fee on time. I ended up with a device sucking monthly fee forever because I cannot deactivate it. Since it has never been activated, it doesn't show up in the deactivation list as shown below. What a joke! Ineligible for deactivation? Come on, give me a break!