[ Linkit Smart 7688 ] 傳送MAX30100 Sensor Data 到 Google Firebase
前置準備作業
比照這篇([ Linkit Smart 7688 ] 傳送MAX30100 Sensor Data 到 MediaTek Cloud Sandbox (MCS))配置
Google Firebase 端
1.到 Google 網站申請帳號
2. 點擊 建立新專案
3.點擊 Realtime Database,上方的規則
4. 將 read
與 write
設成 true
並點擊上方的 發佈
Linkit Smart 7688 Duo — MCU ( Arduino ) 端
1.透過 MCU 讀取 Sensor Data
#include <Arduino.h>
#include <Bridge.h>
#include <Wire.h>
#include “MAX30100_PulseOximeter.h”
#define REPORTING_PERIOD_MS 1000
PulseOximeter pox;
uint32_t tsLastReport = 0;
void onBeatDetected()
{
Serial.println(“Beat!”);
}
void setup()
{
Serial.begin(115200);
Bridge.begin();
Serial.print(“Initializing pulse oximeter..”);
if (!pox.begin()) {
Serial.println(“FAILED”);
for(;;);
} else {
Serial.println(“SUCCESS”);
}
pox.setOnBeatDetectedCallback(onBeatDetected);
}
void loop()
{
pox.update();
float h = pox.getHeartRate();
float s = pox.getSpO2();
if (millis() — tsLastReport > REPORTING_PERIOD_MS) {
Serial.print(“Heart rate:”);
Serial.print(h);
Serial.print(“bpm / SpO2:”);
Serial.print(s);
Serial.println(“%”);
tsLastReport = millis();
}
while(h+s > 0){
Bridge.put(“Heart rate”, String(h));
Bridge.put(“SpO2”, String(s));
break;
}
}
Linkit Smart 7688 Duo — MPU ( Python ) 端 — Publish
1.透過 Python 讀取 MCU Sensor Data
import sys
import time
import datetime
import requests
import json
firebase_url = ‘https://myiot-aff84.firebaseio.com/'
temperature_location = ‘Taipei’;
t = time.time();
date = datetime.datetime.fromtimestamp(t).strftime(‘%Y%m%d%H%M%S’)
sys.path.insert(0, ‘/usr/lib/python2.7/bridge/’)
from bridgeclient import BridgeClient as bridgeclient
value = bridgeclient()
while(True):
h0 = value.get(“Heart rate”)
s0 = value.get(“SpO2”)
print(date + ‘,’ + temperature_location + ‘,’ + str(s0) + ‘,’ + str(h0))
data = {‘date’:date,’SpO2':s0,’Heart rate’:h0}
result = requests.post(firebase_url + ‘/’ + temperature_location + ‘/SpO2.json’, data=json.dumps(data))
print(‘Status Code = ‘ + str(result.status_code) + ‘, Response = ‘ + result.text)
time.sleep(5)
2.將 Python Code 傳送到 Linkit Smart 7688 Duo
3.安裝相關套件於 Linkit Smart 7688 Duo
opkg update
uci set yunbridge.config.disabled=0
uci commit
reboot