u-BLOX NINA W106 BEING PROGRAMMED IN BASIC ANNEX RDS - SENDING TEMPERATURE TO THE SERVER u-BLOX THINGSTREAM.IO WITH BRIGDE TO TagoIO VIA DATAFLOW MANAGER
The purpose of this BLOG is to demonstrate how it is possible to program the u-BLOX NINA W106 (ESP32) module in the EVK-NINA-W1 starter kit with the BASIC ANNEX WiFi RDS language (1.43 Beta) and transmit the collected data (temperature - Random) to an MQTT server from u-BLOX ( mqtt.thingstream.io) via WIFI, over port 1883 (not SSL). The data is processed by a powerful tool from u-BLOX called DATAFLOW MANAGER and forwarded to TagoIO for viewing (DASHBOARD). In the example, a TEMPERATURE (Random) is sent every 15 seconds.
Wi-Fi 802.11b / g / n
Dual-Mode Bluetooth v4.2
Powerful open CPU support for custom applications
Small size and multiple antenna options
Pin compatible with other NINA modules
Global certification
ESP32-based module, with 4MB FLASH
SMARTCORE
SmartCore provides modules for wireless communication, biometrics, connectivity, tracking and automation.
Our portfolio includes 2G / 3G / 4G / NB-IoT / Cat.M modem, satellite, WiFi modules, Bluetooth, GNSS / GPS, Sigfox, LoRa, card reader, QR code reader, printing mechanism, mini-board PC, antenna, pigtail, LCD, battery, GPS repeater and sensors.
More details at www.smartcore.com.br
ABOUT BASIC LANGUAGE
BASIC (acronym for Beginner's All-purpose Symbolic Instruction Code; in Portuguese: Code of Symbolic Instructions for General Use for Beginners) is a programming language, created for didactic purposes, by professors John George Kemeny, Thomas Eugene Kurtz and Mary Kenneth Keller in 1964 at Dartmouth College.
Basic can be a language option for learning logic, since it was developed at a high level (close to human language). In addition to its relative ease of creating applications simply and quickly.
BASIC is also the generic name given to a large family of programming languages derived from the original BASIC. There are probably more variations of BASIC than any other programming language.
BASIC ANNEX RDS
ESP-NOW, BLE, MQTT ... GREAT FOR IoT
See the BASIC ANNEX RDS HELP
See also FAQ
MQTT
For Internet of Things (IoT) devices, an Internet connection is a requirement. The Internet connection allows the devices to work with each other and with backend services. The underlying network protocol for the Internet is TCP / IP. Developed on the basis of the TCP / IP stack, MQTT (Message Queue Telemetry Transport) has become the standard for IoT communications.
It is an extremely simple and lightweight publishing / signing messaging protocol, designed for restricted devices and low-bandwidth, high-latency or unreliable networks. The design principles are to minimize network bandwidth and device resource requirements, while trying to ensure reliability and some degree of delivery guarantee. These principles also end up making the ideal protocol for the emerging "machine to machine" (M2M) or "Internet of Things" world of connected devices, and for mobile applications where bandwidth and battery are at a premium.
The annex implements the protocol with the following limitations:
- It can only post QoS 0 messages.
- You can enroll in QoS 0 or QoS 1.
- The maximum message size is 256 characters
- The maintenance interval is set to 15 seconds
- The client uses MQTT 3.1.1
Thingstream (DATAFLOW MANAGER)
It also implements SSL and SN-MQTT
Thingstream environment
Features:
- the cost of Thingstream as an MQTT Broker is much less than the cost of those associated with Azure and AWS;
- the data flow manager is an excellent advantage, data can be handled on the server and then forwarded;
- allows Node.js programming;
- security is different and much simpler than trying to exchange certificates with AWS etc;
- has a secure connection instead of the device. This really simplifies integration;
- ability to subscribe to several different topics;
- nodes for access to various AWS services Amazon, Azure IoT, IBM Watson, IFTTT (DashBoard and a multitude of other options)
- creation of Things (Thing);
- monitoring of MQTT events;
- menus for configuration.
TagoIO
TagoIO is a startup located in the United States that develops a platform for collecting data from connected devices.
The TagoIO platform is not 100% free or open-source, but it does have a free plan with limitations. In this plan, it is possible to create up to 5 devices, 25 thousand records in the database, 100 thousand requisitions per month and also the creation of up to 5 dashboards (data visualization panels), among other functions.
Compared to other free platform options, TagoIO's great advantage is that in a larger project, the free plan can be converted into a paid plan, increasing the platform's capabilities and the project's possibilities.
In general, for maker projects, TagoIO is an excellent option, with many interesting features.
INTERPRETATOR?
The basic interpreter works by reading a script file saved in the archiving system on a local esp disk.
This is the default mode if no external SDcard is connected to the u-BLOX NINA W106.
In addition, Annex32 can use an external SDcard as a file system, allowing up to 16 Gbytes of disk space.
During startup, if an external SDcard is detected, it will be automatically connected and used as the default file system, in which case the internal file system will not be used.
As the u-BLOX NINA W106 contains a good amount of RAM, the user script is copied from the disk to a dedicated area in the RAM memory where it is executed, along with the list of the program lines, the branch labels and the list of the user defined subroutines ..
This uses more RAM compared to other approaches, but allows for faster program execution.
Another performance consideration is that the u-BLOX NINA W106 must be able to perform various activities in the background (web server, file server, etc.), therefore, it needs sufficient free memory to perform such tasks, and these parallel tasks will obviously have an impact on the performance of the script.
Therefore, in terms of performance, the interpreter is not particularly fast, but it must be fast enough for most tasks that you may require.
BASIC Annex RDS MQTT Commands / Events
Sign: Subscribe Publish: Publish
Getting MAC ADDRESS
Print MAC $
no audio
Nenhum comentário:
Postar um comentário