Tumgik
leadupofficial · 2 years
Text
Will guide you to how to use a Wappsto IoT Cloud and to build your first project with Wappsto. Things used in this project Hardware componentsM5Stack M5StickC ESP32-PICO Mini IoT Development Board×1Arduino 101×1Software apps and online servicesArduino IDEwappsto Story Introduction: Here are some information about Wappsto, this information was taken from (https://wappsto.seluxit.com/about/) What is Wappsto? Wappsto is a web app store where you can share and, in the future, even sell your data and buy my data. But why would I want to buy and sell data? Data is the key to enriching my personal smart life. If, for example, my neighbor already has a weather station, I can save myself the trouble and buy his data. Okay, so why would I want my neighbor’s data? For example, with weather data, I could better control my floor heating. But how do I put the data to use? Wappsto! Wappsto is the AppStore that Steve Jobs might have dreamt of as a web app store. No SDK, just web standards. Wappsto where data exchange between you and me is improving our smart life. It is a sophisticated way to get your smart things and services to work together. Inspired by the AppStore, Wappsto is a web app store where you can find web apps to automate the stuff in your life. We call them ‘wapps’. Wappsto is also a web-based tool to create and run wapps. Wappsto brings together the capabilities of talented developers with the highly personalized needs of individual end-users. Because developers create programs with javascript, they have powerful flexibility, enabling end-users to tackle even the most challenging automation tasks with ease. Wappsto’s Mission We created Wappsto in response to recurring high-level challenges that we were facing when developing solutions for our customers within the Internet of Things (IoT). Our customers wanted to automate the interaction of their devices, but their customers also wanted to include third-party things and services in their automation. The desired automation was often complex, but they wanted flexible configurations in a straightforward user interface. We realized that there is no one-size-fits-all solution for these problems, so we developed a software framework to make creating these personalized solutions easier. Wappsto’s Vision Many hands make light work. We want to share the framework that we created with as many as possible because if we help individuals realize their own highly personalized ideas for combining things and services, there’s a lot of work to be done. But we have to work smart. We’ve taken our inspiration from the AppStore because a market is optimal to generate and capture value. All market participants stand to gain value. By employing a proven unified data model, Wappsto can represent any service or device of any producer. Wappsto is democratizing the process of integrating services and IoT devices. The more developers work together; the more powerful the platform will become. As it grows, more creative combinations are possible, and more end-users attract more developers in a positive cycle. So, I think now you guys have some understanding of Wappsto and it's services, now we are moving into a simple project that explains how we can use Wappsto into our IoT solutions?. Step-1 : Setting up Wappsto Cloud Service First you have to set up your Wappsto Cloud acount to use the Wappsto. Just type https://wappsto.com/ in your browser. Now we are in the Cloud Portal of Wappsto. Simply create a new account with your information or email ID, then click on login. After the login, you can see the home page of our dashboard. First we have to add our IoT devices to the Wappstro, and then we can visualize the data by charts and widgets. Wappstro uses certificates in order to communicate with cloud service, also you can use multiple mode of communication example (python, Arduino). We can generate the ce
rtificates by two modes, one is by using python script and another one is using the web certification method. In this demo, I'm going to show you the second way of generating the certification. Navigate to store tab in the Wappsto dashboard, and you can see the IoT certification manager, click on that and install that. Once you installed the certification, click on open, and it will direct to the certification page. Here you can see two types of certification, select the Arduino certification and just click on download. Once you downloaded the certification, click on the WappstoIoT for Arduino. It will redirect you to the GitHub page of Wappsto IoT, This repo includes the Arduino example source codes. Download this entire repo, we have to add this in our Arduino library. Step-2 : Setting up Arduino IDE Next, open up the Arduino IDE then goto Sketch→Include Library→Add Zip and select the downloaded the GitHub repo. Once you added the library, then open the File→example→Library Example. Select the Wappsto, and generic Temperature example. First, we have to add our certificate in this code for that save as this example in another name and location. Add the downloaded certification file into that project folder. Next, close your Arduino IDE and open up again. Now you can see the certification file added into the project. Now change the Wi-Fi SSID and Password in the project file. Then just compile the project. Once compilation successful, then upload to your ESP32 board. In this tutorial we are going to use M5Stick C, it's made upon esp32 core. Select correct board and com port, then click on upload. After upload, open up the serial monitor and see for the results, wait to complete the connection. Step-3 : Setting up Wappsto Cloud Dashboard Next move on to the Wappsto dashboard and navigate to the devices, there you can see our ESP32. Next, add widget, and select for the chart type. Then select the device data variable. Here is Temperature. Next move on to the chart customization and make as per your wish. Now you can see your data in the dashboard. Conclusion: In this tutorial I have shown how to use Wappsto and how to build your first project with Wappsto, Next will show how to build a GPS tracker based on ESP32 and Wappsto.
0 notes
leadupofficial · 2 years
Text
A simple IoT based Temperature monitoring system using M5Stick C and Qubitro IOT platform. Things used in this project Hardware componentsM5Stack M5StickC ESP32-PICO Mini IoT Development Board×1DFRobot Gravity: Analog LM35 Temperature Sensor For Arduino×1Software apps and online servicesArduino IDEQubitro Story Introduction: In my last project, I demonstrated how to get started with the Qubitro IoT platform using the M5Stick C microcontroller; in this project, I'll show you how to send real-time temperature data to Qubitro. What is need ? an active Qubitro account, an ESP32 board (I'm using the M5Stick C), an LM35 temperature sensor, and the Arduino IDE for programming Let's Start Please go there and watch my last project if you haven't already. I'll skip the Qubitro setup because I'm assuming you've already seen my previous project. Let's start with the Arduino IDE, where I've written few lines of code to retrieve the data from the LM35 and send it to Qubitro. I connected the data pin of the LM35 to pin 33 of the M5Stick and performed some analogue to digital conversion calculations. Sum = 0; for (int k = 1; k
0 notes
leadupofficial · 2 years
Text
Will show you how to use BLE communication in ESP32 Controllers. Things used in this project Hardware componentsM5Stack M5StickC ESP32-PICO Mini IoT Development BoardM5Stack - M5Stamp PICO×1Arduino 101×1Software apps and online servicesArduino IDE Story Hey, what's up, Guys! Pradeep here In this tutorial, I'm going to show you how to trigger actions with Bluetooth using M5Stamp PICO and M5Stick C which are very cheap and High efficient ESP32 Controllers. Components Required: M5Stick C M5Stamp PICO What are M5Stick and M5Stamp? M5Stack is a technology company that designs and manufactures anopen-source development toolkit, including hardware, programming platform, and IoT solutions. It was founded by Jimmy Lai in 2017 and isbased in Shenzhen, China. M5Stack created the M5Stick and M5Stamps, which are both based on the ESP32 controller. The M5Stick C features an embedded TFT display and battery, while the M5Stamp has a small footprint and can be used in a variety of IoT products. M5StickC is a mini M5Stack, powered by ESP32. It is a portable, easy-to-use, open-source, IoT development board. It is an ESP32 development board with 0.96 inch TFT color screen (80 * 160 resolution), Red LED, button, Microphone, IR transmitter, 6-axis IMU (SH200Q), and 80 mAH battery. The ESP32 module ESP32-Pico in M5StickC also has a built-in 4MB flash. If the M5StickC is equipped with a watch base and watch belt, you can wear it on your wrist. It is built in a continually growing hardware and software ecosystem. It has a lot of compatible modules and units, as well as the open-source code & engineering communities that will help you maximize your benefits in every step of the developing process. Power switch operation: Power on: Press the power button for 2 seconds Power off: Press the power button for 6 seconds The input range of VBUS_VIN and VBUS_USB is limited to 4.8-5.5V, and the internal battery will be charged through AXP192 power management when VBUS is powered. STAMP-PICO features an ultra-compact design with two low-power Xtensa® 32-bit LX6 microprocessors at 240MHz on a PCB as tiny and delicate as a postage stamp. low power consumption. It is ideal for any space-constrained or battery-powered devices such as wearables, medical devices, sensors, and other IoT devices. 1, MULTIFORM: 5 options of installation, means endless possibilities! (SMT, DIP, flywire, grove interface), with a high-temperature resistant plastic shell, 3D antenna and components can be better protected. 2, LOW-CODE DEVELOPMENT: STAMP-PICO supports UIFlow graphical programming platform, scripting-free, cloud push; and fully compatible with Arduino, MicroPython, ESP32-IDF, and other mainstream development platforms to quickly build various applications. 3, HIGH INTEGRATION: STAMP-PICO contains a 5V->3.3V DC/DC port, GPIOx12, programmable RGB light x1, button x1, and finely tuned RF circuit, providing stable and reliable wireless communication. 4, STRONG EXPANDABILITY: Easy access to M5Stack's hardware and software ecology system: a wealth of sensors, actuators, functional modules, and accessories to choose from, and Extremely fast adaptation. Set up M5Stamp and M5Stick with Arduino IDE by following these instructions. https://docs.m5stack.com/en/quick_start/m5core/arduino Flow : M5Stick C will act as a BLE transmitter, while M5Stamp PICO will act as a BLE receiver. When Button A on the M5Stick is pressed, the M5Stamp's LED turns green. Coding for Transmitter: #include #include "BLEDevice.h" #include "BLEUtils.h" #include "BLEServer.h" #include "BLEBeacon.h" BLEAdvertising *pAdvertising; // BLE Advertisement type struct timeval now; #define GPIO_DEEP_SLEEP_DURATION 1 // sleep x seconds and then wake up RTC_DATA_ATTR static time_t last; // remember last boot in RTC Memory RTC_DATA_ATTR static uint32_t bootcount; // remember number of boots in RTC Memo
ry #define BEACON_UUID "87b99b2c-90fd-11e9-bc42-526af7764f64" // UUID 1 128-Bit (may use linux tool uuidgen or random numbers via https://www.uuidgenerator.net/) void setBeacon() BLEBeacon oBeacon = BLEBeacon(); oBeacon.setManufacturerId(0x4C00); oBeacon.setProximityUUID(BLEUUID(BEACON_UUID)); oBeacon.setMajor((bootcount & 0xFFFF0000) >> 16); oBeacon.setMinor(bootcount & 0xFFFF); BLEAdvertisementData oAdvertisementData = BLEAdvertisementData(); BLEAdvertisementData oScanResponseData = BLEAdvertisementData(); oAdvertisementData.setFlags(0x04); // BR_EDR_NOT_SUPPORTED 0x04 std::string strServiceData = ""; strServiceData += (char)26; // Len strServiceData += (char)0xFF; // Type strServiceData += oBeacon.getData(); oAdvertisementData.addData(strServiceData); pAdvertising->setAdvertisementData(oAdvertisementData); pAdvertising->setScanResponseData(oScanResponseData); void setup() M5.begin(); Serial.begin(115200); M5.Lcd.setTextColor(YELLOW); //Set the font color to yellow. 设置字体颜色为黄色 M5.Lcd.setRotation(3); M5.Axp.ScreenBreath(10); M5.Lcd.setTextColor(RED); M5.Lcd.setCursor(3, 10); M5.Lcd.setTextSize(2); void loop() M5.update(); M5.Lcd.setCursor(3, 10); if (M5.BtnA.wasReleased()) M5.Lcd.setTextColor(GREEN); M5.Lcd.println("Triggred"); Serial.println("Trigger mode"); // Create the BLE Device BLEDevice::init("BLE Receiver 01"); // Create the BLE Server BLEServer *pServer = BLEDevice::createServer(); // start(); Serial.println("Advertizing started..."); delay(1000); pAdvertising->stop(); M5.Lcd.fillScreen(BLACK); M5.Lcd.setCursor(3, 10); Upload the above code to your M5Stick C Controller. Coding for Receiver: #include "Arduino.h" #include #include #include #include #include // How many leds in your strip? #define NUM_LEDS 1 #define DATA_PIN 27 // Define the array of leds CRGB leds[NUM_LEDS]; String knownBLEAddresses[] = "24:a1:60:53:06:3e"; int RSSI_THRESHOLD = -100; bool device_found; int scanTime = 1; //In seconds BLEScan* pBLEScan; class MyAdvertisedDeviceCallbacks: public BLEAdvertisedDeviceCallbacks void onResult(BLEAdvertisedDevice advertisedDevice) for (int i = 0; i < (sizeof(knownBLEAddresses) / sizeof(knownBLEAddresses[0])); i++) if (strcmp(advertisedDevice.getAddress().toString().c_str(), knownBLEAddresses[i].c_str()) == 0) device_found = true; break; else device_found = false; Serial.printf("Advertised Device: %s \n", advertisedDevice.toString().c_str()); ; void setup() Serial.begin(115200); //Enable UART on ESP32 FastLED.addLeds(leds, NUM_LEDS); // GRB ordering is typical Serial.println("Scanning..."); // Print Scanning BLEDevice::init(""); pBLEScan = BLEDevice::getScan(); //create new scan pBLEScan->setAdvertisedDeviceCallbacks(new MyAdvertisedDeviceCallbacks()); //Init Callback Function pBLEScan->setActiveScan(true); //active scan uses more power, but get results faster pBLEScan->setInterval(100); // set Scan interval pBLEScan->setWindow(99); // less or equal setInterval value void loop() BLEScanResults foundDevices = pBLEScan->start(scanTime, false); for (int i = 0; i < foundDevices.getCount(); i++) BLEAdvertisedDevice device = foundDevices.getDevice(i); int rssi = device.getRSSI(); Serial.print("RSSI: "); Serial.println(rssi); if (rssi > RSSI_THRESHOLD && device_found == true) Serial.println("Triggred"); leds[0] = 0xf00000; FastLED.show(); delay(200); // Now turn the LED off, then pause leds[0] = 0x00f000; FastLED.show(); delay(200); pBLEScan->clearResults(); // delete results fromBLEScan buffer to release memory In the above code, you have to change the BLE Address of your M5Stick C. Here I have added my M5Stick C's BLE Address. Change th
is according to yours. Outcome: Once the Transmitter and Receiver codes have been uploaded to the M5Stick and M5Stamp, connect the M5Stamp to your PC and open the serial monitor, then click the button A on the M5Stick C, which will display Triggered on the TFT Display. Check the Serial Monitor Results whenever you see a triggered message in your M5Stick C. The name of the ESP Transmitter, RSSI, and Triggered Message will be displayed on the serial monitor. The Green led on the M5Stamp will blink. The Green led will blink every time the button is pressed. Code Github repository for the project Repo not found. Make sure the repo is public!
0 notes
leadupofficial · 2 years
Text
Will guide you to build a cellular based predictive maintenance monitoring device with Blues Notecard, Edge Impulse, Qubitro & Wio Terminal. Things used in this project Hardware componentsBlues Wireless Notecard (Cellular)×1Blues Wireless Notecarrier-A×1Seeed Studio Wio Terminal×1Software apps and online servicesBlues Wireless Notehub.ioQubitroEdge Impulse StudioArduino IDE Story In Industry 4.0, most industries are automated, and they can realize more than 200%productivity improvements. Let’s take an example. I think this one is a good example for the industry of automation. You well know this man, the real life Iron Man, Elon Musk. He tweeted that his Tesla factory is 75% automated. That seems like good news, right? But who cares? Everyone wants a 100% perfect product. If a system did something wrong, that means the whole process will be useless, and it affects the TTM (Time to Market) of the product. This is not only for the automotive industry, it’s the same for all industries. So we need to ensure a system that works 24/7/365. But we want to reduce human error in the process, which is why we choose automation, but now we need humans to guarantee the system process. Machine Learning Has played a significant role in optimizing manufacturing processes. Manufacturing companies can achieve what is called ”smart factories” by optimizing systems in factories to work with ML. Smart factories monitor and collect production data continuously using smart devices, machines, and systems. Manufacturers can make better decisions based on advanced analytics provided by this data collection. In this tutorial, I’m going to show you how to monitor industrial motor activity continuously and if the machine stops or any anomaly is detected, it will trigger an email alert. Hardware Requirements: LTE-M Notecard Global Notecarrier A with LiPo, Solar, and Qwiic Connectors Seeed Wio Terminal Software: Arduino IDE Blues Notehub Qubitro Edge Impulse Flow Diagram: With this flow, we will first collect accelerometer data from the Wio Terminal, and then use Edge Impulse to classify anomalies. In the event of an anomaly being detected, the Blues Wireless Notecard will send the data to Notehub.io, which can then be forwarded to Qubitro via MQTT, and finally by using Webhooks, IFTTT will be used to trigger an email alert. Hardware Connection: Connect the Blues Notecard’s Tx pin to Rx (pin 10), Rx to Tx (pin8) and connect +5V and Gnd pin to the Wio Terminal. Edge Impulse Model Classification: First connect the Wio terminal with the PC and go to https://ide.tinkergen.com/ Once you open the IDE, select the device as Wio Terminal. Next, select Motion data uploader. This is where you can choose or change the labels for the data. It is a default code that is used to get three different data points from the accelerometer on the Wio Terminal. As part of this project, I have used two types of data, one of which is “Ideal” and the other is “Wave”. To upload this code to Wio Terminal, click on upload. You will see this page after uploading. Once you click the button on the Wio Terminal, the data will be collected. Once the data has been collected, click on “Training and Classification”. Then click the start training button. The log can be viewed after the job has been completed. Click on the deployment option next. Upon completion of development, you will be redirected to the programming area. This is a simple block that will classify the data and show it on the Wio Terminal screen. You can see the Wio Terminal response once the code has been uploaded. We now need to integrate the Blues Wireless Notecard with Wio Terminal. Just click on the code icon, and it will show the respective code. You can just copy it, as next step will require this information. In order to
add this model classification library to the Arduino IDE, you must copy and paste it into the Arduino library folder. We are now ready to begin Arduino development. Blues Wireless Notecard Integration: Copy the code from the Tinkergen IDE and paste it, to make sure it works. Create a new project in Notehub.io and copy the provided project ID, and replace it with the following code. I've included Blues Wireless Notecard settings in this code, and it will send out a notification if it finds any anomalies three times. #include #include "LIS3DHTR.h" #define LGFX_AUTODETECT #define LGFX_USE_V1 #include #include #include #define txRxPinsSerial Serial1 #define productUID "XXXXXXXXXXXXXXXXX" Notecard notecard; static LGFX lcd; static LGFX_Sprite sprite(&lcd); int count; int count1; LIS3DHTR lis; #define CONVERT_G_TO_MS2 9.80665f ei_impulse_result_classification_t currentClassification[EI_CLASSIFIER_LABEL_COUNT]; const char *maxConfidenceLabel; void runClassifier() float buffer[EI_CLASSIFIER_DSP_INPUT_FRAME_SIZE] = 0; for (size_t ix = 0; ix < EI_CLASSIFIER_DSP_INPUT_FRAME_SIZE; ix += 3) uint64_t next_tick = micros() + (EI_CLASSIFIER_INTERVAL_MS * 1000); lis.getAcceleration(&buffer[ix], &buffer[ix + 1], &buffer[ix + 2]); buffer[ix + 0] *= CONVERT_G_TO_MS2; buffer[ix + 1] *= CONVERT_G_TO_MS2; buffer[ix + 2] *= CONVERT_G_TO_MS2; delayMicroseconds(next_tick - micros()); signal_t signal; int err = numpy::signal_from_buffer( buffer, EI_CLASSIFIER_DSP_INPUT_FRAME_SIZE, &signal); ei_impulse_result_t result = 0; err = run_classifier(&signal, &result, false); float maxValue = 0; for (size_t ix = 0; ix < EI_CLASSIFIER_LABEL_COUNT; ix++) ei_impulse_result_classification_t classification_t = result.classification[ix]; ei_printf(" %s: %.5f\n", classification_t.label, classification_t.value); float value = classification_t.value; if (value > maxValue) maxValue = value; maxConfidenceLabel = classification_t.label; currentClassification[ix] = classification_t; void setup() lcd.init(); lcd.setRotation(1); lis.begin(Wire1); lis.setOutputDataRate(LIS3DHTR_DATARATE_100HZ); lis.setFullScaleRange(LIS3DHTR_RANGE_4G); Serial.begin(115200); notecard.begin(txRxPinsSerial, 9600); J *req = notecard.newRequest("hub.set"); JAddStringToObject(req, "product", productUID); JAddStringToObject(req, "mode", "continuous"); notecard.sendRequest(req); delay(1000); void loop() lcd.fillScreen(0x008000u); lcd.setFont(&fonts::Font4); runClassifier(); lcd.setTextColor(0xFFFFFFu); lcd.drawString((String)maxConfidenceLabel, 130, 100); delay(500); lcd.fillScreen(0x000000); if (maxConfidenceLabel == "wave") count = count + 1; if (count == 3) for (int i = 0; i
0 notes
leadupofficial · 2 years
Text
This tutorial is based on Real-Time GPS Monitoring using M5Stick C (ESP32) with the help of Qubitro's GPS Mapping System. Things used in this project Hardware componentsM5Stack M5StickC ESP32-PICO Mini IoT Development Board×1M5Stack Mini GPS/BDS Unit×1Software apps and online servicesQubitroArduino IDEGoogle Colab Story In this DIY tutorial, we are going to build an IoT-based GPS Location tracker using M5Stack GPS Unit and M5Stick C. Here, we have used Qubitro as a Cloud platform to Map the GPS Coordinates, and this coordinates will be mapped by using Google Colab with the help of simple python script. Hardware Connections: Just kidding, there is no hard-wiring in this tutorial, simply connect the GPS unit with M5StickC, that's all. Let's Compile: I used Tiny GPS library, It's very simple to use with maximum GPS units, and all the Cloud Integration could be found in the Qubitro documentation page and upload the below Qubitro_Gps.ino sketch to the M5StickC. #include #include #include #include TinyGPSPlus gps; HardwareSerial ss(2); float Lat, Lng; String lat_str , lng_str; int sat, battery = 0; float b, c = 0; // WiFi Client WiFiClient wifiClient; // Qubitro Client QubitroMqttClient mqttClient(wifiClient); // Device Parameters char deviceID[] = "Qubitro-Device-ID"; char deviceToken[] = "Qubitro-Device-Token"; // WiFi Parameters const char* ssid = "ELDRADO"; const char* password = "amazon1234"; void setup() M5.begin(); M5.Lcd.setRotation(3); M5.Lcd.fillScreen(BLACK); M5.Lcd.setSwapBytes(true); M5.Lcd.setTextSize(1); M5.Lcd.setCursor(7, 20, 2); M5.Lcd.setTextColor(TFT_GREEN, TFT_BLACK); ss.begin(9600, SERIAL_8N1, 33, 32); wifi_init(); qubitro_init(); void loop() while (ss.available() > 0) if (gps.encode(ss.read())) if (gps.location.isValid()) void wifi_init() // Set WiFi mode WiFi.mode(WIFI_STA); // Disconnect WiFi WiFi.disconnect(); delay(100); // Initiate WiFi connection WiFi.begin(ssid, password); // Print connectivity status to the terminal Serial.print("Connecting to WiFi..."); while (true) delay(1000); Serial.print("."); if (WiFi.status() == WL_CONNECTED) Serial.println(""); Serial.println("WiFi Connected."); Serial.print("Local IP: "); Serial.println(WiFi.localIP()); Serial.print("RSSI: "); Serial.println(WiFi.RSSI()); M5.Lcd.setTextColor(RED); M5.Lcd.setCursor(0, 8); M5.Lcd.printf("Network Connected"); break; void qubitro_init() char host[] = "broker.qubitro.com"; int port = 1883; mqttClient.setId(deviceID); mqttClient.setDeviceIdToken(deviceID, deviceToken); Serial.println("Connecting to Qubitro..."); if (!mqttClient.connect(host, port)) Serial.print("Connection failed. Error code: "); Serial.println(mqttClient.connectError()); Serial.println("Visit docs.qubitro.com or create a new issue on github.com/qubitro"); Serial.println("Connected to Qubitro."); M5.Lcd.setTextColor(RED); M5.Lcd.setCursor(0, 25); M5.Lcd.printf("Uplink Established"); mqttClient.subscribe(deviceID); delay(2000); M5.Lcd.fillScreen(BLACK); void batteryLevel() c = M5.Axp.GetVapsData() * 1.4 / 1000; b = M5.Axp.GetVbatData() * 1.1 / 1000; // M5.Lcd.print(b); battery = ((b - 3.0) / 1.2) * 100; if (battery > 100) battery = 100; else if (battery < 100 && battery > 9) M5.Lcd.print(" "); else if (battery < 9) M5.Lcd.print(" "); if (battery < 10) M5.Axp.DeepSleep(); Serial.print("battery: "); Serial.println(battery); void printDate() Serial.print(gps.date.day()); Serial.print("/"); Serial.print(gps.date.month()); Serial.print("/"); Serial.println(gps.date.year()); // printTime() formats the time into "hh:mm:ss", and prints leading 0's // where they're called for. void printTime() Serial.print(gps.time.hour()); Serial.print(":"); if (gps.time.minute() < 10) Serial.print('0'); Serial.print(gps.time.minute()); Serial.print(":"); if (gps.time.second() < 10) Serial.print('0'); Serial.println(gps.time.second());
Data Visualization: Once you upload the code to M5Stick C, go to your Qubitro Device Portal and you can see the create a chart tab. Qubitro Device Page After clicked the Creation a Chart tab, select chart type as map and select the data variables ( like longitude, latitude as per the tabs) Create a Chart (Map) page That's all, now you are good to go, navigate to the Analytics area, and you can see the uploaded GPS Co-ordinates are mapped. Mapped Co-ordinates Mapping with Google Colab: If you want to map your whole location data, here I'm used python script which can phrase GPS co-ordinates and map. First you have to download the Data from Qubitro Portal by the format of CSV (now in Beta Stage), then log in to google colab and import the below python script. Import the downloaded CSV files from the Qubitro Portal. Execute the blocks one by one (make sure to rename the files in both script and files). So it's very simple and easy to use python script, Once you executed the final block you can find the logged map (sample CSV file uploaded in the GitHub). Device in action Code Qubitro GPS Mapping # import libraries + wardriving data import pandas as pd wd = pd.read_csv ('Neo-Baby-Walk.csv') # import list of all GPS Data from CSV file to pandas data frame wd.sample(100) # sample 10 random devices from dataset # len(wd) # number of detected devices # start mapping devices import folium from folium import Map, Marker basic_map = folium.Map(location=[33.675899,-117.602236 ],zoom_start=17) # manually pick scope of map folium.PolyLine(wd[['Latitude', 'Longitude']].values.tolist(),line_opacity = 0.5, weight = 4).add_to(basic_map) # plot route display(basic_map) https://github.com/Kyoot-Create/Qubitro
0 notes
leadupofficial · 2 years
Text
🥰
Tumblr media
5 posts!
0 notes
leadupofficial · 2 years
Text
0 notes
leadupofficial · 2 years
Text
0 notes
leadupofficial · 2 years
Text
0 notes
leadupofficial · 2 years
Text
0 notes
leadupofficial · 2 years
Text
1 note · View note