![]() | ![]() | ![]() |
|---|
이것은 Wisblock의 새로운 접근법입니다. I2C 버스와 시리얼을 스캔하여 Wisblock베이스에 부착 된 Wisblock 모듈을 감지하고 발견 된 모듈의 데이터와 함께 Cayenne LPP에 Lorawan 페이로드를 생성합니다.
이 펌웨어는 Wisblock API V2를 사용하고 있습니다
이 코드는 변경없이 사용할 수 있습니다
| 키트/솔루션 | 설정 가이드 |
|---|---|
| Wisblock 키트 1 | 설정 키트 1 |
| Wisblock 키트 2 | 설정 키트 2 |
| Wisblock 키트 3 | 설정 키트 3 |
| Wisblock 키트 4 | 설정 키트 4 |
| Rak 개발자 키트 | 설치 데트 키트 2 설치 데트 키트 3 설정 데브 키트 4 |
| 헬륨 매퍼 키트 | 헬륨 맵퍼를 설정합니다 |
| Lorawan의 Wisblock GNSS 추적기 | GNSS 추적기 설정 |
| 기준 치수 | 기능 | 키트에 사용됩니다 |
|---|---|---|
| RAK4631 | Wisblock 코어 모듈 | - |
| RAK5005-O | Wisblock베이스 보드 | - |
| RAK19007 | Wisblock베이스 보드 | - |
| RAK19003 | Wisblock 미니베이스 보드 | - |
| RAK19001 | Wisblock FullSize베이스 보드 | - |
| RAK1901 | Wisblock 온도 및 가습 센서 | Wisblock Kit 1, Rak Developer Kit 2 |
| RAK1902 | Wisblock 기압계 압력 센서 | Wisblock Kit 1, Rak Developer Kit 2 |
| RAK1903 | Wisblock 주변 조명 센서 | Wisblock Kit 1, Rak Developer Kit 2 |
| RAK1904 | Wisblock Acceleration Sensor (GNSS 솔루션에 사용) | Wisblock Kit 2 & 3, Lorawan 용 Wisblock 트래커, Rak Developer Kit 3 |
| RAK1905 | Wisblock 9 DOF 센서 | - |
| RAK1906 | Wisblock 환경 센서 | Wisblock Kit 4, Rak Developer Kit 4 |
| RAK1910 | Wisblock GNSS 센서 | Wisblock Kit 2 & 3, Rak Developer Kit 3 |
| RAK1921 | Wisblock OLED 디스플레이 | (상태 표시) |
| RAK5814 | Wisblock ACC608 암호화 모듈 | - |
| RAK12002 | WISBLOCK RTC 모듈 | - |
| RAK12003 | Wisblock 전나무 센서 | - |
| RAK12004 | Wisblock MQ2 가스 센서 | - |
| RAK12008 | Wisblock SCT31 CO2 가스 센서 | - |
| RAK12009 | Wisblock MQ3 알코올 가스 센서 | - |
| RAK12010 | Wisblock 주변 조명 센서 | - |
| RAK12014 | Wisblock 레이저 TOF 센서 | - |
| RAK12019 | Wisblock UV 라이트 센서 | - |
| RAK12025 | Wisblock 자이로 스코프 센서 | - |
| RAK12023/RAK12035 | Wisblock 토양 수분 및 온도 센서 | Wisblock 토양 센서 솔루션 |
| RAK12027 | Wisblock 지진 센서 | - |
| RAK12032 | Wisblock 가속도 센서 | - |
| RAK12034 | Wisblock 9 DOF 센서 | - |
| RAK12037 | Wisblock CO2 센서 | - |
| RAK12039 | Wisblock 입자 물질 센서 | - |
| RAK12040 | Wisblock AMG8833 온도 어레이 센서 | - |
| RAK12047 | Wisblock VOC 센서 | - |
| RAK12052 | Wisblock MLX90640 32x24 온도 어레이 센서 | - |
| RAK12500 | Wisblock GNSS 센서 | Lorawan의 Wisblock 트래커 |
| RAK14002 | Wisblock 3 버튼 터치 패드 | - |
| RAK14003 | Wisblock LED 막대 디스플레이 | - |
| RAK14008 | Wisblock 제스처 센서 | - |
| RAK15000 | Wisblock eeprom 모듈 | - |
| RAK15001 | Wisblock 플래시 모듈 | - |
| RAK14008 | Wisblock 제스처 센서 | - |
| RAK16000 | Wisblock DC 전류 센서 | - |
MCU 및 LORA 트랜시버는 측정주기 사이에 수면 모드로 들어가 전력을 절약합니다. 수면을 가능하게하는 솔루션을 위해 전체 시스템의 40UA의 수면 전류를 측정 할 수 있습니다. 웨이크 타임이 더 긴 웨이크 시간 이상이 필요한 GNSS 트래커 또는 RAK12047 VOC 센서와 같은 일부 솔루션은 전력 소비가 더 높습니다.
또한 가열 요소를 사용하는 MQ 가스 센서와 같은 센서는 더 많은 전력을 소비합니다.
... 업데이트하려면 사용 된 모든 라이브러리 목록은 Platformio.ini를 확인하십시오.
이 프로젝트는 플랫폼 IO를 사용하여 개발되었습니다. 그러나 여전히 Arduino IDE를 고수하는 사용자의 경우, Arduino IDE 호환 소스의 사본은 Arduinoide 폴더에 있습니다. 코드는 Arduino IDE ATM에서 컴파일하지 않습니다.
PIO의 전체 프로젝트는 플랫폼 폴더에 있습니다.
Platformio를 사용하는 경우 라이브러리는 모두 platformio.ini 에 나열되며 프로젝트를 컴파일 할 때 자동으로 설치됩니다. Arduino IDE를 사용하는 경우 Arduino 라이브러리 관리자를 사용하여 모든 라이브러리를 수동으로 설치해야합니다.
펌웨어를 컴파일하고 필요한 모든 모듈이 설치된 상태에서 Wisblock에서 플래시하십시오.
LPWAN 자격 증명을 설정하려면 USB를 통해 연결하십시오. RAK4631에 인쇄 된 Deveui를 사용하여 LPWAN 서버에서 AppEui 및 Appkey를 사용하십시오. 아직 자동 조인을 활성화하지 마십시오. 날씨 센서 레벨이 빠르게 변하지 않기 때문에 10 분마다 보내기 주파수를 설정하는 것으로 충분할 수 있습니다. 보내기 주파수는 초로 설정되므로 값은 10 * 60 ==> 600입니다.
명령의 예 :
AT+NWM=1
AT+NJM=1
AT+BAND=10
AT+DEVEUI=1000000000000001
AT+APPEUI=AB00AB00AB00AB00
AT+APPKEY=AB00AB00AB00AB00AB00AB00AB00AB00
AT+SENDINT=600
| 명령 | 설명 |
|---|---|
| at+nwm = 1 | 노드를 Lorawan 모드로 설정하십시오 |
| at+njm = 1 | 네트워크 조인 메소드를 OTAA로 설정하십시오 |
| at+밴드 = 10 | LPWAN 지역을 설정하십시오 (여기서 AS923-3) 명령 매뉴얼을 참조하십시오 |
| at+deveui = 10000000000000001 | 장치 EUI 설정, Wisblock 코어 모듈의 레이블에 인쇄 된 Deveui를 사용하는 것이 가장 좋습니다. |
| at+appeui = ab00ab00ab00ab00 | Lorawan 서버에서 필요한 응용 프로그램 EUI를 설정하십시오 |
| at+appkey = AB00AB00AB00AB00AB00AB00AB00AB00 | 네트워크 조인 동안 데이터 패킷을 암호화하는 데 사용되는 응용 프로그램 키 설정 |
| at+sendint = 600 | 센서 노드가 데이터 패킷을 보내는 간격을 설정합니다. 600 == 10 x 60 초 == 10 분 |
모든 명령 매뉴얼은 여기에서 찾을 수 있습니다 : at-commands.mdAT?
Wisblock Toolbox를 사용하십시오
패킷 데이터는 ElectronicCats/Cayennelpp의 확장 된 Cayenne LPP와 호환됩니다.
패킷의 내용은 Wisblock 기본 보드에 설치된 모듈에 따라 다릅니다.
| 데이터 | 채널 # | 채널 ID | 길이 | 논평 | 필요한 모듈 | 디코딩 된 필드 이름 |
|---|---|---|---|---|---|---|
| 배터리 값 | 1 | 116 | 2 바이트 | 0.01 v 부호없는 MSB | RAK4631 | 전압 _1 |
| 습기 | 2 | 104 | 1 바이트 | %RH | RAK1901 | 습도 _2 |
| 온도 | 3 | 103 | 2 바이트 | ° C에서 | RAK1901 | 온도 _3 |
| 기압 | 4 | 115 | 2 바이트 | HPA (MBAR)에서 | RAK1902 | 기압계 _4 |
| 조명 | 5 | 101 | 2 바이트 | 1 럭스 서명되지 않은 | RAK1903 | illuminance_5 |
| 습도 2 | 6 | 104 | 1 바이트 | %RH | RAK1906 | 습도 _6 |
| 온도 2 | 7 | 103 | 2 바이트 | ° C에서 | RAK1906 | 온도 _7 |
| 기압 2 | 8 | 115 | 2 바이트 | HPA (MBAR)에서 | RAK1906 | 기압계 _8 |
| 가스 저항 2 | 9 | 2 | 2 바이트 | 0.01 서명 (kohm) | RAK1906 | 아날로그 _9 |
| GNSS 스탠드. 해결 | 10 | 136 | 9 바이트 | 3 바이트 LON/LAT 0.0001 °, 3 바이트 alt 0.01 미터 | RAK1910, RAK12500 | GPS_10 |
| GNSS 향상된 해상도 | 10 | 137 | 11 바이트 | 4 바이트 LON/LAT 0.000001 °, 3 바이트 alt 0.01 미터 | RAK1910, RAK12500 | GPS_10 |
| 토양 온도 | 11 | 103 | 2 바이트 | ° C에서 | RAK12023/RAK12035 | 온도 _11 |
| 토양 습도 | 12 | 104 | 1 바이트 | %RH | RAK12023/RAK12035 | 습도 _12 |
| 토양 습도 생일 | 13 | 2 | 2 바이트 | 0.01 서명 | RAK12023/RAK12035 | ANALOG_IN_13 |
| 토양 데이터 유효 | 14 | 102 | 1 바이트 | 부 | RAK12023/RAK12035 | 존재 _14 |
| 일루미언스 2 | 15 | 101 | 2 바이트 | 1 럭스 서명되지 않은 | RAK12010 | Illuminance_15 |
| voc | 16 | 138 | 2 바이트 | VOC 지수 | RAK12047 | VOC_16 |
| MQ2 가스 | 17 | 2 | 2 바이트 | 0.01 서명 | RAK12004 | analog_in_17 |
| MQ2 가스 백분율 | 18 | 120 | 1 바이트 | 서명되지 않은 1-100% | RAK12004 | 백분율 _18 |
| MG812 가스 | 19 | 2 | 2 바이트 | 0.01 서명 | RAK12008 | ANALOG_IN_19 |
| MG812 가스 백분율 | 20 | 120 | 1 바이트 | 서명되지 않은 1-100% | RAK12008 | 백분율 _20 |
| MQ3 알코올 가스 | 21 | 2 | 2 바이트 | 0.01 서명 | RAK12009 | analog_in_21 |
| MQ3 알코올 가스 PERC. | 22 | 120 | 1 바이트 | 서명되지 않은 1-100% | RAK12009 | 백분율 _22 |
| TOF 거리 | 23 | 2 | 2 바이트 | 0.01 서명 | RAK12014 | ANALOG_IN_23 |
| TOF 데이터가 유효합니다 | 24 | 102 | 1 바이트 | 부 | RAK12014 | 존재 _24 |
| 자이로가 트리거되었습니다 | 25 | 134 | 6 바이트 | 축당 2 바이트, 0.01 °/s | RAK12025 | 자이로 미터 _25 |
| 제스처가 감지되었습니다 | 26 | 0 | 1 바이트 | 제스처의 ID와 1 바이트 | RAK14008 | Digital_In_26 |
| LTR390 UVI 값 | 27 | 2 | 2 바이트 | 0.01 서명 | RAK12019 | ANALOG_IN_27 |
| LTR390 UVS 값 | 28 | 101 | 2 바이트 | 1 럭스 서명되지 않은 | RAK12019 | Illuminance_28 |
| INA219 전류 | 29 | 2 | 2 바이트 | 0.01 서명 | RAK16000 | 아날로그 _29 |
| INA219 전압 | 30 | 2 | 2 바이트 | 0.01 서명 | RAK16000 | 아날로그 _30 |
| INA219 전원 | 31 | 2 | 2 바이트 | 0.01 서명 | RAK16000 | 아날로그 _31 |
| 터치 패드가 남았습니다 | 32 | 102 | 1 바이트 | 부 | RAK14002 | 존재 _32 |
| 터치 패드 중간 | 33 | 102 | 1 바이트 | 부 | RAK14002 | 존재 _33 |
| 터치 패드 오른쪽 | 34 | 102 | 1 바이트 | 부 | RAK14002 | 존재 _34 |
| SCD30 CO2 농도 | 35 | 125 | 2 바이트 | 서명되지 않은 1 ppm | RAK12037 | 농축 _35 |
| SCD30 온도 | 36 | 103 | 2 바이트 | ° C에서 | RAK12037 | 온도 _36 |
| SCD30 습도 | 37 | 104 | 1 바이트 | %RH | RAK12037 | 습도 _37 |
| MLX90632 센서 온도 | 38 | 103 | 2 바이트 | ° C에서 | RAK12003 | 온도 _38 |
| MLX90632 객체 온도 | 39 | 103 | 2 바이트 | ° C에서 | RAK12003 | 온도 _39 |
| PM 1.0 값 | 40 | 103 | 2 바이트 | ug/m3 | RAK12003 | VOC_40 |
| PM 2.5 값 | 41 | 103 | 2 바이트 | ug/m3 | RAK12003 | VOC_41 |
| 오후 10 값 | 42 | 103 | 2 바이트 | ug/m3 | RAK12003 | VOC_42 |
| 지진 이벤트 | 43 | 102 | 1 바이트 | 부 | RAK12027 | 존재 _43 |
| 지진 SI 값 | 44 | 2 | 2 바이트 | 아날로그 10 * m/s | RAK12027 | 아날로그 _44 |
| 지진 PGA 값 | 45 | 2 | 2 바이트 | 아날로그 10 * m/s2 | RAK12027 | 아날로그 _45 |
| 지진 폐쇄 경보 | 46 | 102 | 1 바이트 | 부 | RAK12027 | 존재 _46 |
| lpp_channel_eq_collapse | 47 | 102 | 1 바이트 | 부 | RAK12027 | 존재 _47 |
| 스위치 상태 | 48 | 102 | 1 바이트 | 부 | RAK13011 | 존재 _48 |
| Sensorhub 풍속 | 49 | 190 | 2 바이트 | 0.01 m/s | SensorHub RK900-09 | Wind_speed_49 |
| Sensorhub 바람 방향 | 50 | 191 | 2 바이트 | 1º | SensorHub RK900-09 | Wind_direction_50 |
| 오디오 레벨 | 49 |
Cursive의 채널 ID는 확장 형식이며 표준 Cayenne LPP 데이터 디코더는 지원하지 않습니다.
TTN, ChirpStack, 헬륨 및 데이터 케이크의 디코더 예제 Rakwireless_standardized_payload repo 폴더에서 찾을 수 있습니다.
컴파일 된 파일은 ./generated 폴더에 있습니다. 각각의 성공적인 컴파일 버전의 이름은 다음으로 명명됩니다
WisBlock_SENS_Vx.y.z_YYYY.MM.dd.hh.mm.ss
XYZ는 버전 번호입니다. 버전 번호는 ./platformio.ini 파일에서 설정됩니다.
yyyy.mm.dd.hh.mm.ss는 컴파일의 타임 스탬프입니다.
생성 된 .zip 파일을 사용하여 Wisblock Toolbox를 사용하여 Over Bley를 업데이트 할 수 있습니다.
플랫폼을 사용하면 RAK4631의 UF2 파일이 생성됩니다. 재설정 버튼을 두 번 뿌려서 RAK4631을 부트 로더 모드로 강제 할 수 있습니다. 새로운 USB 드라이브가 설치됩니다. UF2 파일을 새 드라이브로 끌어 당겨 장치를 플래시하십시오.
Debug 출력은 platformio.ini 의 정의로 제어 할 수 있습니다.
LIB_DEBUG는 SX126X-Arduino Lorawan 라이브러리의 디버그 출력을 제어합니다
API_DEBUG는 WISBLOCK-API 라이브러리의 디버그 출력을 제어합니다
my_debug는 응용 프로그램 자체의 디버그 출력을 제어합니다
CFG_DEBUG는 NRF52 BSP의 디버그 출력을 제어합니다. 그것을 막는 것이 좋습니다
[env:wiscore_rak4631]
platform = nordicnrf52
board = wiscore_rak4631
framework = arduino
build_flags =
; -DCFG_DEBUG=2
- DSW_VERSION_1 =1 ; major version increase on API change / not backwards compatible
- DSW_VERSION_2 =0 ; minor version increase on API change / backward compatible
- DSW_VERSION_3 =0 ; patch version increase on bugfix, no affect on API
- DLIB_DEBUG =0 ; 0 Disable LoRaWAN debug output
- DAPI_DEBUG =0 ; 0 Disable WisBlock API debug output
- DMY_DEBUG =0 ; 0 Disable application debug output
- DNO_BLE_LED =1 ; 1 Disable blue LED as BLE notificator
lib_deps =
beegee-tokyo/SX126x-Arduino
beegee-tokyo/WisBlock-API-V2
sparkfun/SparkFun SHTC3 Humidity and Temperature Sensor Library
adafruit/Adafruit LPS2X
closedcube/ClosedCube OPT3001
sabas1080/CayenneLPP
extra_scripts = pre:rename.py이 안내서는 Wisblock Kit 1 및 Rak Developer Kit 2 에 사용할 수 있습니다.
Rakwireless Documentation Center의 빠른 시작 가이드에 따라 일치하는 슬롯에 모듈을 설치하십시오.
AT 명령 인터페이스 또는 BLE 애플리케이션을 사용하여 장치 설정
이 안내서는 Wisblock Kit 2 , Wisblock Kit 3 , Lorawan 및 Rak Developer Kit 3 용 Wisblock GNSS 추적기 에 사용할 수 있습니다.
RAK1904 모듈을 설치 해야합니다
RAK5005-O, RAK19007, RAK19003 또는 RAK19001의 슬롯 C
RAK1910을 사용하는 경우 설치 해야합니다
RAK5005-O의 슬롯 A
RAK19007 또는 RAK19001의 일치하는 슬롯
RAK12500을 사용하는 경우베이스 보드의 일치하는 슬롯에 설치할 수 있습니다.
RAK1906은베이스 보드의 일치하는 슬롯에 설치할 수 있습니다.
Rakwireless Documentation Center의 빠른 시작 안내서에 이어 설치 가이드를 설치했습니다.
AT 명령 인터페이스 또는 BLE 애플리케이션을 사용하여 장치 설정
Lorawan 용 RAK11700 GNSS 추적기는이 설정의 기본 시작 모드입니다.
헬륨 매퍼 키트를 구축하는 경우 아래의 명령으로 모드를 변경 해야합니다 .
솔루션은 AT 명령 AT+GNSS 사용하여 3 가지 다른 작업 모드로 설정할 수 있습니다.
| 명령 | 입력 매개 변수 | 반환 값 | 반환 코드 |
|---|---|---|---|
| AT+GNSS? | - | Get/Set the GNSS precision and format 0 = 4 digit, 1 = 6 digit, 2 = Helium Mapper | OK |
| at+gnss =? | - | 0 또는 1 또는 2 | OK |
at+gnss = <Input Parameter> | 1 또는 2 또는 3 | - | OK 또는 AT_PARAM_ERROR |
Cayenne LPP 표준 형식은 위치 정밀도에 4 자리 만 사용합니다. 이 기본 위치 형식은 대부분의 Lorawan 서버 및 MyDevices 와 같은 시각화 플랫폼에서 자동으로 지원됩니다.
기본값이며 AT 명령 AT+GNSS=0 으로 설정됩니다.
이 옵션을 설정하면 데이터는 여전히 Cayenne LPP 형식으로 전송되지만 더 높은 위도 및 경도 해상도를 위해 사용자 정의 데이터 식별자와 6 자리를 사용합니다. 이 형식을 해독하려면 사용자 정의 데이터 인코더가 필요합니다. TTN, ChirpStack 및 Datacake 용 데이터 인코더는 사용자 정의 데이터 디코더 폴더에서 찾을 수 있습니다.
향상된 위치 해상도는 AT 명령 AT+GNSS=1 으로 설정됩니다.
이 옵션은 Wisblock과 함께 Make a Helium Mapper에 설명 된대로 데이터를 헬륨 매퍼 형식으로 보냅니다.
이 형식의 패킷 디코더는 위 기사에 제공됩니다.
헬륨 매퍼 기능은 AT 명령 AT+GNSS=2 로 설정됩니다.
이 안내서는 Wisblock Kit 4 및 Rak Developer Kit 4 에 사용할 수 있습니다.
Rakwireless Documentation Center의 빠른 시작 가이드에 따라 일치하는 슬롯에 모듈을 설치하십시오.
AT 명령 인터페이스 또는 BLE 애플리케이션을 사용하여 장치 설정