警告:连接太阳能电池板或电池时,引脚的极性应如下:

警告:如果需要用于锂离子电池的充电控制器,则必须连接电池跳线:

Arduino IDE可用于通过Micro USB端口上传软件。在使用之前,必须配置IDE。第一件事是通过董事会经理安装董事会。
转到文件 - >首选项。将以下链接添加到其他董事会经理网址:https://github.com/skylabiot/loraedge_basictracking/raw/master/package_skylab_index.json。
可以通过搜索Skylab来通过工具 - > Board->董事会管理器下载板软件包。
通过工具 - >板 - > Skylab板 - > Skylab Lora边缘选择板。
示例草图可以通过文件 - >示例 - > Skylab lora边缘 - > BasicLoraa加载。
BasicLoraa草图依赖项是:
Arduino SAMD21低功率库:https://www.arduino.cc/en/reference/arduinolowpower
Arduino RTC库:https://www.arduino.cc/en/reference/rtc
Adafruit BME280库:https://github.com/adafruit/adafruit_bme280_library
Adafruit LMS303加速度计库:https://github.com/adafruit/adafruit_lsm303_accel
FlashStorage Library by cmaglie:https://github.com/cmaglie/flashstorage
上传模式后,示例示例串行监视器可以以9600的波特率打开。系统首先显示配置的dev_eui,join_eui和app_key(MSB首先)。从LR1110芯片请求Dev_EUI,并且该特定芯片是独特的。该键应在使用网络的控制台中使用。 JOIN_EUI和APP_KEY在代码中配置,应更改为正确的键,由使用的网络控制台给出。如果正确配置,设备会自动加入。
发送0x01请求Wi-Fi和GNSS扫描有效载荷(答案在端口2和3上)。
发送0x02以请求当前配置(答案在端口44上)。
发送一个0x03以请求当前电池电压(答案在端口10上)。
配置下行链路格式应如下:
| 0 | 1-2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
|---|---|---|---|---|---|---|---|---|
| 引领 | 间隔 | 信标 | 无线上网 | GNSS | 运动激活 /时间 | 运动间隔持续时间 | 运动传感器阈值寄存器 | 运动传感器持续时间寄存器 |
字节0:LED此字节配置状态LED。
字节1和2:间隔这2个字节配置消息时间之间的标准间隔时间为几分钟。间隔设置为0将保持当前设置,并且不会设置新的间隔时间。最大时间为65535分钟。
字节3:信标这个字节配置了de信标的打开时间。时间是在几分钟之内。最大时间为255分钟。设置为0时,信标将不会打开。
字节4:Wi-Fi此字节打开或关闭Wi-Fi有效载荷。
字节5:GNSS此字节打开或关闭GNSS有效载荷。
字节6:运动激活 /时间,该字节在检测到运动时设置发送间隔。时间为几分钟,最多为255。设置为0运动检测中断时。
字节7:运动间隔持续时间此字节设置了最后一次运动后系统使用运动间隔的持续时间。时间为几分钟,最多为255。设置为0时,此字节将被忽略(使用当前设置)。
字节8:运动传感器阈值寄存器此字节设置运动传感器阈值寄存器。如果将字节7设置为0,则将忽略此字节(使用当前设置)。
字节9:运动传感器持续时间寄存器此字节设置运动传感器持续时间寄存器。如果将字节7设置为0,则将忽略此字节(使用当前设置)
系统通过与端口44上的上行链路以与下行链路相同的格式发送集合配置来确认下行链路。
领导,间隔5分钟,没有信标,Wi-Fi和GNSS有效载荷,运动检测:
01 00 05 00 01 01 01 00 00 00 00 00
引导,间隔600分钟,没有信标,Wi-Fi有效载荷,GNSS有效载荷关闭,运动检测:
00 15 36 00 01 00 00 00 00 00 00
保持当前的LED和间隔设置,没有信标,Wi-Fi有效载荷关闭,GNSS有效载荷,运动检测:
02 00 00 00 00 01 00 00 00 00 00
打开信标5分钟,关闭运动检测,保留所有其他当前设置:
02 00 00 05 02 02 02 00 00 00 00 00
保持当前的LED和间隔设置,没有信标,Wi-Fi有效载荷,GNSS有效载荷关闭,运动间隔1分钟,运动间隔,上次运动后4分钟,运动阈值寄存器设置为7,运动持续时间寄存器设置为3:
02 00 00 00 01 00 01 04 07 03
该模式示例草图可以发送4种有效载荷。这些有效载荷类型可通过所使用的端口号识别。可以在此github页面(exippledecoderttn.js)上找到一个示例TTN解码器脚本。
这是Wi-Fi和传感器有效载荷。该有效载荷具有3个Wi-Fi点和传感器数据的信息。格式如下:
| 0 | 1-6 | 7 | 8-13 | 14 | 15-20 | 21 | 22-23 | 24-25 | 26 | 27 |
|---|---|---|---|---|---|---|---|---|---|---|
| RSSI 1 | Mac 1 | RSSI 2 | Mac 2 | RSSI 3 | Mac 3 | 电池电压 | 温度 | 压力 | 湿度 | 运动激活 |
字节0、7和14:Wi-Fi RSSI
这些字节具有扫描的Wi-Fi点的RSSI /信号强度。这些值必须解释为签名的整数。
字节1至6、8至13和15至20:Wi-Fi Mac
这些字节具有扫描的Wi-Fi点的MAC地址。
字节21:电池电压
该字节具有原电池电压值。确切的电压可以用:电压=(float)((3.3 / 255) *((4.7 + 10) / 10) *(电池电压));
字节22至23:温度
这些字节具有温度值。可以通过:温度=(float)(温度 / 100)来计算摄氏度(◦C)的精确温度;
字节24至25:压力
这些字节具有气压值。可以通过:气压=(float)(压力 / 10)计算hector Pascal(HPA)的确切压力;
字节26:湿度
该字节的湿度值为%。
字节27:运动激活
该字节在正常间隔中显示为0。当运动间隔时,该字节在运动间隔中给出了剩余的分钟数。
这是GNSS有效载荷。此有效载荷仅具有RAW GNSS数据,并且大小可变。
此有效载荷用作“我醒着”的消息。默认情况下,它设置为每24小时。可以通过更改“控制时间”的值来更改。格式如下:
字节0:电池电压
该字节具有原电池电压值。确切的电压可以用:电压=(float)((3.3 / 255) *((4.7 + 10) / 10) *(电池电压));
LR1110在加入时和此后的24小时时会发送自动消息。可以忽略此消息。
当信标设置设置为1时,信标将被激活。该设备将离开网络,并在869800000 Hz频率(官方LORA频率之外)上每秒发送随机的Lora有效载荷。如果将LED激活设置为1,则绿色LED将打开。在到达设定的时间时,信标将停止。系统将重新加入网络并像以前一样运行。
| UC PIN | 板别针 | Arduino IDE的名称 |
|---|---|---|
| PA02 | A0 | A0,DAC0 |
| PA05 | AIN5(电池) | ain5 |
| PA06 | D0 | D0 |
| PA07 | D8 | D8 |
| PA08 | D3 | D3 |
| PA09 | D4 | D4 |
| PA10 | 忙(LR1110) | 忙碌的 |
| PA11 | 事件(LR1110) | 事件 |
| PA14 | NReset(LR1110) | nReset |
| PA15 | LED红色 | LEDR |
| PA16 | 莫西 | 莫西 |
| PA17 | SCK | SCK |
| PA18 | NSS(LR1110) | NSS |
| PA19 | 味o | 味o |
| PA20 | INT2(LSM303AGR) | int2 |
| PA21 | INT1(LSM303AGR) | int1 |
| PA22 | SDA | SDA |
| PA23 | SCL | SCL |
| PA24 | D-(USB) | pin_usb_dm |
| PA25 | D+(USB) | pin_usb_dp |
| PA27 | PA27(PAD) | PA27 |
| PA28 | PA28(PAD) | PA28 |
| PA30 | SWDCLK/TCK(调试引脚) | - |
| PA31 | SWDIO/TMS(调试引脚) | - |
| PB02 | PB02(PAD) | PB02 |
| PB03 | PB03(PAD) | PB03 |
| PB08 | LNA(GNSS) | LNA |
| PB09 | INT3(LSM303AGR) | INT3 |
| PB10 | led绿色 | LEDG |
| PB11 | LED蓝色 | LEDB |
| PB22 | TX | pin_serial_tx |
| PB23 | Rx | pin_serial_rx |
| 版本 | 更改 |
|---|---|
| 1.0 | 第一版。 |
| 1.2 | 通过下行链路,Wi-Fi有效载荷和无线电信标中的传感器集成来支持更多配置。 |
| 1.3 | BasicLoraa草图的更改:更改下行链路以减少字节。在没有LORA覆盖范围的情况下,请修复电池排水的连接问题。增加了对运动检测的支持,可以通过将运动激活设置为1来启用。 |
| 1.3.1 | 修复了在BasicLoraa草图中失败的加入后,已修复了加入问题。 |
| 1.4 | 更新端口2上行链路(字节27)。更新下行链路格式,包括示例。添加了下行链路确认上行链路。能够将设置保存到EEPROM,以免重新启动时重置。 |
| 1.4.1 | 文件清理。 |
| 1.5 | 尝试加入时紫色的LED打开。修复缺少Wi-Fi有效载荷错误。支持ALC同步以备将来使用。通过添加评论使代码更可读。 |
| 1.5.1 | 串行显示器上带有零的ZEROS填充EUI /键,以便于复制。 Lorawan,固件和引导加载程序版本现在在串行显示器上的十六进制中打印。 |
| 1.5.2 | 修复了启动后和第一次运动后未发送第一次有效载荷。 |
| 1.5.3 | 为请求设置添加了下行链路函数。修复了运动间隔计时器中的错误。 |
| 1.5.4 | 重新启动后,固定间隔值并非总是正确加载。 |