당신이 찾고 있다면 ...
Rust가 포함된 Pine64 PineTime 스마트 시계 버전, pinetime
분기를 보려면 여기를 클릭하세요.
Rust가 포함된 GigaDevice GD32VF103 버전, gd32vf103
분기를 보려면 여기를 클릭하세요.
Bluetooth 메시가 포함된 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
분기를 보려면 여기를 클릭하세요.
Rust Macros 및 Safe Wrappers가 포함된 STM32 Blue Pill 버전, rust-safe
분기를 보려면 여기를 클릭하세요.
이제 nRF24L01 및 ESP8266이 포함된 STM32 Blue Pill의 이전 지점에 있습니다. 튜토리얼을 확인하세요...
IoT 센서 네트워크 구축 - 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 형식)를 thethings.io와 같은 CoAP(UDP) 서버로 전송합니다.
다음과 같이 targets/bluepill_my_sensor/syscfg.yml
의 설정을 편집합니다.
syscfg.vals :
# TUTORIAL1: 1
TUTORIAL2 : 1
# TUTORIAL3: 1
...
2️⃣ 센서 노드(nRF24L01이 포함된 Blue Pill): 프로그램은 Blue Pill 내부 온도 센서를 10초마다 폴링하고 센서 데이터(CBOR 형식)를 Collector 노드로 전송합니다.
다음과 같이 targets/bluepill_my_sensor/syscfg.yml
의 설정을 편집합니다.
syscfg.vals :
# TUTORIAL1: 1
# TUTORIAL2: 1
TUTORIAL3 : 1
...
SENSOR_NODE_HW_ID_1
Blue Pill의 하드웨어 ID로 설정합니다.
3️⃣ Collector Node (nRF24L01 및 ESP8266이 포함된 Blue Pill): 프로그램은 센서 노드로부터 센서 데이터(CBOR 형식)를 수신하고 해당 센서 데이터(JSON 형식)를 thethings.io와 같은 CoAP(UDP) 서버로 전송합니다.
다음과 같이 targets/bluepill_my_sensor/syscfg.yml
의 설정을 편집합니다.
syscfg.vals :
# TUTORIAL1: 1
# TUTORIAL2: 1
TUTORIAL3 : 1
...
COLLECTOR_NODE_HW_ID
Blue Pill의 하드웨어 ID로 설정합니다.
4️⃣ WiFi 위치 정보(ESP8266이 포함된 Blue Pill): 프로그램은 ESP8266에서 스캔한 WiFi 액세스 포인트 MAC 주소와 신호 강도를 thethings.io와 같은 CoAP(UDP) 서버로 보냅니다. https://github.com/lupyuen/thethingsio-wifi-geolocation을 참조하세요.
thethings.io는 Google Geolocation API를 호출하여 WiFi 데이터를 기반으로 위도와 경도를 계산합니다. 공개 표시의 경우 계산된 지리적 위치가 Google Cloud App Engine에서 호스팅되는 웹 애플리케이션에 푸시됩니다. 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를 설치하려면 튜토리얼을 참조하세요...
IoT 센서 네트워크 구축 - STM32 Blue Pill + nRF24L01 + ESP8266 + Apache Mynewt + thethings.io
Apache Mynewt를 사용하여 STM32 Blue Pill을 ESP8266에 연결
Apache Mynewt 및 STM32 Blue Pill을 사용하여 IoT 장치 만들기
비디오 스튜디오 코드 실행
Terminal → Run Task
클릭하세요.
[0] Install Apache Mynewt
선택하십시오.
메시지가 나타나면 Terminal
창을 클릭하고 sudo
비밀번호를 입력하세요. 비밀번호는 한 번만 입력하면 됩니다.
설정 스크립트가 빌드 도구를 다운로드하고 설치하는 데 몇 분 정도 걸립니다. 완료되면 Done!이 표시됩니다.
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