2090 views|2 replies

75

Posts

2

Resources
The OP
 

【NXP Rapid IoT Review】+ Review Summary [Copy link]

This post was last edited by bjemt on 2019-1-19 12:05 When I applied for the evaluation, I wanted to quickly build a remote data acquisition unit through SLN-RPK-NODE and establish a secure connection with the cloud service, so that the collected data can be encrypted and transmitted to the cloud server in real time, and at the same time, learn and test the application methods of the cloud server. I thought of using Web Studio to quickly build the program architecture, and then use MCUXpresso IDE for function expansion and debugging. However, after getting the module, I found that the 4-way differential ADC of KW64 was directly grounded and could not be brought out. Moreover, when the original code downloaded from Web Studio was imported into MCUXpresso IDE for debugging, an error message was prompted. The compilation systems of the two platforms are not unified and cannot be jointly developed. So I decided to change the original plan to an application design based on Web Studio: to make a constant temperature and humidity controller, with the focus on learning and evaluating the design and programming methods of Web Studio. 【About NXP Rapid IoT】 NXP Rapid IoT is developed from Atmosphere's Hexiwear, which is a wearable smart device based on NXP chips launched by Atmosphere. There is a post in the forum that makes a detailed comparison between the two: https://en.eeworld.com/bbs/thread-1065366-1-1.html NXP Rapid IoT's target applications are mainly in the two fields of "home and building control" and "consumer electronics". The front-end controller is very important for sensing and processing analog signals, and KW64 also has a built-in 16-bit differential ADC. The ARM4+BLE combination of NXP Rapid IoT is very suitable for general front-end data acquisition, monitoring, display and alarm equipment. It is a pity that the 4-way differential ADC input pins of the NXP Rapid IoT master controller KW64 are all grounded and cannot be expanded. This greatly reduces the ability of NXP Rapid IoT to detect and monitor analog signals. It is recommended that the next version of the module lead the 4-way differential ADC of KW64 to the expansion port. The 20-pin expansion port of NXP Rapid IoT has 8 pins available. 【About NXP Rapid IoT Web Studio】 Main advantages: 1. Easy to get started, simple programming, fast development speed, it is a good platform for rapid development and rapid deployment of NXP Rapid IoT based on existing components. 2. Web Studio is very stable, has never crashed, and data has never been lost, which is much better than the mobile phone APP. Problems and improvement suggestions: 1. Only editing and compiling functions are provided, and debugging cannot be performed. For related complex programs, once errors occur in logic and function calls, the compiler only prompts that the compilation failed, but does not give a specific line number, and it is very difficult to find the problem. 2. Only new and imported projects can be created, and the name of existing projects cannot be changed, and projects cannot be saved (can only be downloaded) to save the interim results of the project. Sometimes, if you mistakenly click on the browser to jump to a page or close the window, the edited but unsaved project content will be lost. 3. The notification and subscription functions of the Bluetooth component cannot be used because the APP cannot write code and apply for subscription. The Bluetooth notification service cannot be used, and the APP can only use the less efficient timed query method. 4. The mobile APP also needs authorization to use it. I wonder if it will be charged in the future? 5. The data structures, functions and constants used in the program and components cannot find the relevant definition files, and the editor does not have the ability to automatically prompt. When writing a program, I don’t know what parameters are in the predefined data structure and which functions can be called. [My Constant Temperature and Humidity Controller] 1. Design goal: Use NXP Rapid IoT to design and make a constant temperature and humidity controller. The mobile APP can connect to the NXP Rapid IoT module through BLE and realize the constant temperature and humidity display and control functions on the module. When the temperature is 2 degrees higher than the set temperature, the blue light will turn on to simulate the start of cooling; when the temperature is 2 degrees lower than the set temperature, the red light will turn on to simulate the start of heating; when the temperature is within 2 degrees of the set temperature, the heating and cooling will be turned off. You can also turn off the constant temperature control manually. When the humidity is 10% higher than the set humidity, the dehumidification starts; when the humidity is 10% lower than the set humidity, the humidification starts; when the humidity is within plus or minus 10% of the set humidity, the humidification and dehumidification are turned off. You can also turn off the constant humidity control manually. 2. First Design In order to save time, I deleted unnecessary components based on Rapid IoT Kit Out Of Box Demo, modified and added some components. It was relatively smooth at the beginning, but there were some modifications. I don’t know where the logical errors appeared, and the program in the downloaded module kept restarting. There was no way to track and debug, and I didn’t know where the dead loop appeared. In the end, there was really no way, so I had to give up and redesign. 3. Second Design In the second design, I learned to change only a little bit each time. It is not enough to just compile and pass. The downloaded module must be able to run normally. The thermostat controller is now fully functional. You can set the temperature, humidity, and turn on or off the thermostat through the 4 buttons of the module and the mobile phone APP. The APP panel is also basically designed. I thought that I only needed to add the corresponding processing code to the constant humidity controller. When I added all the code that should be written, an unprecedented compilation failure error occurred! And it does not prompt which line has the error. I have added a lot of code. I don’t know if it is a code problem or an event call problem? Is it a problem on the device side or the APP side? I commented out the code that may cause errors and deleted the events that may have problems. Finally, it became like the picture below. I found that it was caused by the wrong function name.
What the design looks like when it is completed
What it looks like after deleting components and functions to find the problem But I have almost deleted the program. Before deleting it, I especially hope there is a "Save As" button for the project, so that I can save and download the previously debugged design, so that I don’t have to add it again after each deletion. 4. The third design The third time, all the deleted parts were added back, compiled, the download module ran normally, the module display and various controls were also normal, but I never expected that a new situation would occur when connecting to the mobile phone APP: The mobile phone APP prompts "Unable to authenticate device's hardware credentials" when registering the device. Is the module faulty when "Unable to authenticate device's hardware credentials"? I re-called the NXP original Rapid IoT Kit Out Of Box Demo without any modification, compiled and downloaded the module, and the mobile phone APP can register and connect to the module normally, and the APP can also display Bluetooth data normally, indicating that there is no problem with the module itself. However, the software prompts success during compilation and does not report any errors? When checking the mobile phone APP information, I saw AUTHENTICATION TOKENS (authentication token) under integrations, and the yellow text shows the general API token. That is to say, the mobile phone APP application is authorized and managed, and the currently authorized general APP. The reason why the mobile phone APP I generated cannot connect to the module normally should be due to authorization restrictions. The hardware credentials of the device should be the authorization information of the software, but I don't know where the hardware credentials of the device are saved? I used components from the web. How could the functions that appeared in the demo exceed the limit? I commented out all the codes that I could think of that might cause the problem, but the same error message still popped up when the APP connected to check the module. I really don't want to start over again (worried that I will never be able to solve the problem), so I uploaded the project to the forum and asked NXP experts to take a look at the problem.
APP design drawing Screenshot of the running APP mobile phone during the second design
【NXP Rapid IoT Evaluation】Constant Temperature and Humidity Controller Project File Thermostat & Humidistat.rar (74.8 KB, downloads: 2) Finally, I want to say: An IDE without debugging function is not a good IDE! This content is originally created by EEWORLD forum user bjemt. If you need to reprint or use it for commercial purposes, you must obtain the author's consent and indicate the source



微信图片_20190118161753.jpg (108.25 KB, downloads: 0)

微信图片_20190118161753.jpg
This post is from RF/Wirelessly

Latest reply

Have fun!   Details Published on 2019-1-19 10:51
 

174

Posts

1

Resources
2
 
Thumbs up!
This post is from RF/Wirelessly
 
 

1370

Posts

2

Resources
3
 
Have fun!
This post is from RF/Wirelessly
 
 
 

Guess Your Favourite
Just looking around
Find a datasheet?

EEWorld Datasheet Technical Support

快速回复 返回顶部 Return list