如果您正在尋找...
Pine64 PineTime 智慧手錶版本,附 Rust,點擊此處取得pinetime
分支
GigaDevice GD32VF103版本帶Rust,點這裡看gd32vf103
分支
帶有藍牙 Mesh 的 Nordic nRF52 版本,請點擊此處查看mesh
分支
帶有 iBeacon、NimBLE 和 Rust 的 Nordic nRF52 版本,按此處獲取nrf52
分支
帶有 GPS、NB-IoT 和 Rust 的 STM32 L476 版本,點擊此處取得l476
分支
帶有低功耗 NB-IoT 的 STM32 Blue Pill 版本,請點擊此處查看low-power
分支
帶有 NB-IoT 和 Visual Rust 的 STM32 Blue Pill 版本,點擊此處查看rust-nbiot
分支
帶有 NB-IoT 和 Rust 的 STM32 Blue Pill 版本,點擊此處獲取rust-nbiot
分支
帶有 NB-IoT 和 C 的 STM32 Blue Pill 版本,點擊此處獲取nbiot
分支
帶有 Rust 的 STM32 Blue Pill 版本,點擊此處獲取rust
分支
STM32 Blue Pill 版本,附 Rust 巨集和安全包裝器,按此處取得rust-safe
分支
您現在位於帶有 nRF24L01 和 ESP8266 的 STM32 Blue Pill 的舊分支。檢查教程...
建立您的物聯網感測器網路 — STM32 Blue Pill + nRF24L01 + ESP8266 + Apache Mynewt + thethings.io
該存儲庫包含...
my_sensor_app
:感測器網路應用程式
boot_stub
:Mynewt 引導程式存根
adc_stm32f1
:STM32F1 上 ADC 的 Mynewt 驅動程式
custom_sensor
:自訂感測器定義
esp8266
: ESP8266 的 Mynewt 驅動程式
hmac_prng
:基於內部溫度感測器的帶有熵的 HMAC 偽隨機數產生器
nrf24l01
:nRF24L01 的 Mynewt 驅動程式
remote_sensor
:遠端感測器的 Mynewt 驅動程式
semihosting_console
:用於 Arm 半主機的 Mynewt 控制台
sensor_coap
:感測器 CoAP 庫
sensor_network
:感測器網路庫
temp_stm32
:STM32 上內部溫度感測器的 Mynewt 驅動程式
STM32 藍色藥丸或超級藍色藥丸
ESP8266 或 nRF24L01 或兩者
該程式以 4 種模式運作:
1️⃣ 獨立節點(帶有 ESP8266 的 Blue Pill):程式每 10 秒輪詢一次 Blue Pill 內部溫度感測器,並將感測器資料(JSON 格式)傳輸到 CoAP (UDP) 伺服器,例如 thethings.io。
編輯targets/bluepill_my_sensor/syscfg.yml
中的設置,如下所示:
syscfg.vals :
# TUTORIAL1: 1
TUTORIAL2 : 1
# TUTORIAL3: 1
...
2️⃣ 感測器節點(帶有 nRF24L01 的 Blue Pill):程式每 10 秒輪詢一次 Blue Pill 內部溫度感測器,並將感測器資料(CBOR 格式)傳輸到收集器節點。
編輯targets/bluepill_my_sensor/syscfg.yml
中的設置,如下所示:
syscfg.vals :
# TUTORIAL1: 1
# TUTORIAL2: 1
TUTORIAL3 : 1
...
將SENSOR_NODE_HW_ID_1
設定為藍色藥丸的硬體 ID。
3️⃣ 收集器節點(帶有 nRF24L01 和 ESP8266 的 Blue Pill):程式從感測器節點接收感測器資料(CBOR 格式),並將感測器資料(JSON 格式)傳輸到 CoAP(UDP)伺服器,例如 thethings.io。
編輯targets/bluepill_my_sensor/syscfg.yml
中的設置,如下所示:
syscfg.vals :
# TUTORIAL1: 1
# TUTORIAL2: 1
TUTORIAL3 : 1
...
將COLLECTOR_NODE_HW_ID
設定為藍色藥丸的硬體 ID。
4️⃣ WiFi 地理定位(帶有 ESP8266 的藍色藥丸):該程式將 ESP8266 掃描的 WiFi 接入點 MAC 位址和訊號強度發送到 CoAP (UDP) 伺服器,例如 thethings.io。請參閱 https://github.com/lupyuen/thethingsio-wifi-geolocation
thethings.io 將呼叫 Google Geolocation API 根據 WiFi 資料計算緯度和經度。為了公開顯示,計算出的地理位置被推送到 Google Cloud App Engine 上託管的 Web 應用程式。請參閱 https://github.com/lupyuen/gcloud-wifi-geolocation
編輯targets/bluepill_my_sensor/syscfg.yml
中的設置,如下所示:
syscfg.vals :
# TUTORIAL1: 1
TUTORIAL2 : 1
# TUTORIAL3: 1
WIFI_GEOLOCATION : 1
...
若要安裝適用於 Windows 和 macOS 的 Apache Mynewt,請參閱教學課程...
建立您的物聯網感測器網路 — STM32 Blue Pill + nRF24L01 + ESP8266 + Apache Mynewt + thethings.io
使用 Apache Mynewt 將 STM32 Blue Pill 連接到 ESP8266
使用 Apache Mynewt 和 STM32 Blue Pill 建立您的 IoT 小工具
啟動 Video Studio Code
點選Terminal → Run Task
選擇[0] Install Apache Mynewt
出現提示時,按一下Terminal
窗格並輸入sudo
密碼。密碼只需輸入一次。
安裝腳本將需要幾分鐘的時間來下載和安裝建置工具。完成後,我們應該會看到“完成”!
退出並重新啟動 Visual Studio Code。這將啟動已安裝的擴充功能。
如果出現問題,請將您的日誌與此設定日誌進行比較。
Windows 和 Ubuntu Linux 的範例日誌可以在日誌資料夾中找到
基於
https://mynewt.apache.org/latest/tutorials/sensors/sensor_thingy_lis2dh12_onb.html
https://mynewt.apache.org/latest/tutorials/sensors/sensor_nrf52_bno055.html
cd /mnt/c
newt new stm32bluepill-mynewt-sensor
cd stm32bluepill-mynewt-sensor
cat project.yml
newt install
newt pkg new -t app apps/my_sensor_app
newt pkg new -t lib libs/semihosting_console
newt target create bluepill_boot
newt target set bluepill_boot bsp=@apache-mynewt-core/hw/bsp/bluepill
newt target set bluepill_boot app=@apache-mynewt-core/apps/boot
newt target set bluepill_boot build_profile=optimized
newt target create bluepill_my_sensor
newt target set bluepill_my_sensor bsp=@apache-mynewt-core/hw/bsp/bluepill
newt target set bluepill_my_sensor app=apps/my_sensor_app
newt target set bluepill_my_sensor build_profile=debug
project.yml
應包含
project.name : " my_project "
project.repositories :
- apache-mynewt-core
repository.apache-mynewt-core :
type : github
vers : 1.6.0
user : apache
repo : mynewt-core