From b404827547010cf267eac9397364a434889f5855 Mon Sep 17 00:00:00 2001 From: Daniel Nemeth <97036561+silabs-DanielN@users.noreply.github.com> Date: Thu, 29 Aug 2024 13:09:24 +0200 Subject: [PATCH] Third Party Hardware Drivers Extension v3.0.0 --- README.md | 13 +- .../example/mikroe_alcohol_mq3/README.md | 43 +- ...reate_project.png => create_example_1.png} | Bin .../image/create_example_2.png | Bin 0 -> 87678 bytes .../mikroe_buzz2_cmt_8540s_smt/README.md | 42 +- .../image/create_example_si91x.png | Bin 0 -> 92821 bytes .../example/mikroe_oledw_ssd1306/README.md | 48 +- ...reate_example.png => create_example_1.png} | Bin .../image/create_example_2.png | Bin 0 -> 100143 bytes .../example/mikroe_temphum9_shtc3/README.md | 44 +- ...reate_example.png => create_example_1.png} | Bin .../image/create_example_2.png | Bin 0 -> 61379 bytes .../example/mikroe_water_detect/README.md | 48 +- ...reate_example.png => create_example_1.png} | Bin .../image/create_example_2.png | Bin 0 -> 55485 bytes .../image/water_detect_config.png | Bin 27013 -> 0 bytes .../sparkfun_6dof_imu_bmi270/README.md | 113 + .../image/create_example.png | Bin 0 -> 71913 bytes .../image/create_example_si91x.png | Bin 0 -> 73415 bytes .../image/hardware_connection.png | Bin 0 -> 733679 bytes .../sparkfun_6dof_imu_bmi270/image/log.png | Bin 0 -> 164200 bytes .../example/sparkfun_gnss_max_m10s/README.md | 104 + .../image/create_example_1.png | Bin 0 -> 88707 bytes .../image/create_example_2.png | Bin 0 -> 90958 bytes .../image/hw_connection.png | Bin 0 -> 527129 bytes .../sparkfun_gnss_max_m10s/image/log.png | Bin 0 -> 36625 bytes .../sparkfun_micro_oled_ssd1306/README.md | 56 +- ...reate_example.png => create_example_1.png} | Bin .../image/create_example_2.png | Bin 0 -> 59394 bytes .../adafruit_neotrellis_keypad_atsamd09.slcp | 2 +- .../adafruit_rgb_led_is31fl3741.slcp | 2 +- .../adafruit_tft_lcd_hxd8357d.slcp | 2 +- .../adafruit_tft_lcd_hxd8357d_dma.slcp | 2 +- .../adafruit_tft_lcd_hxd8357d_lvgl.slcp | 2 +- .../adafruit_tft_lcd_hxd8357d_lvgl_dma.slcp | 2 +- .../adafruit_tft_lcd_ili9341.slcp | 2 +- .../adafruit_tft_lcd_ili9341_dma.slcp | 2 +- .../adafruit_tft_lcd_ili9341_lvgl.slcp | 2 +- .../adafruit_tft_lcd_ili9341_lvgl_dma.slcp | 2 +- .../adafruit_tft_lcd_st7789.slcp | 2 +- .../adafruit_tft_lcd_st7789_dma.slcp | 2 +- .../adafruit_tft_lcd_st7789_lvgl_dma.slcp | 2 +- .../adafruit_touchscreen_tsc2007.slcp | 2 +- .../bthome_v2_server/bthome_v2_server.slcp | 2 +- .../maxim_fuel_gauge_max17048.slcp | 2 +- .../mikroe_accel5_bma400_i2c.slcp | 2 +- .../mikroe_accel5_bma400_spi.slcp | 2 +- app/example/mikroe_alcohol_mq3/app.c | 90 +- .../mikroe_alcohol_mq3.slcp | 8 +- .../mikroe_alcohol_mq3_si91x.slcp | 69 + .../mikroe_barcode2_em3080w.slcp | 2 +- .../mikroe_brushless16_lb11685av.slcp | 2 +- app/example/mikroe_buzz2_cmt_8540s_smt/app.c | 134 +- .../mikroe_buzz2_cmt_8540s_smt.slcp | 6 +- .../mikroe_buzz2_cmt_8540s_smt_si91x.slcp | 66 + .../mikroe_captouch2_cap1166.slcp | 2 +- app/example/mikroe_co_mq7/mikroe_co_mq7.slcp | 2 +- .../mikroe_dcmotor24_l9958.slcp | 2 +- .../mikroe_dcmotor26_tb9053ftg.slcp | 2 +- .../mikroe_dcmotor3_tb6549fg.slcp | 2 +- .../mikroe_e_paper_154_inch.slcp | 2 +- app/example/mikroe_emg/mikroe_emg.slcp | 2 +- .../mikroe_environment2_sht40_sgp40.slcp | 2 +- .../mikroe_environment3_bme688_i2c.slcp | 2 +- .../mikroe_environment3_bme688_spi.slcp | 2 +- .../mikroe_eth_wiz_w5500.slcp | 2 +- .../mikroe_fingerprint2_a172mrq.slcp | 2 +- .../mikroe_force3_fsr400.slcp | 2 +- .../mikroe_gps_lea6s/mikroe_gps_lea6s.slcp | 2 +- .../mikroe_heartrate2_maxm86161.slcp | 2 +- .../mikroe_heartrate4_max30101.slcp | 2 +- .../mikroe_hvac_bundle_scd41_sps30.slcp | 2 +- .../mikroe_hvac_scd41/mikroe_hvac_scd41.slcp | 2 +- .../mikroe_irthermo3_mlx90632.slcp | 2 +- .../mikroe_lte_iot2_bg96.slcp | 2 +- app/example/mikroe_mic2/mikroe_mic2.slcp | 2 +- .../mikroe_microsd/mikroe_microsd.slcp | 2 +- .../mikroe_nfc2_pn7150.slcp | 2 +- .../pn7150_nci_t2t_read.slcp | 2 +- .../pn7150_nci_t2t_write.slcp | 2 +- .../mikroe_nfctag2_nt3h2111.slcp | 2 +- .../mikroe_obdii_stn1110.slcp | 2 +- .../mikroe_oledc_ssd1351.slcp | 2 +- app/example/mikroe_oledw_ssd1306/app.c | 63 +- .../mikroe_oledw_ssd1306.slcp | 6 +- .../mikroe_oledw_ssd1306_si91x.slcp | 63 + .../mikroe_oledw_ssd1306_glib.slcp | 2 +- .../mikroe_ozone2_mq131.slcp | 2 +- .../mikroe_pir_pl_n823_01.slcp | 2 +- .../mikroe_pressure3_dps310_i2c.slcp | 2 +- .../mikroe_pressure3_dps310_spi.slcp | 2 +- .../mikroe_pwm_driver_si8711cc.slcp | 2 +- .../mikroe_radar_mm5d91_00.slcp | 2 +- .../mikroe_relay2_lca717.slcp | 2 +- .../mikroe_rf_meter_ad8318.slcp | 2 +- app/example/mikroe_rng/mikroe_rng.slcp | 2 +- .../mikroe_rtc10_ds3231m.slcp | 2 +- .../mikroe_servo_pca9685.slcp | 2 +- .../mikroe_smoke2_adpd188bi_i2c.slcp | 2 +- .../mikroe_smoke2_adpd188bi_spi.slcp | 2 +- .../mikroe_stepper2_a4988.slcp | 2 +- .../mikroe_stepper_a3967.slcp | 2 +- .../mikroe_stretch/mikroe_stretch.slcp | 2 +- .../mikroe_temphum15_sht40.slcp | 2 +- app/example/mikroe_temphum9_shtc3/app.c | 82 +- .../mikroe_temphum9_shtc3.slcp | 8 +- .../mikroe_temphum9_shtc3_si91x.slcp | 67 + .../mikroe_thunder_as3935.slcp | 2 +- .../mikroe_turbidity_tsd10.slcp | 2 +- .../mikroe_utm7segr_max6969.slcp | 2 +- .../mikroe_uv_ml8511a/mikroe_uv_ml8511a.slcp | 2 +- .../SimplicityStudio/mikroe_uwb2_dwm3000.slcp | 2 +- app/example/mikroe_water_detect/app.c | 86 +- .../mikroe_water_detect.slcp | 10 +- .../mikroe_water_detect_si91x.slcp | 64 + .../silabs_ir_generate.slcp | 2 +- .../slave/silabs_lin_slave1.slcp | 2 +- .../slave/silabs_lin_slave2.slcp | 2 +- .../silabs_pir_ira_s210st01.slcp | 2 +- app/example/silabs_triac/silabs_triac.slcp | 2 +- app/example/sparkfun_6dof_imu_bmi270/app.c | 194 ++ app/example/sparkfun_6dof_imu_bmi270/app.h | 31 + app/example/sparkfun_6dof_imu_bmi270/main.c | 58 + .../sparkfun_6dof_imu_bmi270.slcp | 65 + .../sparkfun_6dof_imu_bmi270_si91x.slcp | 70 + .../sparkfun_accelerometer_mma8452q.slcp | 2 +- .../sparkfun_air_quality_sgp40.slcp | 2 +- .../sparkfun_distance_vl53l1x.slcp | 2 +- .../sparkfun_dosimeter_type5.slcp | 2 +- .../sparkfun_environmental_bme280_ccs811.slcp | 2 +- app/example/sparkfun_gnss_max_m10s/app.c | 193 ++ app/example/sparkfun_gnss_max_m10s/app.h | 31 + app/example/sparkfun_gnss_max_m10s/main.c | 58 + .../sparkfun_gnss_max_m10s.slcp | 65 + .../sparkfun_gnss_max_m10s_si91x.slcp | 65 + .../sparkfun_hr_po_max30101_max32664.slcp | 2 +- .../sparkfun_human_presence_ak9753.slcp | 2 +- .../sparkfun_ir_array_amg88xx.slcp | 2 +- .../sparkfun_ir_array_mlx90640.slcp | 2 +- app/example/sparkfun_micro_oled_ssd1306/app.c | 113 +- .../brd2601b/sl_i2cspm_qwiic_config.h | 57 - .../sparkfun_micro_oled_ssd1306.slcp | 17 +- .../sparkfun_micro_oled_ssd1306_si91x.slcp | 75 + ...n_particulate_matter_sensor_sps30_i2c.slcp | 2 +- ..._particulate_matter_sensor_sps30_uart.slcp | 2 +- .../sparkfun_proximity_vcnl4040.slcp | 2 +- .../sparkfun_qwiic_joystick.slcp | 2 +- .../sparkfun_qwiic_keypad.slcp | 2 +- .../sparkfun_rfid_id12la.slcp | 2 +- .../sparkfun_soil_moisture.slcp | 2 +- .../sparkfun_spectroscopy_as7265x.slcp | 2 +- .../sparkfun_weatherstation.slcp | 2 +- .../component/drivers/mikroe/alcohol_mq3.slcc | 7 +- .../drivers/mikroe/oledw_ssd1306.slcc | 5 +- .../drivers/mikroe/temphum9_shtc3.slcc | 3 + .../drivers/mikroe/water_detect.slcc | 5 +- .../silabs/sparkfun_6dof_imu_bmi270.slcc | 29 + .../silabs/sparkfun_gnss_max_m10s.slcc | 33 + .../silabs/sparkfun_micro_oled_ssd1306.slcc | 7 +- .../services/mikroe_peripheral_drv_adc.slcc | 7 + .../mikroe_peripheral_drv_digital_io.slcc | 13 + .../services/mikroe_peripheral_drv_i2c.slcc | 11 + .../services/mikroe_peripheral_drv_pwm.slcc | 10 + .../services/mikroe_peripheral_drv_spi.slcc | 10 + .../mikroe/inc/drv_analog_in.h | 21 +- .../mikroe/inc/drv_digital_in.h | 2 + .../mikroe/inc/drv_i2c_master.h | 7 +- .../peripheral_drivers/mikroe/inc/drv_pwm.h | 5 +- .../mikroe/inc/drv_spi_master.h | 9 +- .../peripheral_drivers/mikroe/inc/hal_gpio.h | 29 +- .../mikroe/src/drv_analog_in.c | 84 +- .../mikroe/src/drv_analog_in_si91x.c | 258 ++ .../mikroe/src/drv_digital_in.c | 41 +- .../mikroe/src/drv_digital_in_si91x.c | 174 ++ .../mikroe/src/drv_digital_out.c | 2 +- .../mikroe/src/drv_digital_out_si91x.c | 171 ++ .../mikroe/src/drv_i2c_master.c | 165 +- .../mikroe/src/drv_i2c_master_si91x.c | 299 ++ .../peripheral_drivers/mikroe/src/drv_pwm.c | 67 +- .../mikroe/src/drv_pwm_si91x.c | 183 ++ .../mikroe/src/drv_spi_master.c | 205 +- .../mikroe/src/drv_spi_master_si91x.c | 434 +++ .../brd2703a/mikroe_alcohol_mq3_config.h | 5 +- .../brd4108a/mikroe_alcohol_mq3_config.h | 5 +- .../brd4314a/mikroe_alcohol_mq3_config.h | 5 +- .../brd4338a/mikroe_alcohol_mq3_config.h | 43 + .../config/other/mikroe_alcohol_mq3_config.h | 7 +- .../alcohol_mq3/inc/mikroe_alcohol_mq3.h | 22 +- .../alcohol_mq3/src/mikroe_alcohol_mq3.c | 27 +- .../inc/mikroe_cmt_8540s_smt.h | 8 +- .../src/mikroe_cmt_8540s_smt.c | 15 +- driver/public/mikroe/co_mq7/src/mikroe_mq7.c | 9 +- .../inc/mikroe_e_paper_154_inch.h | 1 + .../config/brd2703a/mikroe_ssd1306_config.h | 25 +- .../config/brd4108a/mikroe_ssd1306_config.h | 25 +- .../config/brd4314a/mikroe_ssd1306_config.h | 25 +- .../config/brd4338a/mikroe_ssd1306_config.h | 129 + .../config/other/mikroe_ssd1306_config.h | 35 +- .../oledw_ssd1306/inc/mikroe_resources.h | 2 +- .../mikroe/oledw_ssd1306/inc/mikroe_ssd1306.h | 7 +- .../mikroe/oledw_ssd1306/inc/oled_display.h | 3 +- .../mikroe/oledw_ssd1306/src/mikroe_ssd1306.c | 51 +- .../mikroe/oledw_ssd1306/src/oled_display.c | 11 +- .../pir_pl_n823_01/inc/mikroe_pl_n823_01.h | 3 +- .../pressure3_dps310/inc/mikroe_dps310_i2c.h | 1 + .../pressure3_dps310/inc/mikroe_dps310_spi.h | 1 + .../inc/mikroe_adpd188bi_spi.h | 2 + .../config/mikroe_shtc3_config.h | 70 + .../mikroe/temphum9_shtc3/inc/mikroe_shtc3.h | 9 +- .../mikroe/temphum9_shtc3/src/mikroe_shtc3.c | 19 +- .../inc/mikroe_thunder_as3935.h | 3 + .../mikroe/turbidity_tsd10/inc/mikroe_tsd10.h | 3 +- .../brd2703a/mikroe_water_detect_config.h | 10 +- .../brd4108a/mikroe_water_detect_config.h | 10 +- .../brd4314a/mikroe_water_detect_config.h | 10 +- .../brd4338a/mikroe_water_detect_config.h | 61 + .../config/other/mikroe_water_detect_config.h | 16 +- .../water_detect/inc/mikroe_water_detect.h | 2 +- .../water_detect/src/mikroe_water_detect.c | 12 +- .../gnss_max_m10s/inc/gnss_max_m10s_driver.h | 1176 ++++++++ .../inc/gnss_max_m10s_micro_nmea.h | 208 ++ .../gnss_max_m10s/inc/gnss_max_m10s_nmea.h | 382 +++ .../inc/gnss_max_m10s_nmea_struct.h | 169 ++ .../gnss_max_m10s/inc/gnss_max_m10s_ubx.h | 344 +++ .../inc/gnss_max_m10s_ubx_struct.h | 511 ++++ .../gnss_max_m10s/src/gnss_max_m10s_driver.c | 2645 +++++++++++++++++ .../src/gnss_max_m10s_micro_nmea.c | 682 +++++ .../gnss_max_m10s/src/gnss_max_m10s_nmea.c | 684 +++++ .../gnss_max_m10s/src/gnss_max_m10s_ubx.c | 2094 +++++++++++++ .../config/micro_oled_ssd1306_config.h | 22 +- .../inc/micro_oled_ssd1306.h | 35 +- .../inc/micro_oled_ssd1306_i2c.h | 95 - .../micro_oled_ssd1306/inc/oled_display.h | 3 +- .../src/micro_oled_ssd1306.c | 153 +- .../src/micro_oled_ssd1306_i2c.c | 134 - .../micro_oled_ssd1306/src/oled_display.c | 10 +- .../config/sparkfun_bmi270_config.h | 71 + .../inc/sparkfun_bmi270.h | 445 +++ .../src/sparkfun_bmi270.c | 1747 +++++++++++ templates.xml | 152 +- third_party_hw_drivers.slce | 6 +- third_party_hw_drivers.slsdk | 4 +- .../postbuild_profile/wiseconnect_soc.slpb | 20 + 243 files changed, 16359 insertions(+), 1034 deletions(-) rename app/documentation/example/mikroe_alcohol_mq3/image/{create_project.png => create_example_1.png} (100%) create mode 100644 app/documentation/example/mikroe_alcohol_mq3/image/create_example_2.png create mode 100644 app/documentation/example/mikroe_buzz2_cmt_8540s_smt/image/create_example_si91x.png rename app/documentation/example/mikroe_oledw_ssd1306/image/{create_example.png => create_example_1.png} (100%) create mode 100644 app/documentation/example/mikroe_oledw_ssd1306/image/create_example_2.png rename app/documentation/example/mikroe_temphum9_shtc3/image/{create_example.png => create_example_1.png} (100%) create mode 100644 app/documentation/example/mikroe_temphum9_shtc3/image/create_example_2.png rename app/documentation/example/mikroe_water_detect/image/{create_example.png => create_example_1.png} (100%) create mode 100644 app/documentation/example/mikroe_water_detect/image/create_example_2.png delete mode 100644 app/documentation/example/mikroe_water_detect/image/water_detect_config.png create mode 100644 app/documentation/example/sparkfun_6dof_imu_bmi270/README.md create mode 100644 app/documentation/example/sparkfun_6dof_imu_bmi270/image/create_example.png create mode 100644 app/documentation/example/sparkfun_6dof_imu_bmi270/image/create_example_si91x.png create mode 100644 app/documentation/example/sparkfun_6dof_imu_bmi270/image/hardware_connection.png create mode 100644 app/documentation/example/sparkfun_6dof_imu_bmi270/image/log.png create mode 100644 app/documentation/example/sparkfun_gnss_max_m10s/README.md create mode 100644 app/documentation/example/sparkfun_gnss_max_m10s/image/create_example_1.png create mode 100644 app/documentation/example/sparkfun_gnss_max_m10s/image/create_example_2.png create mode 100644 app/documentation/example/sparkfun_gnss_max_m10s/image/hw_connection.png create mode 100644 app/documentation/example/sparkfun_gnss_max_m10s/image/log.png rename app/documentation/example/sparkfun_micro_oled_ssd1306/image/{create_example.png => create_example_1.png} (100%) create mode 100644 app/documentation/example/sparkfun_micro_oled_ssd1306/image/create_example_2.png create mode 100644 app/example/mikroe_alcohol_mq3/mikroe_alcohol_mq3_si91x.slcp create mode 100644 app/example/mikroe_buzz2_cmt_8540s_smt/mikroe_buzz2_cmt_8540s_smt_si91x.slcp create mode 100644 app/example/mikroe_oledw_ssd1306/mikroe_oledw_ssd1306_si91x.slcp create mode 100644 app/example/mikroe_temphum9_shtc3/mikroe_temphum9_shtc3_si91x.slcp create mode 100644 app/example/mikroe_water_detect/mikroe_water_detect_si91x.slcp create mode 100644 app/example/sparkfun_6dof_imu_bmi270/app.c create mode 100644 app/example/sparkfun_6dof_imu_bmi270/app.h create mode 100644 app/example/sparkfun_6dof_imu_bmi270/main.c create mode 100644 app/example/sparkfun_6dof_imu_bmi270/sparkfun_6dof_imu_bmi270.slcp create mode 100644 app/example/sparkfun_6dof_imu_bmi270/sparkfun_6dof_imu_bmi270_si91x.slcp create mode 100644 app/example/sparkfun_gnss_max_m10s/app.c create mode 100644 app/example/sparkfun_gnss_max_m10s/app.h create mode 100644 app/example/sparkfun_gnss_max_m10s/main.c create mode 100644 app/example/sparkfun_gnss_max_m10s/sparkfun_gnss_max_m10s.slcp create mode 100644 app/example/sparkfun_gnss_max_m10s/sparkfun_gnss_max_m10s_si91x.slcp delete mode 100644 app/example/sparkfun_micro_oled_ssd1306/brd2601b/sl_i2cspm_qwiic_config.h create mode 100644 app/example/sparkfun_micro_oled_ssd1306/sparkfun_micro_oled_ssd1306_si91x.slcp create mode 100644 driver/component/drivers/silabs/sparkfun_6dof_imu_bmi270.slcc create mode 100644 driver/component/drivers/silabs/sparkfun_gnss_max_m10s.slcc create mode 100644 driver/peripheral_drivers/mikroe/src/drv_analog_in_si91x.c create mode 100644 driver/peripheral_drivers/mikroe/src/drv_digital_in_si91x.c create mode 100644 driver/peripheral_drivers/mikroe/src/drv_digital_out_si91x.c create mode 100644 driver/peripheral_drivers/mikroe/src/drv_i2c_master_si91x.c create mode 100644 driver/peripheral_drivers/mikroe/src/drv_pwm_si91x.c create mode 100644 driver/peripheral_drivers/mikroe/src/drv_spi_master_si91x.c create mode 100644 driver/public/mikroe/alcohol_mq3/config/brd4338a/mikroe_alcohol_mq3_config.h create mode 100644 driver/public/mikroe/oledw_ssd1306/config/brd4338a/mikroe_ssd1306_config.h create mode 100644 driver/public/mikroe/temphum9_shtc3/config/mikroe_shtc3_config.h create mode 100644 driver/public/mikroe/water_detect/config/brd4338a/mikroe_water_detect_config.h create mode 100644 driver/public/silabs/gnss_max_m10s/inc/gnss_max_m10s_driver.h create mode 100644 driver/public/silabs/gnss_max_m10s/inc/gnss_max_m10s_micro_nmea.h create mode 100644 driver/public/silabs/gnss_max_m10s/inc/gnss_max_m10s_nmea.h create mode 100644 driver/public/silabs/gnss_max_m10s/inc/gnss_max_m10s_nmea_struct.h create mode 100644 driver/public/silabs/gnss_max_m10s/inc/gnss_max_m10s_ubx.h create mode 100644 driver/public/silabs/gnss_max_m10s/inc/gnss_max_m10s_ubx_struct.h create mode 100644 driver/public/silabs/gnss_max_m10s/src/gnss_max_m10s_driver.c create mode 100644 driver/public/silabs/gnss_max_m10s/src/gnss_max_m10s_micro_nmea.c create mode 100644 driver/public/silabs/gnss_max_m10s/src/gnss_max_m10s_nmea.c create mode 100644 driver/public/silabs/gnss_max_m10s/src/gnss_max_m10s_ubx.c delete mode 100644 driver/public/silabs/micro_oled_ssd1306/inc/micro_oled_ssd1306_i2c.h delete mode 100644 driver/public/silabs/micro_oled_ssd1306/src/micro_oled_ssd1306_i2c.c create mode 100644 driver/public/silabs/sparkfun_6dof_imu_bmi270/config/sparkfun_bmi270_config.h create mode 100644 driver/public/silabs/sparkfun_6dof_imu_bmi270/inc/sparkfun_bmi270.h create mode 100644 driver/public/silabs/sparkfun_6dof_imu_bmi270/src/sparkfun_bmi270.c create mode 100644 utilities/postbuild_profile/wiseconnect_soc.slpb diff --git a/README.md b/README.md index 8ed2d581..d47f76ce 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,8 @@ # Third Party Hardware Drivers # -[![Version Badge](https://img.shields.io/badge/-v2.0.2-green)](https://github.com/SiliconLabs/third_party_hw_drivers_extension/releases) -[![GSDK Badge](https://img.shields.io/badge/GSDK-v4.4.0-green)](https://github.com/SiliconLabs/gecko_sdk/releases) +[![Version Badge](https://img.shields.io/badge/-v3.0.0-green)](https://github.com/SiliconLabs/third_party_hw_drivers_extension/releases) +[![GSDK Badge](https://img.shields.io/badge/GSDK-v4.4.3-green)](https://github.com/SiliconLabs/gecko_sdk/releases) +[![WSDK Badge](https://img.shields.io/badge/WSDK-v3.2.0-green)](https://github.com/SiliconLabs/wiseconnect/releases) ![License badge](https://img.shields.io/badge/License-Zlib-green) This repo contains example drivers developed by Silicon Labs engineers and are provided as [an SDK extension](https://docs.silabs.com/simplicity-studio-5-users-guide/latest/ss-5-users-guide-getting-started/install-sdk-extensions). These drivers interface with different types of external hardware and are tested against a specific device listed in the driver name. These drivers are intended to be fully compatible with Silicon Labs' wireless stacks. All drivers provide a minimal Simplicity Studio project for testing and to show an example usage of the driver. The driver source is provided for modification and extension as needed. All drivers in this repository are considered to be EVALUATION QUALITY which implies that the code provided in the repos is subjected to limited testing and is provided provided as-is. It is not suitable for production environments. @@ -101,12 +102,16 @@ A full list of all drivers in this repository is defined below: | mikroe_pir_pl_n823_01 | [Click Here](./driver/public/mikroe/pir_pl_n823_01) | [Click Here](./app/example/mikroe_pir_pl_n823_01) | [Click Here](./app/documentation/example/mikroe_pir_pl_n823_01) | | mikroe_uwb_dwm1000 | [Click Here](./driver/public/mikroe/uwb_dwm1000) | [Click Here](./app/example/mikroe_uwb_dwm1000) | [Click Here](./app/documentation/example/mikroe_uwb_dwm1000) | | mikroe_uwb2_dwm3000 | [Click Here](./driver/public/silabs/uwb2_dwm3000) | [Click Here](./app/example/mikroe_uwb2_dwm3000) | [Click Here](./app/documentation/example/mikroe_uwb2_dwm3000) | +| sparkfun_gnss_max_m10s | [Click Here](./driver/public/silabs/gnss_max_m10s) | [Click Here](./app/example/sparkfun_gnss_max_m10s) | [Click Here](./app/documentation/example/sparkfun_gnss_max_m10s) | +| sparkfun_6dof_imu_bmi270 | [Click Here](./driver/public/silabs/sparkfun_6dof_imu_bmi270) | [Click Here](./app/example/sparkfun_6dof_imu_bmi270) | [Click Here](./app/documentation/example/sparkfun_6dof_imu_bmi270) | + ## Requirements ## - Desired Silicon Labs Starter Kit - Driver specific test hardware -- Simplicity Studio v5.6.0.0 or newer -- Gecko SDK Suite 4.3.1, available via Simplicity Studio +- Simplicity Studio v5.9.2.1 or newer +- Gecko SDK 4.4.3 +- WiSeConnect SDK 3.2.0 ## How to add to Simplicity Studio IDE ## diff --git a/app/documentation/example/mikroe_alcohol_mq3/README.md b/app/documentation/example/mikroe_alcohol_mq3/README.md index f051ef12..0a158b83 100644 --- a/app/documentation/example/mikroe_alcohol_mq3/README.md +++ b/app/documentation/example/mikroe_alcohol_mq3/README.md @@ -12,15 +12,26 @@ The MQ-3 provides an analog representation of its concentration in the air sent - [**EFR32xG24-EK2703A** EFR32xG24 Explorer Kit (BRD2703A xG24 Explorer Kit Board)](https://www.silabs.com/development-tools/wireless/efr32xg24-explorer-kit?tab=overview). +- Or [SiWx917 Wi-Fi 6 and Bluetooth LE 8 MB Flash SoC Pro Kit](https://www.silabs.com/development-tools/wireless/wi-fi/siwx917-pk6031a-wifi-6-bluetooth-le-soc-pro-kit) (BRD4002 + BRD4338A). + - [**Mikroe Alcohol Click** board based on MQ-3 sensor](https://www.mikroe.com/alcohol-click). ## Hardware Connection ## -The Alcohol Click supports MikroBus, so it can connect easily to EFR32xG24 Explorer Kit's MikroBus header. Be sure that the board's 45-degree corner matches the Explorer Kit's 45-degree white line. +- If the EFR32xG24 Explorer Kit is used: + + The Alcohol Click supports MikroBus, so it can connect easily to EFR32xG24 Explorer Kit's MikroBus header. Be sure that the board's 45-degree corner matches the Explorer Kit's 45-degree white line. + + The hardware connection is shown in the image below: + + ![hardware_connection](image/hardware_connection.png) -The hardware connection is shown in the image below: +- If the SiWx917 Wi-Fi 6 and Bluetooth LE 8 MB Flash SoC Pro Kit is used: -![hardware_connection](image/hardware_connection.png) + | Description | BRD4338A GPIO | BRD4002 Breakout Pad | Acohol Click | + | ----------------------| ---------------| ---------------------| -------------------- | + | Positive analog input | ULP_GPIO_1 | P16 | OUT | + | Negative analog input | ULP_GPIO_7 | EXP_HEADER-15 to GND | -- | ## Setup ## @@ -28,13 +39,20 @@ You can either create a project based on an example project or start with an emp ### Create a project based on an example project ### -1. From the Launcher Home, add the BRD2703A to My Products, click on it, and click on the **EXAMPLE PROJECTS & DEMOS** tab. Find the example project with filter **mq3**. -2. Click **Create** button on the **Third Party Hardware Drivers - MQ3 - Alcohol Click (Mikroe)** example. Example project creation dialog pops up -> click Create and Finish and Project should be generated. -![create_project](image/create_project.png) +1. From the Launcher Home, add your device to My Products, click on it, and click on the **EXAMPLE PROJECTS & DEMOS** tab. Find the example project filtering by **mq3**. + +2. Click **Create** button on the project: + + - **Third Party Hardware Drivers - MQ3 - Alcohol Click (Mikroe)** example if the EFR32xG24 Explorer Kit is used. + ![Create_example](image/create_example_1.png) + - **Third Party Hardware Drivers - MQ3 - Alcohol Click (Mikroe) - Si91x** example if the SiWx917 Wi-Fi 6 and Bluetooth LE 8 MB Flash SoC Pro Kit is used. + ![Create_example](image/create_example_2.png) + + Example project creation dialog pops up -> click Create and Finish and Project should be generated. ### Start with an empty example project ### -1. Create an "Empty C Project" for the "EFR32xG24 Explorer Kit Board" using Simplicity Studio v5. Use the default project settings. +1. Create an "Empty C Project" for your board using Simplicity Studio v5. Use the default project settings. 2. Copy the file `app/example/mikroe_alcohol_mq3/app.c` into the project root folder (overwriting existing file). @@ -46,14 +64,19 @@ You can either create a project based on an example project or start with an emp - Install the following components: - - [Services] → [Timers] → [Sleep Timer] + **If the EFR32xG24 Explorer Kit is used:** + - [Services] → [Timers] → [Sleep Timer] - [Services] → [IO Stream] → [IO Stream: USART] → default instance name: **vcom** - - [Application] → [Utility] → [Log] - - [Third Party Hardware Drivers] → [Sensors] → [MQ3 - Alcohol Click (Mikroe)] → use default configuration + **If the SiWx917 Wi-Fi 6 and Bluetooth LE 8 MB Flash SoC Pro Kit is used:** + + - [WiSeConnect 3 SDK] → [Device] → [Si91x] → [MCU] → [Service] → [Sleep Timer for Si91x] + - [WiSeConnect 3 SDK] → [Device] → [Si91x] → [MCU] → [Peripheral] → [ADC] → [channel_0] → use default configuration + - [Third Party Hardware Drivers] → [Sensors] → [MQ3 - Alcohol Click (Mikroe)] + 4. Install printf float - Open Properties of the project. diff --git a/app/documentation/example/mikroe_alcohol_mq3/image/create_project.png b/app/documentation/example/mikroe_alcohol_mq3/image/create_example_1.png similarity index 100% rename from app/documentation/example/mikroe_alcohol_mq3/image/create_project.png rename to app/documentation/example/mikroe_alcohol_mq3/image/create_example_1.png diff --git a/app/documentation/example/mikroe_alcohol_mq3/image/create_example_2.png b/app/documentation/example/mikroe_alcohol_mq3/image/create_example_2.png new file mode 100644 index 0000000000000000000000000000000000000000..ab7b7703eed465ae12776ba76ba97423f3cab61f GIT binary patch literal 87678 zcmdS=Ra9G1|L={q6ll>3?(R^E7ccJaUR*+;c!L(FSg@i6N^$q#P-r2zYl4&l!J!Zc z4G?&F_WnQnJvZm#+?_qg$jDe3Yp%KG%#@#eKc98ARfzDZ@gF^UM5LywsQ>5@cE+Pe zSUAscAAX5?SDy3m_1H&WMgCFUB<=pg1-7%CmfWL9jbMUXTbze$ybr2oK93%~^8L@} z@wyYk$48IuOVt$R3_n^Qtr5H@UFebh%TFr6nfZRf{eY*RqW>wYiAGxdyY^=>)$iKz zSxvZNxTy_=D>(J;Twdr##ADCAsthF2&0{pj8fNM+vQ~Il<+sGO}pmWl;C+jmK`b`l;W=;f0;hh)Lj|fT?#J0#L?YoQ7$d+5EA3NK zQQ2{yyW5Kr7(2WWgLR-j_Da!DZPJNgroC!C(AmUk9z1X0Eno9JIQ32R4s@xH8&2n- zV9_yj=Ug$_HI1UJi;inokKM{$#eT};(jhA{&Oj$>cB}kE>#}se`VyvWUmKZt?n5l{ ze}~4}^7SO0Mb1+mdwvQsRhmL3(mB7q9%rAIS%pE{;#G>*kSbHgE2)qC$!!z&yCh4= zij2d?C~i>tq^n|h3i{WKu*(i>)!snDGAYYXv&Z3C6JwhahP+chGiWs7#}N*M9Uur~ zV!(enIX6jZxGN+IRuC@ue({mY-p?a-O!dGF=V2k(RqVOkIZoN>0;FGfo4@{@)wihT zYV7p+-OkIS&mI(sa-kwR=KWP4=UaN75PB1WJEWiD0Nmco)`VpXs~oP9?gdj-y`KxO z?+-p|+ZLoV@i#*?_c3)okFk`-n=9awAFTU9v(%~c6Q3Nr%TgxR348R=(E873E=v2} zq0!EbH#i_~>1V#g=N;oS!z+}5b}hJ;Un4KGiBQ*6NitmhJJGrGUoivkHQ)6Y5ES#% zy>hrK*#RH_UDgZiLW_~4nAG;|q_bIxeeqbI5D00brWZ|4Q#O6CpdyQXM=AjT-g4|CTS|`2TYqgFzB04E zv0yGnn$0gYdgR}w5JS9K4on{CGN2XxQA95N`#sIqW6m1!Z(-B!)%KyXQ=sMz!HKI$ zLhzM47`U+UcktSZE4kEW&lCOOcdh$e_lIBnf01jggULtzqF@k)sBvj3Amjd9*y~SE zL^SAfc5m*8?c?&>=NpeXFi*6^r++US8}AM0XK%-egiT#WC$C-euKP>k*NaWi45e5U zg&C<5zlD%FO6t4!_RZNhl)i0BfK=*ygm*Ho`>Y3v{rg&vY4A7|R@rR3wgA@LzC?Os zi+?RdWZ!E?-Vs6L;w`~`nmp%WEg!|Xcgxr(vzYLC==LISmOWP-4|H?WLw~hJCkxN* zM$)(^XLJ!@tZ8a)gtr}E+45xxMEO`7EJaZWO4nQU;#ySM-)&&NM&9x^ABXGK6G+l( z)SunaGcM`XO>L5{U(SVDb3U6`;VT{hRsq# z{oDP!w>$dgY=|1jXpAMBG?7><$wZIS4wH8cG?4?TmocHifgw7-0oHj9U+d4}c3*~c zM4lR(398vRG3W%3!KioP={gJ?X}B^4zrqon%{xKX4x zSd!n76Vr8HT8%EzWbje%VAW>u0n~g=Vp6kDX%lFF=5Y*|O9^(xjrTtw2~IiH{G1mR z!GDPtI{!K^Dg*vxKG&_K*h%Yg+1l4c>xUVsqmJvHX%zLcmDq&ay?nn|4xl(#%(a(Z z5Zm<#12Og#JP5o~-v#(X`CEnAdPB+mZdTd#~ME$vLCW7jl&*1oBJY!inN zmJN+WHf$$HwL?5kvd*tG+h56L_gkkp8z({O`QI!@PP1Zg8x|kG@LQqx^x+b5FU~po zUGwcFMPJM1e_4x%JpG3{HsV}V$;a2*Y*S7jjWo`wH{yx|C(J`@nJ@b08^z~b3X7Wc zym&>gU}jO{Gvf5EdO$Jq?|+L*9&s%%NoFECtwk*Js!7qF#`|0SE{f=Dtb5SBF*MlL z;*jw%o22@whC*^jM>-$zKA6o8(#fWKHWkAy04IrC4>vmK>+;L+U3}2hjRu>#AXD)wcI<@wQ!W7oJ)D(EY7vZ zK@R>A%ZHOgkkDA<_LQ31-`-*nmz3Wy#}?_fNXBG;>%OsYLtUK`(6&3my`NmlS#Jc_ z1h&zUX{3Is=qsA<`5K5hGA6TUL8|xXU9JD zwI2L*0dcwvWzvb?%v3uQ5EzK8ToUJh|O*Jtw zxdx`o#)a$4cZ*>n-u0L5)Qr0)x|4Ef&K1gA|EfSC8^?v8LdEk5kY)aY-{fdvgncrXr%KJ2J@xpD?g)DI7cqBp@{07MV-ad zQD4#^kz!<>hi4b-Lh9v5h_lEcc@6W4nbj;JTaVoBQVBq&n#Y1+I|Vu{>t&pnNjKZn z6?ZEvWxMxjtz#L3fTqX8D3<~kg62wl$@y`14VB&1d2jO)(EM4=U|zRbo)HKJdAlH7 zPaXVq!@{93rrmPF7AQz^p8~!OUlI{m7wA(Dn|e|4S#Nqt?$qu2q-dYr^YK)INCItT z8R)0PecN=XZMv8z6P=iB&@R9W?)C*B>>6z^8SDm9$?JuC3W>^2y!GTo_3(Bj(Cs78 zHSlje4;7vlS@Te@H;UpQz34r_5pL&*t!!db2rzzUbs-T@;V0V>`y2UZv8f#7(zhFi zuM+EaZfs(3@{%m6&zXAG{({2VF144DA?KP$uk~$IMb)dI$`0Gl*X~L6l47mPsATXS zz={fT?Pd;X# zrMY^hV;r}jB`mOHm}%F0NKI1TtH1!n>k&%v%af_&lH)5pUlH)rL&Ki>7`lmoAowEJ zE^p1RmXnoM$q?6U2j;C-3?hKlnA-aNEhqjg`@DL5QyUMZR2gplKU=@~6Ex{;w!a9a z+_#JKn?|EOA?^xw#ighn*Wr&V!CGqaC!-OM9O1=-!B$m2zl)7VxOf1#f~o+;ApY6L zN(Gr6K2(iM$T)cJPpX3lwSL<|MylJj-T~wvDVQMOj6>#ia~HR6r!|8K#gwVZ<5g>6$uB2VaD74GOrF zY9W!_DO=YQ2pQ?3mwsQAvX9S5r9iMDR!s|I@_%?je7rD(?BCr%>x5ay#c~rMu~*(pM(P7EDLwKGG2m*mT6dD5?Kq zbXO?q0;)%AlWgXM>LhH%c!Ke5t@6x}hiIy8^ZmA(!JvWB|EsI2#$Y?)t)&s{qx@IB{P z(rqP5x`pF_GHH&rQ3tO!;QKR+VNG8z0C`^N;!BPSfqG0%tk*myXbm``TUXG##WjYO zHE4n%*`b8c?=)QE%lcRzOvNQ%sLPhX|6 zgSrR2gAA6>ZiOL;p|eFpL4w#Dk@v}B2uXzO3B7TitaB|ET|;MWX?)WLLcq9IPwDoP z{m&<5Ro@`I&;!N-huuMQX;|j*^7MQ)rM;kpS}<2zwzd;%u9|8loy&Bx>6vV>JZzD^fza z5{T5|D>qCi)2#npU92ltqw21!r;)0+&=R4OZs<=1UI!l#(D3fVI*GdTp5l0fGEVGG zAmOwfVM`nM#stS%zjM1qu7c}sT&wM8F2n1(Ci|}pfIUc|9Z&2~dH17VcK1tBkK|=N zc*kOVRT|MOwIAHYG-@3|^yk*pU_|*9xn%sQ-&Emww_mmST=OVJAnTJuRAXHqI0SHv z__5SlA`U8kk=w0?tebzduZatP->Q9=7TP@9GZ)VNrO^G4>-4)C79@_W4z;_y=~Dc= zeb^yww>d^R&DENUcmEqx_OXLciBt>IEg~a4x4UwSd9A7N34%cQZWeMS(tq_{nj8zc zs&kOdX>l+U3_CP;+4Qo6JG~X{Cet*)I3b`B!xVvaSul24_YdRGOo!aGNq%kp=g49Y z*fFy6uMA>-k`sn+X~D=W_$sxGspVSOOI6f_%%+2^H8alLsPwQG-~GuoqZVKBA!0NT zVB`QOZ{vzPtp(!;5mi}=;47we75B6Mvd&973R;VFjvXr6!_5x*RS$TlaEQB)fg8j# z8#sH&Ei9fZNeGB8{jM5Q7&^uYFP?l^u+J`d6mQBlO#d}PZ47IzG*f%aM;CE8LT2t9 z!h$7xtW)qVLv*kjxs!6t+h0=Ru-#4dyG_xG${Y5l65zI$U?a%DpF_Ddv(oFLxIn^^ zl2)*Bkxzk9(*kLU*jRpzX|HyES|iS$pQVjXuMaVg?k;kp!G+n_kiVZjMqej@?2F`(SL&z^oS=e|dr^cRd?X?HyPv>8csc zg|_()^Jz8b&8=&pYE^b`Wm@#sD^RU!s+1{_vt^-9_QYxRImeimW^&c5q|+&7_3lv} z(G|lsavZU8Mjy~z-vV=uh<*%AbJsIrFefwiuc>P9b?$qJ0o^D)T||4H`M;4e8Hr7g z>(3s?KX6!5yn1Bnw(EHbbnoiqN9?Y=fL&JkOFA<){}#^Cjb(iDuu_FLlJBXiRe6LU zdg`ZtC6v?KkU}ZQ6qQmH(zV&AURh2qM!(H_xwKjT7&495j_S8AH-pm>6ntn zq~S@_K0o$`94-V3rBN#jwCu$<|72}rzH3D7svRV(X))BiZmj@pRn^8+Id*(#>(x?P z-22ch-Z=d6LyWWEN)|_vjwOSGlwL%YaowW1NjU_CcFneFB9m<4Fg<#QCRoYjxY#Lj z>A9R=jf>}K=G76=ltU5FTyVTR9)dKL4x{j!qKe6tu9D=!c}Q#(M%PZtAB~cT8Ovt6 zse_AT&N#7SY4j}2KDjQH+CnNDQd$@ZTo*t6$%-ECs2|TS09Fq3!NZ@(O8)*(u~|-M ziuu$L+la4evHZ&*dH$|yZYfM*!UKre`K*JizpAOR=v;=GVk;HGje2S5rpVl?nyEKG<(h(C%-dDk2(;2GeMs>1h zNS&-W%8eO-A{-N>Jm^>0*`pVhtl)HTuQ;&)>Bin6BqCPjUX4q&X8^HMa%1LKJF6n% zcK~x5{Q<+}z}`q4q5y7446;{k&~Yp9GFyom!#O=$nxD;iydg7h?Y8bHaK1R39~q@} zxF129Ef zw!E2-Y40DB5#c8ND9g7h`j$q6XB!XJRBLqC?SiYXm1hn~KP|V8RVXco^Xc$hT`IPv zET`O6H5QJgR_pkUDs}YU(wqS!ri3nAi$5$9HXM4~FIt!BweY!-A~ zc{Q+W`hxC^$AoD}7CDCh18}mgK^HyqG~Y6bf(#Vw z>WWuY7VPTF8BD7q?sboJ%RT0#LUV`EAI}qZ1x4}~OF9w|N~Zfi4!_Q>I!gRre(z>pgfEn=Byw%xBx{x%Wt#T}QT7-a${;=0&Dw=JjsEZ4MSth`HE6XMuhQ`9%FnGS zcoC#&KG)is6LE=Qd}FkbOc5g(tL9b@tR@ z6A^@qR|}msd56otcYPO_LB;HO-6O5T!Sv@#L<0|I8bEVn%gfp|+}HD%en6*<*@EHf zDE>zf12*}2>%gIFUS_%3jVe+tfK&p4Hm!N$X7jP8ukf}bAYIr-r^h40ug|7$Uhg*h zN}zksKID#FZWGT|MQ?U?5<&anTC9>uhK! zL$*B9d0I}qxUDrOO`OBO@NJb^dVanLF%hh(rt!|V&6@J1dn`2kA{j~KX9n*lVbf1H`F#=XSDoZZqwgZRlBb{7ePbX$NP_ z*N#KomxdZ_hmtB?)(xbXUtB@u=eva%TxD{fEQaXE-%3ImH;+8_zEHbEJNk3Zei5?z zE!ku%5^E!aJ4gKuI3nYFzKRpa7hBV~T<>RImz z*&xdfJ5s;`3miLXWb*CDZJ-@-nbivQjmA>u!yc=ToyOo>o*xrq=Wy+YSdxA`Qs%Z^ zQ8#$<&S;f>6uDN3aOF}(euNn(IoCEpv}KD9@}s+>#Z`d;I)$z=Cu-Sx<}syWxOH2p zo$q-@={4|9s7nf=TlEv(Vl(x5NwWdnfPuw2eqV+F2$d=gcb{&8xs6V@TjpB_>E37J zOTyK!RjL7%NKi4fEcx%+W?-M;wu}q|GHDaP?~)G7hQ#B|ZY}Rp)SHZwF3G3<&)24f zM5)pX1eSb#{D0@Iz0$#U-?4|2XSr9A?XCy}97D^fUF$d!hM4x1fr^##Xy^$b&pCG0 zRkgPTB(88=3FROETO)8Xs|;eq{~Lh z!HzfMg)HoJ9pG$9v$Om8!*4z5ku^_iTa9>9ZuH;iXiCB^d@M>vp;EtPOx3fpIsgk) z)ME{SjX@Sv&kd@oFI{Q?GwSF@_EM(Pmm94=Yv}s3j@%J>-1XcuatRkTbr$9LwnP2)C&jFH)B&yVWgbo7^agK0ez%*9 zfNa@YIy_sHk3-04cD*eGy}B{@-CWj`ogNhtumFvKsuZZ@$vfBOq!NOt?psOYbk z!5L&jIFah;u!+2Ln5S9KvYBQ_sYB+8#&>@$nX(ea;w2(Is0mX?R;b-y{{YO>7I`iUwWOX9m>jdUu-hPCDVm> zyD?;~o)m;wDgA>l(pT|P@e^Fq-9enbl}~~k62Dvk(l8Y7@|ybykM~y%#o@c4Vd<9G z@&OP*J-BDB;pX6U{6oaulE&|HU@PbvZvhqTUjR>RZN@QWGPB;Besm$)sk{^ZhOCn&Y_In@9&#G2Nn#;J3U zuFOe6u1(xnT?_NneY05mcQvN0*?oUz+_#4ffVCKkOKra}YoeUbq2RCI{tFUAXR-zz`5_PrW#g3 zDH-bV1JWcvZo(0Cns1YkCP|WV?V^ni(p z4f-}Rx!w|zhHbu6n7}2KDcETyLBf{G82e42u|WCKEbyhCmiHkJ%75{jCBuT0B$jk7 zh5ynt0TqJUoktpA6wO`h(zXtP3*NF~G;?4F8c%DM9KN%@(;evT8AoT&R8N3A{D?=M z9}2a8@09S-9g2~e*yj@AgbsJ8sRf1R?N4SDZlZ+)*vke*zSnjBLT878p&4T@j%UEy z0N0xfd#4lUekoerUDc^xN$vuw@I>*d7xjG}Ru3_F6Y~b*fY=$KsHG>*$1z4~g={np z7sOjZhq|ckXRI5BuLjVs$?fl4s?;Dgq>hMze05KBUFg^!f#aA*VuZOV7Mp+#wL+52 zJ1cIafZeUTp-9j!PMb|r-V8dxXL46f3;`m==0PON70wmUa5%mylQxK&Junx(4mt9b zTnfS+m3^&@`qEGS2j1UEH}ez^VUD8=U8Toxlro90_h_ejl>rvix0qgK5_fnK*56lr zYyFR_qye^(yYrI{3GS2mm3yOztPz>H^{pQ@1P28_aVo!*n`*v!KRhv)($`IDBnd~1 zpQiKS2(827m6oEYe!z?(YZ3W^jG`ZYFtU^5U00M1gv`}}+*PTL%;?AZ*vfGvvOQ>C zMnXScyfkfJ&j^dUAlM5X$7Xl3(;WW7ksKPDIItw}L_OwpY8=hi%AgUyYZyXNZ?CbqZ;*n6Tv`NyuMqy_m+Qdg^11T9^ z=ThwpcxepiFI~u%m6>dwHqVJ{x#^ai0tVsLQs}z5`z{!|igiMnUH>qX_Bu!~AH=7$ zE~_lO40*oQb_T#kx^gFDq{bqZ^NVJv6vnZvEZ~@wz$|+4$bGoV_Q;&kM%a)!2(EkeQ2c z{A&XEQLmgK?c|~S5=?cPVY^RP8P_b{H&<3iltVD4>(Tkr;L4jEaT6?2=vgq4E1jol zSS#lDdzJqQ7vGHU2=kwow{w1!{cx)bK;GX3>|7vVC6AB^nLeS8hXXu$l zAKLb3FdcB*)kJ60W9e24S>UEP=EmcRYS5BIVmz^D_H+$_@&H2Q^i zq60TW+z8~9x_v8-^EI1Mqq@lb9&<4>eSDtSX%fa%Z$by zLA+DVr-k)1<3bhBIBUngw=&Xq|GfmVK-a^RR_ly@P1cZ)(=TAVx15lztUTT+iMXk< zy~qjy5bR4R`s96oL0*x$U0&RzlB-=oi`VeN?)<`V^V=0ZL5X9PBxv z8u+IjoW^kX%e9$hVEi5I58va=MfL#T(%zQ(tu%KrowqHMR9eUAYgkNfn^a+x?v*=z zJiO%Zy!O|^5?L~qY^G(m%FWL`qH~6f1~+zQ(Yquz!BTfdW5H6w3>q4u?-g=U`FXkCAV}#82Ri(eMTC}fWJB{aDm8nls(C286Z6fP5+|?7td4+Fw$K-7@rl|) zlqk%UYqUy2d2xxOYxH7Lfbaft?#-Y{n2|RN0^<5%NvKM}`iBY|&*}WYWs9*!7zrDH z{UVZ)jMM7(YsJ9%fmX40*$w7-i4qVBN3XN7Dumq9{BJP*3_ndZAi)0T0B?!8#~TUp zE+tAYxrjx+0lk`l%@LkP+!&4oY;QTa>sLsrz6rfyrPP;>oO-^A z)v2^NmGjo?3Uj#kXYSArGNo(MV~hs;-=Yf5PSUDQ9)VrMs*7uAC-~j%+JV$%t;D29 z`lBwHl_QOPA7AW1D*;?|ZzuCJy&u%0PidDiXKuWmEM$#*lp6TSbSQ?48S=D?AGjGZ zte6jjEH^9Y0>`AR=9IOg_hE-CsM?$E-zzG=nQPYfG@tq%60A*#Sz)jwj_Uw+YuOBv z>@D}7W(%k@fV@7>Ppc!+?=n48RY7klR<3y_t_7p~@}*?^i+}bu@dp$mLIN1rxD?X6 zBVIRVb@C_sow_T0QTb1_@alw5J0EJF`raclN#4*DRtCYgu#<2a-cq%C%;jobLVT++ zFKCoieH3Lev{P$dwEX?0qY_e!itS4(?QzcFvwS)cgf9!#K6_nQs)A2SQ2m{Ju}lCd zzRpW}bQJKwp#}_TdCjf0SDc%7-muB%_lMYRxXA&_BD=M)vJ*(3Uto;kf+Gbwz!}BL zf(&2>7N3?;_YoHRg_I8v8HGH(=ut>T@2c@`S()$W2GWS`*hNCA7-;e=v{`RkT}QN} zuSFr~*Zpl!b4qAZYG~R_`Gio@L!w6h{jsd(ta_fc@S z1>nxa+B{C_s>}j^WR_3ft?T3`tKA27?}^q7?%m>VI9Y9c$;Z$9*3_1uJB%yF7SUA! zs}sROuX=o5d6{Hi>s9G5af69F7FtJ5%6s@Klg^c2T1idGPkLloqCB!a2?S4N**MwyEnQI_z#;u$^ z&s?WE_O}u|lZInTAeGaNZ)??qiy~!&WqcH% z=Qw+&tzQNUJhg?4DliZ}d`_UBhXk&Ohtf)OS>(aB)b`q*eNby^ae8R7!9g(n=zfcZ zklRQgN=z^2_6r%Og}vM28uL+A)=)N@caKGE})r`IZ*W zVnCHonoN~iJd$ucmb;0gW-2YQuj_@zME{>oW`|Xi`N!wKGi9&}Ipz1e967yP-{3Xc z{P53YDE`}e|0!*U>!qn#Vmx~xwP6A*;9|z<%$+^r3%YDlSSZE!v&;e0q~SD=TrXMx z)5dmltojC(s|gOxI4BsFvv!0>Wl-}VQ|$5gSl7gGxqy^9Rr>ISi*cIqc7awL!Sn*1 zfwT}k%bAP8DVW-ynHNEyJHluI&;at-ycu|=7M%qG*doKAq*dAh!EXrZm}oZ8ypU_* zQP7Q*@Y#@6(`t?Nv?>5A$8f*Jb)la7irFbTp45VVmG&#hfviLAuknmoAR$K}R(2?M zpt7T6K<!V9^zpbjql^!#hn`EZ)Ui=UWQK`;<;_51>vB8bO;7iN z<}Y5ciptp6sbf#=pDER`?J+B-*X@~ppA~Nzd{P0uCq1kBbSIGHVStdp#Okhk!h*hA zwLN?_N(-cHRehn?_dMb)5AjG{XvX|)8AsjVa~G#g8Or~-F@xnFzk)}}DT=;Vy7%n_ zJVYXoIeVrsXeN^>R1abKAPaKS61>9)Tfh6spzWpFsmDO(H^@majbGw#UsQ<_O%Y`* zBAZ-j9JXwqUkldk&J5=YbGwHNd%vry6#w|x`*b*#XPd^Y@6$1_tnwz{{&8uXLrLy6 zb4r9RDiWsx?=N;8Y$ri;VU!F|9>x@xr13Yu-BUv@Vrtcq^%ZWmf`SLvnb)0;x^pSh zu7D5OF#dMpq+&nnkxACiR&IrF;Ml?B+#Q3Iw2ZA2(}~QaRasmM+cumdE~W5F9lVRY z7=g$1yHwrJSZ(Z2!rqmB4QhJgIhC(u+OquhgQ4=Uv%>iz8wbGWUe4%h=U=FAFYF$N z!1<7W;AKL_8Dh+g%==_gA-b>oVDgnFRZ1e4Cj^C4Pp$;s{wUo43wT!cDOQ~UvGyJR zw^47EHQ>g8!BY#PpJLnl>2)4B*d}Mn>6Bjw=9HQ=h4ovt||m>%RWO#NWWYBG@bFlh+{H(r2eR}s9m+GN|OLJQAQU~GK4 z8kKzD<7JJtr1kMX^=f}fX!Xa^5J6`8uU!)?7#=2pge=ZJ!kl|Sd^q&`fM-gV{|+hZ z^Xv$HgSiSs`HiZgidegh4J7ns{KgrEXqLB4j)ClK4Ston<;3^g&=v*^E!eJ^6cT@) z>rg_l0reui}43{IYvtQvgcojbF^X8DwnS(|j%b%4p{Ga4`%HhmS*h}`o%W$cj zA_sdiH>*RlDrw^YMN587{LM!`>>uWK`I8h1FM~Omx>U|w zL0=@hnsCIn+=qOoD?H3WaQmbL4^nQ|`g$_lOmb&PrH0F>*&A+FW1*Lb`b)kbh{$3> zh$c@(pZkeanC5`hxJDlIB0|M^LFs6ZP}(&1T>ifYw;vRU)genAz2);uckUu*!|hXF zxhmdi>*JTT4BVYhKlm>8iK`)~;a@sGv-1`}AIb}e1B}1z%?PMczQ=EAt18Y26@EJX zUIzEF2x4x_0_`ni+)~Bp#|+Y9Ua$3DHXtH+WcrVV(WEV;5upt|&1n?RjuoB@+>z7m(zaOJ27guOR)1kuybGd~AB^2L*a{OGla& zXSQLD)5vXMzx=9kXk1acu3gK#OStdp%uEyP6eO0^f0WcpAH6x0Upm|Y%&lywud|4R z-=uDl3w*>spU^^Wt4%Id3d)x@<}dj9Ytau8UP?`|@(s(wT(1+1Uj%IhlLq?E=*K^J z@zF2eK$sSb`PY?9FA_to;AU_KhNhy%i+UgJUG&Y?l_8FdDr>ihKP;KikA{Q^| zf7ny)WAEs+yXX#ni%g^=IBy>m;pGp?xETc6F)m=des%*@xte;|T4R>HKy(cczisFj zV41mId5@dNveW1deT)Hgn=Qcwm-T5oPO+Om8M|3cZ1{u}U6;NG`c-JAxl%o(-T&Ey z|GjOQXuMF)yAg|^bKg%MFvm#xb|uV8A=G%zEe#HDIv%v{))C82vX!6#)u#_q3J3Fg zKEmT=3E4S4_Z3ksuCQOwD{OIA=|3!1VU6=eg70K@p9_zFRJreF|JMS)=r!8?{AM;s zgebaVD$G3(qTrLsvyEZ6hM+*i=jI4YKVQ&;!cTaDC9=@IW#km_hnoIFgZONM zl#jd|o;O|I?0jppA#G@sHV4y}I!G})Q2=Ratgm!@zG=;*9s7j# zRS|#WF=QcGSA&qx2P4*4mRdH-z=Wvo83W5Tom`b=Y8=Y~%yk0YtM_wBEMaR8nr&e) z=-Dwf)oN%{#)gCL{;Wx^%fXE~t1QAV?y~^5FC~3 z>Y?kv-IXnhf3n4Xq{_6FPv&*K7R zNZc^J>uk4g=d;!RX0W9A?-qNgMmaDqzEl;E4lGXIjJD7#lXhE>uMOI?5W+e!fd956 z?R)RR{b+t3V(imnTEhQ&@D`A_Y*U&bb*&C45S0<5Q(%rkeAg^Zdbhj0{5hI4bUgSe z1RI`v)W>hB!h*q`dPs9t^CX{(Hx5<+G4kT^k)s;Fn32)I-YGe`^CM4ryjJjML{ll_ zO_DchvM03lg~dVe>!qf6JBO!Ud_HCSN~*v?*i*g{(Lic%g}T!D7Kk|H!QtyUu`EoC zdbgC{oR)Gh^Sq3Ci94i4>md}v=^xDGmaBTNJ?TBMNHIH~twvB1WEOLt_WpcCv}Co1 zdMCl+d;Od!JNiJxqH*uKY%=;`W3mlq; zn^>SJW`NMasxX2TX`nx;BR_h1t{6eIjEcl|G)Jg0d1X28*>}!pSD53`B-78#woPY@;J5wm#vq~5p?L^64;jRIy{h65t z34dhC_O_VG%-p&l$*RuNM{rzs9;^isN8a5rRL8G;M%JE^HORASxE(w@ zd6SOlfbv28>nZnI-zrLU-d*8r%S_ehScm3MolznGN=$CkL*nUMuTGds1}{ILhuE|W zS{-3Q$V^=f*GT=S`FsmTd9FFY*F{MIPmy~bv;Jb1MgKnCge}q z&%Wua5&hBX-pd_)sti=on0u+F+Bdgq*-VUn9y^z%-vC8DrhPM5ox5a{Omy}{YN}N0 zYL_fQ=84pualdh*44Mh9b>Esqj@@}%Kf%fbm@}?Hla0~aut#Ix z&WCq47VUmU{Pz6VCYgFR9OxH2bxfL9k({8CJSm}0GA8AdF6Elchw;bR<6ll7e`Bya zts=PQXm9a#)PUp1BED6QDnoc(F--Ky{!*01ACFjc+ z7p?9uXIuT^ln#2TQ$uPSt=v_E6nhp&4-c}b`<``Z;fhHnYwK&NDF^ekGQ%teyz=SRYKi!?;0+uW27c-iCs4Y1Wvt1Cj&rCST= zcmiF2LAa4WwYE|}JdRX*K-1<47k0`xYMq$bKKHXSGoL3tX8Z16`55o$!=Hf+zP$w>6;L(moN3;_U}Gd&{c(ia#4G?omoQD zJd>CT*wB#jvB0R~SeflFmno=A*;>}jL5RhD-CuR!sJv3DAj=6vv0S_(Aa)>E_o#i)@1#ztC|KSgZcWmyjvrtQ9y4RQWVYOOs-cc8M>y;a!Md1I{6FtC6S3o@~OXU9x(Yd^x1WW7~p~)+Ip{Ma16#XBJvjW&SLi68o zh>rgMmEn{aH&`d8efw$2CXBAMwDjX?&(&Y}#vQqdO^C=)5>4##vMI2DzxN+jz?vTg zF@sE^a{&mK!pb*QbnR#=>`n+Vo)ekp(TNwZ>h<*e{Jg<#5FcaZiQJunvSnFDR2r1q z-Jp)I4LQ(ja*?>3Lo}Yha-0i3$H(J4I67|rN#I}Xy-F0CoZj`lM(-B3o~Aoy%Y;bW z{f(9Vz2aOrIHx09tJQ~s0cMt$EBI`_IR;+LsGOa2ow|+LTj`)z$8&@P0E@gpIHe5c z!eBMC%`wP) zDRv!X7bacC2TSN?d3U{|$4Tp^wqbKR5cfT-m^5GSUo0|}zE(%<=mF-t>t{x~h03`3pB+P; zWmfb_e~Lm;2_R7Lc{9E3>jWc9MGA*sL6e8R*r=()ls;Ekd>YycJ-Efq`dDaE4O6)p z;?lV7PD8P;US@vF;iwm*xs1hI-)}ETca7%=Krx;o3-tm`dyML=TgkdokS9!}l{<}o z`w^}RlkfcH127?B!TipvBOHu}@dd+s4Er5?)qTq4B2OQ{MI%3Srch#X>XjyDQ|bf?l?OA4$E}>2oThcPUC&vJL%Z28LBSjS4viBTWUYgAtaWk(ar&+o z>RXna7(y;mQFqT}Z@=+vJb5nlP0RBDX5UMH_iqafJN)%a5o1*jgP9*==Cmb=z|yE} z2;Y;C^8W77CLld%`(;K(MtfZnuFcI51$y<<<0mQk`AO12sNa?41?S7p`%n1oLn6#< zI!;uSl@Cr^Jc(nU6o#OvtONJiZa3~Rg{YFu4a`Y^s+QJZg&ymCXaocx)b>H%1cqhvynM6lQk6?T?7&-Cru(qvbeCA^Ih-CY9= zjg0mS{crZm3tJL8Qqbc$X`z^FR|@aL53_3eoPKGViuZSz*8Q|I*^hr2Gx;oHx=wp( zY(g%{0DQyM!Gc+`xkRM(6C!*Si7L~-9L-60_h-Tc6McpsngyY?Ls(J zLs|kPCGk6Np&a7NM&IuUg6W|ekYoq+3>M!UwQ8S@YJxSRegLDuF<>D zLmTrqY7ufB3f+;Vt#E3+sw6r&+g2+Yp{1C8gg0K~M>Yo7B#s$Fwf49kwEZMO}N z_LiL!+8_>ETv%>>^2%AOjoB!#Z5@Sp6LJCuA5s6HcAo zdxZ&O_Ba!(fYnb?{Jf%9!mSh;yQtT1#a0P**2I{?Ltxz_rD?c$Y>HLYx0D)vmc`{3zvSH0X@*YtUW*a_0O)qUy zAk0-eSJwRcV!t@wXQ!J#S`cqt)%Jkl{$H$2tU<#PXXH44IB|~6Kf}4`@3t5i%$4oj$iweHhF|$4sBXLsd{-eLWtOsGUYHcHf}M`+ZN~Q%LUkg(1+0V0$y)@5~65jIfs5 z+h8D!#qC!hR@p`_j-nz#;&tLfV z<087Qh-+s|*5`NQ|HIvTMm5!SZKGCDL=X_^y$aH$ccu3#y@N<-(mMz!MLJ0Dy>~(p zNI;Z;K77VPB80#f@8^Bq_xZ**&KcwUI6ux=Kls7kJA3W5=bC%Xd0q2bFvFs|aF_{XVdvVM`#C#h9n{1wH^I;;J7~ z;v_lFDLUqUGueD@vV&&rMfGlckXguFaStgTi@vf*Tv_~bYvjPD&<&vywe_zjeeWF??aPPpr(49JL%RY z<0G#cI0gd@8WabSY%|VZ%sIB9`L$zwaL3@Jyh?5^uC|LC-0DXRbYn>;scB9efAHZ& zV{*VIP+$l-p$0Mn!LyV>R-qg-2gN5B6js5yX14OJ79Tfm*SQBFPaq84u(Q%68PEE0+!~rz$PqdNI|I&HPFD!~1*sMc z_4Ix$3m7h?I-^|T)wxVYWL|7a535tf2d4}4V2-;lC0FA&22{@8^lwA#L*CSzmTQ91 zt3kk{XD*9w0ICQQ&aoSuA5X-csvQIm4ox{rJe>aX$6xu)n+#{!sP3@4~VQHE2I}B>3xHME9E*%4y1;(>w`tBeqAPQoeT_ypJ9@`!akkgAMIjB=6--wN65VI6Tud_PQX|Lp|H9Wi^wZ`B23#Vz%EhVZPqJ(CaVpGTO9c zxSw0wV&ka5p7;5AOPw-N@ym}n@+I30vXaUr+OMXDp}J#TlUcsSGo8ASOZ2fMx`6iG z%#;d;0(xS4Wn6ip==yu%?#dx2XA4iG?0u6|Jn%II0T@;p&55)(DH!0y&VMZ=E)K>p z`7C?C+TP2MJZHc@5*G}bd$8%4)$XyA_C$2uVDl%+Nh&4+%_@D%2TmX13&(sROYyAO z>pbwl6Wq|A0C3N~6x%t9**w1d_>hc0_|N+~%icvF8DbkM!(zIo$z!zigZR|2* zCU3aA+|-V^7G#K}&y(AG?E?%!iiM>CuU4$0V5abP_JEYXp6?=(#;x;qre$Dtt#4x8 z2F`0%V$-QvF=zyFP|yzuWaHZ-z8S!C)uZ=97h2i8W6E1WkxWiLyA#EWos-xPWv+Vw zxv8%&w=$(tUepSYb-Y}#)LSwG{80A^Tc|ktR5pe@m~&oIgBlH9C;~QvQ01;ji9%C5DO_Z{1JL zl+J`sHj-okv+->DtRr*gEj*hYtgWv0F#G)SpI&d@R=_|jL*By}!9s)ScDI4VMxph_ z<8Ugy`IT;lg|KUSanqu;dz(a(1GNiDPm4xm-pvqzvMKVT+SIjl?1)BhhPs_%Dx5{_ z3mOHNqN#PSK;mhE_YBR5i!>6(#9C{gy?l_->vQ&%>0ziz;=7x;q2m_ABhEQ9vqasc z$&s!~#@BHI*!a`Nt9u7I#cmKL$Fv{2ZYrq7;YvmyV^$Hu1ckwc%QD6v*f&#=EkUws z2jv5dk!p^me0@>X6xP><*E#V85oN~W<@EhmWAM`BGX%dwzM6A>HzUVnwkmNP*Y^si z5IZ{g1){M2y1rCC{hj;Bj$fsC{%xyQ9>kyRWeb)ctFA~tIy3~5zPsbH7LxC6kkZ?5KTIjCDAlxMLeIBpMMzf8M?BpD!aus zM{Saci=qv?Jtj#v-^ScaX6+QQA9`|xmt3c;PA>EM-=^whNKD&NnQR5yHL0E%cCA_1b7iCMAUA`1-NJom8CH1&Q!tAXnl} zi`*f#s)cV!lUZ;U*|>uLCEirVvseh-Y@OT}dv0Mr^CXopdHFVpXXf2@!I@qtMCLZT*(XV zv#?5XZwoD%yW(Kk+akiIZ5T%$<1ZQSa~wHVqLd_mmaV_pX;A5^<7U3hkEhz_tilA! z{=E7^oXRJo%gsp<{MHXG@3mRTxm1mEoqG`9HLBM-&^XZK4*zr!xC0Ri{4`B+EzfG! z5l#J8(p@Bq@uP!y8-rnOm_qw^9?8NFn`bk4lAe^0P5EntY(rcf&*kdqC95t3dUA}# zoqOh5rwJUveBEI)kPrUP4O9RFva`Z;9tI2 zh%G_WSo^(^2Iw6&=?hr#=*-UfDo`MlJu1m`q>gE&8J{*Z0B9tqjdgq3UW5H)OX`>2 zK{NNoCg7q~8o@bV$WfvtqfcKqg)LVhZ)XIUXrFs%P0`73+;&`4IbL&qRO^#473q#D z#Ie~BLdguZ8T#c3sz16XoNahcMX_W+%vg9=;yCBMVPVAvzGBPLvL{@u{+kDbQTKw% zid@fypAucTJq#Z9Q3g;@mZg~o@O=6u2Q-ZAqE~x-_aUXqW4t|MbArS%Hqm$SAVYf^ zm7RXQB{jDRN>P;@?isAZy9A^(HLkTug>M>-VpXVFDH$)GKHMF~j4fDBg?BA)riK8P zgVSit^(0kKRWmJovqkEkD<{%U0%laACtHFCHN{m&QU?=q)>7ZH<`1DeUY-dsfjQ{h z;bAveQ=Z0(ORG~wz*kkq(ct(5T5-LR+E41Ixr2|D!gh#RZl2$kUa(p_hRd-s@GdFB zv?Vk$6IZvcnB=Qb2Dx##6q`~vF(=hn`zt2DK~_6mef^F7qRAnD753pkBjYSd^Otze zzZE3})2$QC|7_ji9$VRTYh2dNsJx+MZDsMh+2k!UUrx|yxtGn#VrwAprdH&T`Urd# zWlzY~#5UWoWy_;^&C0?w!U^WfRt~V*PGd|n-<2dS%=awZ%y(f4^&_b0k|;m^To(?y z>xe?5>`)}tJ{~QwJppFs6y^)wu(8rmiTIV?u!Op_@UIq_m9Y+)#iR=W>Q7c$@XYG_ zGs4e@a^vYYFbNke32xHqU>T2ECy>MzOyY~%E6$O1lA#d{(L)A0C5s)cA-ZP?2C>q! zH}TXvb@hW*mCGf~K-;JJL5$c8cu9{oMSUb9C+hW(@y*>pnG3eTtF53JVZ+jcC8a}= zbRNORc%{XzRQ{x*lgh9Gkm#T8lea4~?Y~udO3@;x$3-D#10*~j0Qw^-;MrY+KOA4& z(jG6|ug=U_LdRmO9(TP`xtBVapWv!$ky4RS`$pnv<9wv$BR}h*Lh$Rc)r`h!-!Zr<%W%plw`7* zNlv#jG7>$M6Qrb|2sf-+2@w|F0aar=gHJMr!;yx$#=q+_fjRN zNLA8&(1t>_z3Rt~ULxrN#9=Wo0893)>ovu8cLZT{a>uF>OBZ$G-q~PQF zB$nkL66163Rq_I!~`mxB>14g&~A`!`lj z+H)~qN%>7n_$f~fSMZ1z0eMv)RJ&&X_VUidsg30jL(8X7lTH;inV6HEPpH&y|P)zvGhsTU)4?azg zuk}6jLgAy3mQRljF_(46D%gaaU(J>rEFyLHsKYzu1vo)q3Tn3)g|++8KJ$fR?C#mO zj;ePHf~&eVt|*dy;h%HJ%5qg3&4x%)F~JT6cr5$(jg2ME&x?-~73nni_w=sXb2;i<9Y8`#stO zgiz;b(8M^*FEu`mR-LFw!!#Q)G!HK9c3 zCEEXiLV+;{wn+6CqHCvM`cf;kr%4K{d08w3`29}`@A$5o63zQAYfOzBx1U|v=T`fI zghkOo3(bcmDizuibYFfY+PlR2uB;`C?EMY&d9TK$&fv0xQ4@>YC+y}eI_jZOj{78FBf}i!x=?r`PQ+-uY-7Bj`jGo66HRhJ7ETF zz6@!|_~R);AtfG;O!eqVCtu2+EuD7*c8dSJs;1k}S^A^wmj;GfOz7ACdVdcn)3IPV zvoES<&*9D85J&s*kOKS|Q^bf!F`0a;AGmU>YC@^0Fz8|TK}?MXiyPWvFrv7x_7gZrsv zzMo&_rZRq9W=u8h7$e6y#kz7B`rY0_YbC5l^-erUqA?>!I#r8xoE0I8i|>C=4RNc& zm8QtUdt?skTH8XKuYBIS5dqZr*HKIEbElG|PtxQ*mN}VJ;9@4#kz7^N6hwN3y`TlG zSorQUz1QaSiOeA-!wKCexkOw6aWVKTIu9Rr_jK&+GM0w0dVvEHcW)Gz<*nG#Ecea4 zV#mR$!ACMhtcD-h?4ASN>nIq8wV=tsD#oAM;pNu(Am!pR4Y{rJiVnWw^f&^)<59&FGI?e1qv3EY*YuJ+RZ$nNXerVre z0IB`eodDReX<%MB$>k;NdNY47qiEc%o?#!VBBKoO@KM6$%Sse3p8}*}+ETHmi|W$o zvSgUPop)Y6NT@s$Ow=D)j4EGcm@i2JDfass&Zo-s@uEYtJ}3Dcr+sZC_Lp7Laor&3 zZAI2)=|2e%;WSw%oX`qbI%Vx>NTKuyKhx7k=|gJ9Y}kOB<&4~O)TK9>xUh!wJo8)C za`nxQY{GW57O6qXot7EAROgJRPs(rc)aC1`+bleAQ@uS#VIorMoAk5|7wUxB{r=U@ zW2vszponu2ZCkM%1@C!`I5&kn?3!ZOgzf8ZG98TMrrD>RDLUjE(#dl9h$e+SrNZ zb6hgRS&|&mC2ie%PNHB|Y1#MkHqo0Wb$W8igtIsxvjn^(SoVa;ubZukEu4FS$df~5 z$ZAhrP4Mn1=&5bQ7@;@k5?C2E=Sk5b93j_Lmd-!!OcwSwdG~7kk`HRWe4$P z*BnfS35Fr7AMyzNDoBEEVj~Qpx731N{L0RCK6TQAUoG6m|LJ?^CmJL%^I@IZQHS|R z6eJmn;%?_?Ve9kTeBx<&L+@+UxAEXGUDh_`+-J6ndn$CNyXeS_nAPdT7=PRSk_fn+ ziw*)q0N8%{Nsdddct6E9l)kdgACT@NjytMO;7N(ShP17NDRS}1*DlKJOQ*mPQ^>-} z&NVgFn(Wrf@GkLTcVt#QjL(|EIulFXmHM4nn7OuTbtP;jC9L!2(VBgdsgby`gCwC1f^p2aw@ve99ONi9k(o(QX#CT-%(YiVz!-? zMTuR>V3RMLELC>ae)+hvh*MZ?)08bqBGZ&m>F6m{nNzY0*}`DAuPSol_ov*-CcyC} zJrAiu@-+k7dk&yNSyY1j9s8-Z&bp*B8dce`6-&KZMHxQf_06+X$JC-%UMltM;-U7K z-04`t)1s$)%cdDdi77BfNX@-A*0ARnFRFP~Emd5-hjV`h;4(x?x86X7{^sCMa9{;9 z8=K-1aY=b1zR>W^Pqg}Pi-^8ci&yQrGlE}=%I`f5@wua=pg^aM3tLpTm5=YKEjbTg z4Ox|v9h$lK8s>6vbB}PRy|~R#&BmJT%0%VX_5M=GeO2lxr4J?#`16P5XrSDh(J-!D zy0h!Db4DSRS{1LWlX`@-t|CJfHp%Joplg@rw$MRP>fT<=&)S1LVY9l(8E^5a4-p;I zy2ab-UyJYs+mze60pL-v#vol*Zx_8Gss190?3B%_oS^S{uLFDBDhJbRF2JGehg8>! zZ%wh2_zCY(k{h({&#z&^@X~aMygeq%aY!G?iR|f`kC0%IxnMO)Zm{kKh1iD0DaKkn z;a&=uc2kgDGtaP$LtE=bE-FwEeQK~5=Q>q zNjhaov)*wa^gM8?D^Kv;)Mf4te|rH33r5XKz9ua>(BUJ@N@uT~VS-!Rs-O~WokKD$ z75pG>RUps@Jq}#mN0%a9sW7=|I%21Uu4aLMoMZ*h9nNV%C(}l0lMGoCm|JI+UfTAF zdx;vtK|dOLV_+T1r)1p|$_Hh=LfckkpIAeRZKLxOZN=H`8ThVAhc8>s15Sf9QfJ>_ z#BTryeC9SsJ@wbnF3+))JLyu*Dg@4d5#QP<#i}{ZE|GW|QLS3dX6ybt=C~!~qI+3+ zxs&kgkHKJ%-sE5DQr|3~m^sU!deq8Pbkd}1^F8a)oj~r=_PXSV(#h{^$?qGYr>?X! zrvKFIPzrcs@?LK)pbN9 z1)1v2VQL#REFu_D;907Ds~I zw=PBJZ|vVzzCy%Sxw!tYx@38DoJX$Zt6q9JI~*G-hO$^JhCz-H?~stxxwC`KGOWpRm!90 z<-N4g)R(obsQZk5Yw_K3o*jHMsGa^7Y0D2&x5;qntDU9Ms-G|X>T-V4b{P3Y(?N51 zEC)zt8g59^SQ#fT?rmCb5SokOzSha~L+Q6t&X-!&3ae_wtH_&x)KrU7&+@eu)#A&T z@Clsr{C0aNLnb((p^l~*U>~5_=>WOR_H)VKj}Ge>ayT!&HPW`t^n!LQ{CLXe`vvB6 zR_~sLO+S=Q63bMi-zr>bgspR%|aRvJK9>c zUR^NQCa*x+5+u=bIi^s$Nakc8HIA9Rk;w@Y__%0c0;|=*MB?y@xA=})tBsSIVAyqV zeQerf+x(M#VKwN&sWeU?-_%+y^!4`50K;|B{pK>?TKUz?Yx_|+4^VCMHklsAkO1Jx za|)^A;RYHc9O&W{Lg)$h^pyxc7pLN@54rzDE*e#SZ#jymQP4{pUXEv{UE6+M_ss%c zsyP*RFQIHZ^S>;8JT)`3vRu?Ft!>+luXM0;CN-mtlCxJt@sc}LuBOZ(jF?*B)Kbt& z9qDc_!(L{k@vvtImDZQ*vl2oldrIYnf9%Pk2QV?&NlV;Gpq5@s?J0b*biOwYbmarH zuuiZ}mk;)sh+&KXt;4~vtxRey(%pZ017t6o|BcvN~Oimp4b7cPimO1yIdm(gQ>X1eg zGr*$$l5B{g2ZWyhKc=PWp9@%r1!T)8Dd6NRjQ%p~VsKw1t^BrP9D5ZyrzEG!uEsb_ zNvTtk@oX}zNCxkv+d>_Vw)ZJ%hx{)iv!tELqZFDi$->P1?PBo(CwAWm{0#@Cw^^rN zIq=7tE;f>;A_abB)^A->lIZ^Nw`BTz6@W(RaXGKWS1~J^+vQ|hV*TVQg4YCi=~d-o zyqJ8M3er_&#GW0_4mSR62b8zjB5_+p0G*AJOjWn#NF&u|NJEd)ijr<~xGdHDZymC^ zmsaMG`~Loyvd4Li)~VKVv8Jy!6hn{#>8mmr9R?O=0)}z!fB2TJ0}nXqB)nBH2P8Uz zc297<1@mSK(!;EZNWHYB zNH_|_o^gYwIfP$t*_~Q&*dB5tFTXIlX4i%se?KRGaFV6~NeuCwNAGPY5BPEOzma4Z zHFS(Z@g1Ix2@G9#RPtZc#O3Ww=34Cpv`Me~B;p3+)y(x>wT3$%9d?DD*dfd#G)IxN z`ulMlMal+G1D9K$`G!!F0PmuJoweFeOG1T6M?h1RB={};Q-Dbj2U}ml*da9EX6Hv~@QbWuTs-I-!W@s{XNuHGqS$qNc9CMTP*#{mR z>4QH1OWC&Aiyn3liHuw-7{n>0;kIFUCv`}8GnhwJkNr#gEwOuzfBgD6X{n%_U*a1# zh!zq8U(s@weKvUTu+c>sxjsxeuWVTu2@;k5^iz8A#r0A3_f#Ajju3|;I(KV^{Q+J@ zUr7h^(cQl<@f$a;+dyK<8O`G=%Z;I6-9mMq^zOzYaQzSLoT?RBMd&N3P$M4aMXd3O z(|en?!EsB-vKihw^AU#cTc6qXI&yp&T&GKQtr>^-HuTYJMv7xS@7~U7c3A&B$nH_C zZdV_~7Zb>{y=q?vm(#G+*}LwsY%RNq(7fFd@Y}EMsLI7QpxIsWjTHY>*Xqvsk9$BV zAK3%M{h64f#^t1xZHHwaxv=pxbbH9p8N%s#G@vk4C$=*F;@ly{VWrEBmwor3sJt9( zf^vF-`5`LV-k5W6+^Vp|kgJ2(&;8j`KUWhXD6ei7ei`V*Mc0+s`c18FwxhedUG)h@ zy}dgid)AlwqL093?(I~^mZ1<(Tvtk7-I0ET1|~qdD;gryz9gPxWV^$at`(2<%fFO9 z@F0KJOC!1#dL+72Vw!6--;B~Sx$bU)wGqxHNy>)J0jwT9+Y}$1xtUlb&J>%@udc|% zPRlu&{Mj3SQFV0OOLuHqSIE%jH6Wg)Q#TfqZ6uy4@SEz_twV+v9!DKsr0o6-lKX$c zumT(AWcE2}6*C}I82ViGS)%{R1{S6nG$eZqj?fhj!bHmvzsL|(kriImUcxxV? z6?nMoX2;E=qTI_ZaOGmKF8uOb$tAGwBFIbjJ&5hF7BRJoR=Hsq^>K@oOrTN2MF9uq zc6TlBq6}@f5%z&$t}BGIkMa+Kpm%f4G0^J{w$73HM$ps;T}l1?M&Lmjvd6A*P!M>f zbU6)MnT2PAj=}oyg&B_x^{k~R+$2rB>)XA;G|(T3zqHe|p$OsZEB4Gw9D|{MR@Cn8 z_onbk$mlnM1Dw8`AxFpP&s+K-lh zdn{?`5g(U&Q9>IjSSh(JErzS+43q9ETSYq(g>LwJ#9yxfK&yB0#qk~=9>q*q4hRIF zI9>+l(s7N~kCBy!R1#iF{gNrz-z0~gT7Q-{vOd@^a~Y@e@s@tbF}ZC1#cS*YTSe#AgcR;<}y*^&xq%C z;yhSu#vku9Y+TX~_UtawAG_9$?<}^b(ba;|0^&pXFf&1Lj+!}LOR&Jtwu1g63WQCg z+D0rCF+CSD@#7Lrn71?EGACZ>Y<J1q}GzVG*IKObrZsRJdjAx zcux3d?-V{{*p$M<&B02!iBha(0r%R@3a@-VXd>mC_c*%6<-dmV{uh3*lHD0&Pu zsJ9aAaL97-#FAR}&k7gB-ZkHD=K6OJEP>mzQ9W(M61>o?fZetaSvnulftOo0E~2vS z(k~^YOAEbBqBLQZ-ARq|4bB^ukgq{`g%Ifj+8`wS`tbfvFw~W1G_d_jxP8z0Lr$f4 zjaN=e2S2J@!Vgr!pbUSS;N{v8OI&l5`g{&=9N}T{daGx{=dmHUeySV!by+)+@1o9m z#i7a4O9PT{LQ`>I?sdvQEB5{uj*t*-=f}UULMKwx<_F<|c=z@t|JjUQe2K9B==GaM z=coVV$wFudh`|ug6qBzTO5m#Z=l$DId>-%X0>XyT67jp+0-ccr8d;Z=nGon` z0JfG42%l|_KEZK6Pv0%gSr`knH$sBpJ?mMVBgIi`6-Tzg9D?V4(J8uy_km*#KKl0^ zdKsmz0(QOzAYLP09jq{dBf!E0SLbYPVkP9+14{qnZuigUu90hrm9m~%lKxGrCqM6H;~9nX%wyMu zdql^x+v}E0`DTJ#oei5zPAz+Di?*fjWhTaN5MV1M--H}nwp*j-`U5xq=r?MPxLh>| z@t5OS-7k2blwut=E!f$f>tbc%>v|cTSQ$OE6VGV+{s6nMF2Cq#e%lEcx+plZ6K~gN z3}w2GSdlNV(~yt#i0csBw+L_KNenRMhooj8u?IvgW=TJOwRayF)1uloUe8^?R3HOL z>l{hWZTD{HNN2js>T^W?vjm5FzU;aX3OB1Qt+}NPv8a(Y&JEL+9|G!26l8Rbl%IU3 zJ$7H%M|UO`7q~~Ppc;^G&eFT)Faw{U=XSl@T~Y6+{U^naf-qwq_;B+baw7>skrjWd z$b|kKVY8!3dBHKC<(jsVBM#wCltr)IY`vf+@gN?sK z4XlX#w_%3-HO#8vB@MzaTuYY|rE@Cv;+mr$jef5m^&$garM-0FxBa@y_Z7n86d&J{ znBU#@-12gz>poz^W~KfZ9=BUB!@=@HQnyy~gyZ3yIaO&=?Kn1+nVndd1v#Q~QSFs8 z&ABY%Bxd{dfRBc|dE28JEkjSHoFgM^|C0UZkQe!UgXT#wh&mTm4c6_jJ8x3idCB&6 z-Ze|uk^Wfx(R^H>iz!eeS4O~#)*L(`O_J8SMX@j7=UT3uM&R1Lw-K`+Ezja$|8$Vp z&pmS}G;-!?`Q#L(-5*9)>Vpc9gTc0etIN?gz-T(Rk6O3Ow?PE)CtkN=i|*rOwqVOW zazM}3kjS->2sp-6jUZixJf)(n$~5(uC*6xg$P-Lk+a}O)@)CXN><07)4IrCk3$z@$ zU=u1mp~695(0$-LDCHVcM}S*~Bz*N@jw*BxHhYhGlrnJACecnrA51-lEsU>m#>#bqg$10m+23GLc%Lid+h(rKR6j%yfT%z64#HKE&L zR)%)vmt?}6t5|87`$37>F-w9Nrm1;FhPodS#Ish;ISfIf$9uI(u=+kFD_muXXSX}N zMPrGmR8Xn3;~+RU#sfV*&?6o>Ic>!3HucV2XyVH=NX^R^EC(XRrdZ?6m`b1*vY#Wm zdm0(w0rm0;A@|+aL@~RZx|4IY&m2JXSe2ytoYon)AL|wpdeRNZ!asgJYV0q9ch7bE zf%~B;+P(lVf^GC=sO`ry(HeN80&tSG3t`}rg5b*E)relJ$gRkuNOImhYc!G^*EbWf zX*L~=%?8BH@eQ)qQypm;s5^I6^~cC+V;?(7o9$B5oC`A&l)fGP_8v&9eoPl-Mo|Ud zmnCi$On~o4S0jd78VBs>kc@Xcux&G+=fEwSFGlAkc=sY7cU&LbY{e zw*vgD&+RN>0v+<*cMc#4ncJJPxYf*V=Y&AvsjtTuFTHK<`O}{2CKz5GR*`TTL#p$- z@!>>J_=A+6hp0?2@?Ddent@WW`jv5|qgvs&Ci>$Ki?JL;-_2dW{%i|%Jb%1K-v)B< zb%PLOE0PP^0RwzeVzd0m4K#Xvl7H^QY=eq5Xg`UKM8&u5k%1ciy3GA;OUpCQT*%!R zG1*lr^J?c02+PlPs1mKP8n}M7v=l7hmmPF($uA@#zfc^qF;2|mGlQ6Fg~q{ul7Lav|@at$5XIL2KgX zlFUFtaL?AV)*6**nL3Gyqjo+IXFePC1d;3LKw?DJd6wZWddUYNDO^u#PA)YK^%Ru0 z4gibwrTih^?S(zqxD3NXc2Hc;DQvI8K2nRJ{SpNb49Me5C<3i@HrbTV7baS~Y6SO` zclFZ`j6YFfi=ir>N>r0A<%My)RDZGFMsvsK9sgxQHT)x+U!o7Pn02Ha-B*4PJv=`8 zs$}t4yF5RV9v2}rnH@t~d?Z(}FYb3G+7!BfTR{~+U`bF;?4;p)TZJ_YrnoG8j_pqP zVe#lq(Nq_=aDB&N@1*vlk8TRHMsmoE^nE{eI|CFa(p~zETlJeA&{0(?!?=op*TE|j z?XxbCoAi2L-LctPuNQMb4GZkBdHkaO|bv2nj(9pMhqyDVzaafO?Y%~=<2tb?-6YCO@V z86|tB;Z4ZLkWFzP^5`&0%*zPZ%U@qHfrK=nwT(vt!~=F;_r2P}K^q2ZeRH1Y zk#8=-&94xRWV79p%`dP7gxx`GhndR>Mw|0`1JkCi1=jZ^l+I10+P=Gs@car?J|FmH zHmgBX(;T8s4hyb=dcP(mndW;~s*@m$FtXd>&}+(z@4s1VFqr^-{JOH#XEef(`fSsA z;3K(S(X%dP1V*-aRmL(?(x+}~l^J#d_;^Rm|L7ZCB9bZXvNYTgK zK|B8APva+JOMJGg^`+KJXA&7w{I~CpcRfgp%V&y$k%fmEX}!T2KwuDC4eZTbGCYn4*hzF$_Pqb1ztnY< z*Me0*ldI>m{=KTbLfjlRHG>5ITyiQk*j94xiOg1C(N=Y`KpJD#&5ztx&SiTe_UxkV zCi>(lzfkTpyroagubQkmRxYlrJ&GmfP~Oj;dPfKv4p4@BWyO3S3e9r4w{&i^8pCPG zzMJ52I_bwVc0zri+Z#Y8g4I0!4k_`A(y03l*ms1tE{S_KJeJP0<7v?4qwIqTbxPKV zk)&L*jFd)S^+QlP_Xn;in3dcCQ}(TFaaEMPPPt%q)~E-DyOT=m0*eqqjb3GkHXwR{ z{5UlB6(SUx!)SQ`QU)(cv2wLp8|mx~72>9$M1+iScy{f~X<{(#I8Q;muBS_NG28?? zj`ws%pk(Y4_jmY-({wEOch!1xpv{pT&h(YT~N2)mu_ z@0))a!8j*yc&6F8Bx7t-aiX-qi&8q@l_k=r07Z-~5tV?vze?;JeQ)VDdZ!66^IBj5 zeyEY)`ds+KH2qrnv8tZ3+EctF1AWoDA1#J@qVJxj@=g+eF7>#6utq)6x%GUxQP@Xa zp=8li-7Pm#vmwVD5JEra`OLrhoy6c{FWw-%UHsr(YQGXddc0T?4d0p@4K8IO;pRR1 zA$1B-f#23WhJ5taHuij@s59a=;?2NpLzoqtNc}7%cX*d*2sBRjZL!NKf$J2%^p3MZ z`0_-j!~N?Q_kVDvGd-HwWDz8Z%V>L{M}-yW51oR#a?6P9?mXmR!H7R zo&>IWy1I079g4^0YsM<9KXH_fbO=z_ar$ikGPIpg2q(jEdoUDS*bo9gxENUm`x%or z$xcGBd$}=tr}Bo$CT{~rTVG0^PWU|;RF`F7;O$HMbd0TO=Y`40kU1l_wbmYmfzRpv zyWdQl82gztkV8S~QAxtcaPs(~sTA4%BR<*;VMEly%5B@A4|Yal2mmwHu>k45dlc&s z@=Zw~M>Wy0Z}0TXr!R}6DBZYq0UIZ2r8~mQ zQp3-CQad;ReG+|P?s~JtUN;F5F68ZRs^U~wY5E@0o6IhknM=*`-%h`ufIDHSc@I~= zIMd!0mLHVOj2Rp#<><;VM-?K$Q9?m1sv&+MYXm)s@|2-nE*9xu_!t^2dlT8ltA$M9 ztmiUDxywCv;y8CdG4~#9J!cN zm_wOgIyVgmTbKa}7s-uf-FiMYxgJ^>mRw58E`9!+0WrbFdLO5wHi(7THmqXr-*?WZ zqD$}3WuxkO?6|r3Zkq61fImAZFpt%{6i&?0=)KZ4O`N;P7ZckoxXRPtV(14BpWltMo{XQk#i(<#(SpART&Cy zt40xr(>h!J(28>sy`;*9?os3twlRnRsk`ypw!M{XysG)E?OJgE5yvksEC$~aM&Vbl z59haGa$}gcU1PN#(IC89kqe<~`1bJ?5P3QN?XFz}v4=up-ti&)HAtPO5@lh8{_!bO za}byCQvfb9lHBE3_pqbKqVX)*$Ar)MPB?6zu*)!Ex=4i@1&?;j>aZr1*v2YsU~AwF zS4cN9_S;aj0sD$U6R}YzhOOkrKuTJl+*GO^=|I_4M6Y{y#|Ac^{7qHu{Xfo+;*tpR zVh;fcKD6B4n3v{Os_ptOIf1 zQ!t6ulqUk?j8cKswk9J()5(%&$6@iB?qh%u1oQCi{f-qDyw$`{Ep)Jza#t(Y0=Pwe z`NsEbZM&Ad)>+R%^Y!HiUN@X)FD4@juMO>vX9GsD-w^=Fv>;nu~vS=(1YS^ zV_r?vIBon%s&CUh7ELGRZjpAe@sKSkH&Ov-rL#njhtNcWfcop+V~8o72FD1GNz|ni zE&BL?RjbpC+Z-kG@Zk1!+#FuZH85*S~r&#bWh z^8;U}s~FFxGT~dCnUPIK2Es>He5gYg_f>dBh_H;#d7M5Uu=-vjWRFLRLSyaP-0&Uz z>wWcOs>FhznLyY1kNGS50td6i&49NhKTj_xP8g<}k4ugConO76E)STBl9*>79ry~a z)hO}sGjd>qNZu}AjJ5ve>ERqB0@Zx4(B6L{&P;VRIG)2--u?l-;EJ6gGbAc}Uum;%as`2r=w`Sr6X$5&xF_ zuFu*rg^x?s(N(c&v~K0Bc!###3wEeUG&oaB5zN0H*}^@xdqw6X;k%%q$8aq49XePhV$AnxJ&Xcm8VAo-nCucDq`> zCnM2FdbhzL(|?D?KhVWpp?U*Y(GZ(M#FA;Pei5kxSgy|Sk$m5*M&WS4e}IO%r=5ST zaiM2NAu6U~O)Cajm-XB4^8x7mXvS1n1g?g87ClmDI!U}3IvKpI;IXS6GW9Tw6L8#~ zo~_D<@FtiH)lRI`>C}U;KSJ+l#`L4UVLWc`Y8Ou#??|pVwJnUShHd(s9fS9{ej zzTNI!ZM^Z{fqO(QhqDNa?1tqv4(3MIjY($=^bCpwJf3fTmbAhx%0lX)T|w`Uka>WX zVj2NHOJhh~tla-IF|FlZty|yzdUJ>Z==ISz(Y@xvM`h-k3rypI8HJ2-;Y{FSOr3v; zoeK{O)eplP{019kRmUyS>D2!PsJg909P~%M!hPEIcC25WaQ1X=kjGEww9-bmkN$`? z8oT$_ZBX7YhP5PP>dg*iK+dMz=y#7$UY7m$@pgXCL>TgjEW>g7Dpg%XwC{c8rox?Z zXtZvwlZ!&62x<6(5tg6-h_CGa8TgA#-`7b3PKEoPYWk~LULN%Q3+7AY{)_SH$|cCU zd7=VDY`NY@3z6_lzW%EcgyV|3;G}nOlk=Yz@lED`R8U_0Cp7q z(ZMNVgnnXCPJGwTdNE@CSB&VN_OLWcFO%0I5BCF84>|IF5wKE)-H%lJ?^}qn6xrjj z{}VX=ixd8B zEd>AbMwweA-v9c5>S#sr{kxyK$^Ucs|GDPTe{l)iR=zrseH?g-esj2IC1Mr8i4VCnfw@5F~*5CIp697Ill8eQtP)$Hq1v~Jvv*txsjVP@*?7&Lo!{Qd@u=&o>pVp|GpC%i?M@?7i<%%!ID7muYwNJN^{BwS3 z1g>`_c5=0I8dHjSl8^X6SSr-xj~gF~>XR-&jhl8k z%p1B(R^|Q|@~yTA(|63@*~ekVt-$Jhx+SBrADgwCnAu?58um0ovr4uOTt5RAgk7xK zHCW9V$gsnMm(r*-C-jRt~U|RSQgYVyCECji+lKpi|1hCU%2sNyAEcnqEe^p;KMcjU*n}4`8#U> z(X0L&k3;H0_A&+NHZCEIC2=xLtmK{US1M9Kx5{hNi(?-R70Q_Ig4#QQ#NUdTn%|jY zzvNVGV{{4~$4!^Z$6DzGN-OMEBdeQSt)eiEpgUxr6Z%wGxEN?+L87DITckyh()-=a zfab$+n@(orbAuqIpoljoeUB--ta;4UmyHv;szU^PVS+PCL#ITqzC#_d0tRL~k>qv_ zfjyyT4wU|AQUfNfT#j}Ro`SE{d`i4^u$^YRqkL#Ud!aD(^p1w|zLPL?t9Q$%FyCb9 z5<1X>8SFRVa}i@7*KLgc@k`+dsa4mxML>9Vl8eO#TTP3sgNm^yo2Uoh2~`y|dcE;v zo{(93Bf$Ch?SPC^i;cF)Vyr~%`Qx_Mm*!ZDzjh;$Ay9;ySy0OUviA{cu7>*0rI0cC zO$3El|0npwTFT7S%}&Gl#<~ojJotJO{vkb-=bqT?87LH!qABWT0RuDcmWgagIk0%6 z_3Ss3ED5iNuwHRuY}s2)`D&s0vo+FX;abvN*+;o>FBDIk+rg5*0E=44b?B(~{h(L+ z3_>KeGVt0AG-CxC-xnlECe(3D7hU&F*~}qeZf(HN@_Q#I@CBN8phBt0JO}@wc-GqmsZR5rXsl&pi0V>(+Y; zJbik-Znw*h$E(aBOp|{?kJz`Nt~c$ zkL5>7KWwib_n=LUCA{*e{YTZ>7$xkp>@-dQrb4g z#EuLyP#ea)go<{%9Y49vm~LQ>5+~>pcKnM>+~9h{eQup;RWU2k-Y!#_&hLzD&u<{Zsj)7LS`LiPxBj|bNW~AKWJJzRH?s<+QtVe?gvr} zR|rP4pKF{d`@p9O_PLWx{e-{&h0aa5*Iub(VKtEglZxVm}%{R3i^8xVOJ{ z?{%;B8h$Beo=jG0F9 zR-x1gxd~C~yPz<(ZeRbjRQtE6f{GMf+YAov3-q`y4d&L4`A)w8U1MQL%Uubs3M=>o zy+?$+{=~j_Z>e&y?p@ZshtI5vSkKW8GxkL9?^#S#3koId( zqI07UN9)E+_U`$NkMpdZxE53WGjBZhh;*1y4;sq8BK8E1P#-ZqB zrH2gjAr~K(n}CutaNq;W`T-xwvNDw-K{adwDMYDniVZV>fsN(N4f^`D1&Is?OlG+T zSiDu-UQD^6eZAK3<5~)-xL!S6H2-n4)oA=XD!WL4r^>fSdiDZEo+!Mefogg=dOhB< zN>b77=AL}SQO9VvPJbB($B+}x>7@>1+LdEGEZp7mM~3;i^p!%FQPq@M^Gk6+^QFW! z+0$u{y%8u8Dh!`*{9e567ee!}HskdoP^B8-f2~sORl;GpY=1K!Sh#4@8uEsAmn`7YwTi$XS*~SIMj26 z+NJoiQK*yVvinIqofq2f(Hi!vAT#`kmYr0`AGU3aC`g`=q~MHtBG+=~vAfT@n)`)c zYTgCiZr#$&9=$x!A0J6L%~WpY;mI@OTaK;myX$w-4_=hYYpU%IJ*>4@m;ZCWs%m|~ z6`MRxX~#QqD`CL@aq~1c6uv*BDPFg(OCV$)Rk|u4NCUpEM6c8!^=>I=wp(BlOmpUj zKbQ-IfQ%&aZs)wt^c#`KpKYNufBu7DPOuDpyZ9H35qVai{@cqqKUyUECwy=`I5;>1 zc#`Wt@(fW2h!-VJyJOtjNovOR^Y)Pal0!9t*DT=QN7br{NBcGdTR0ifUp0Bp=BLazTcqV8$WmcON-S@OPJc56PW8^M(Z-bVyX ziXdcDFR`ZpTqcFW|j*sFB%(Iud6CE@6sc=_>PB%L@f*T`t^09Z@S7sGTQ2jKVOYc7{+ z=e9=M{{;teXX^_s-}54k{|8E)sEz#p38All2w8Ur^8bs}+;4t_0GkzebEoUS-@U@y zesgJb*kC-&)QPLG@;co2z2~^fy!(-{pzip}UVwgL_qwS-BL6S4i>ac-v5Ek@PEK4i z=u7)0*rc1&)f%iXzJTm$6Mzj40I*lBC_+9>I(d*3pX*UKpcFj=fQhTRpKA)@jvt5V zYSy}*54-I9@yz$s!Uyg7;gVW?p5qVqT?IU^{`%H9nKx$r!{1uk#eC!m%=LT5dqoS| zLdkiE48tY(aSbE9_9Exb=+=0Y$%}BCQu1WDsd}ssJn^ zfI7{22CCS)2@dOVpDqD0~Egf9RSz@E%5XkH!b?WWtN!@N=RD*B3R&386fd+ zx1a%9vZL}^d^vm|S1(j#>zo6;4feHyaLyfcat{xqT&rtYPGb}OVicgbLYhHX9DRRa z+jpS0TnINQMeI}9!30Vde0g-bI+#ZEd%nzlMb97uYbD7uK+nx{J6+NJa1w+n*j;Bf zat6rEELVL_T6Qf*MG85mN^*V6r(F{QOTBZ`t-oEG7p>9eCcn#N2kF&*37H8U9AWB; z`bRT5J*pp{@tvxCo##Hcga83Bs5ca~prPRdpWBJJynNJ6XU+D*uFy-FkDawOy&~^E zxy=9$Hnyb(czAfY!Fa)26Of4<)ZUGun~{b)R@Te>h{eSVdS zK6Ko!`WeZ^si>$J9?F3;ws7MwBeS4Q?;wXYpxORU11W_rGBu8s!{<}F7T{TrvDy2- zvN1v`T3RJfHYk~+#ZSpjDznuFAg7?EaAr82+nvfTeN$h~s;QoEF3VkfqT7G7pD;8D zxo|%-=_#5Opey8hXy*3%-S^=X$UDh5XvK*Zutz37`%=oMt(A{n0mQy<3R_zpOH29; z%w%sr_MR-au~>qs3kwVP)Rv;gS6mlu(%8&nu=jL2JVBa2u)J=LCR~RBR$|R4Spa?d zPAoXX9RQMnL{H*K#2S92bZzrpgVoM6S05!2#Sv&ej-W)w#LT3Ky`K<;Qo>+Q5N$Yb z1tz|3fD)8(P1iGTb?X5w|K%SxTpmaAnJT>!*l{FQrLSKpH#Rpx`xuqOgM-}w2h@H& z1jjN&ourH5ROT-O6B8=esyEvTAfUyjLBoUr|??*R~2y)XIS2<61&Q~S_?w`eqG2iudT{A@J?PPP8Oog z0wo)eVKZo6gb*$g$OuTLf2fv{pOL}pA&{rT>UP$T@ya2tNgtD!g^&l3=oli{5ABlw zG-IDmlzKDV3|@=Fmlw4ZA7Uklm%gtA8?wT8MBN6v__C#QI`1i0rDw9|CcepK$GPHQ zQjtqAo@}&PyJMI{9_YbQtCkr0HqqSrh`V>F_B$V$;0qCT{;i+`7+#6|2 zbQwQ+)x8wsRG6&bt0K}7`W`BhE}9;4D;xSCV08DD@~KjVO4+3*ow@RsSC&5G~2Cr=S|E^W68|eM3JKQ@^vXdX=Iiq0o02l^;Re^2UHrZ6?P?TaL~<_nv_=vq#^cuti_Isk0}+S2p~h4yE1W`I;VPWb1pioxh>U~v%`#b{x+-csGl&@B^25#A_ z_<}vJnM8wN($P0^dC534;D2J|Q~s1( zLML-cZArARB$Go=rSvWFIW`P1N}x*P&r^UXvq~GQS>DV1REH9sj7{S|A9csii!)Au z;iHHnzm)!@4VCv5gFo3g@k(IkW9OJt=UAwwBr=W8%}zon>^lI77pYVAi>K(DNaU#WiuRQ zyG;MRIzX-km$X1q=5W5`G;Z-UpzqL!HCp~z7(5~UNyc*bo>YW%e`Ew-Jz*z(#yA0V zlOWQ$xiVv__U{ETF zB`LN%#S16E0LyZzL%ZC|X9d_qq)8^7TtS}Fgc=+j%^pLzJJVr{=m>bPXp-4GUMzqr?hVOM-10+{Up~%!jYLmR4 zYXEfFcjA3xCnO@?CDDbP^o3XTEbZTj_p~S1p=4Dngaa7}Yt;;B9%V-nJjh@8PTPZ; zRy+}3Zv9?Dfpy$us#rlcw71Ssl0>K9%s?kGFosI_w)H@&dnIf&NGYXRunP}g|EzazlX)uhOx$?vY7M+k;`9z zA_=5Wx&f%ReeafscI|a8B=cFOWIfjxQid&E$7xreaBC)*ZX`%$nmzv*4NOuVeN)rI z=i$T}<2eG?TK}5`F({bI2|tEaY<67NFx%OWCFvK4f@)Fu zqk+r^U#)s6XxmNUHyObbd~#HV%nQKsy`t%fzaQmDHeKfXGD@GXEF-)JR#TdW68frI zQ3~WzhCSp3(6&}m%NXjsFOQd?+dlyFMoIjiyoogb%q7i#a^i%|;`ZeU!4GoP755~K z{Y=O576AdF`M~e%W&q2}Z%FFuuU&|@<^}huUFW@|A8eNEg2n5O;#w=mw6)zXZhUAL zS;~t54TM#ecLk(9ntt2lZ#DM)P^jNr-#$xnHq&$?4sIEIc`XMIXPy$d8Q zab$XCKM}qg=bbnqXth9z@2QB2zNIo8^S^kL2!< zuqndZu-fWUp~Va=I^_G2M?kuBn=t@zk)R)x{<{au929ir_vK}?!#wVL$E#}#Wo+kH zM{VcCcXT~{ic2BXL z_JagC*YkM#APEw??H%{MNYwvxn zk6n%Ua|zByv6T5{>`VHd^>B(HL9C)PockkRu%G5L!aZ#FUxJ$c5QsV(4HzF3351pe z{?Sq3{hzpXIl(5no-BpGW;g^~gS(?3`oINj@qssG5+4W%4%tdS(0W)d0qbPc>f;U< zT
BX-}wgz>k=9o1Q6J8$r~&=Z~gfiP10pZb`I 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
dc$cJhHB;X}g;9|uCff6t!p#iiF|7a;!l{ zqe+?8+kF*PRdP+jp@Og)u<^=weFq>7zrq}o#8X7vtBgmgWrH!BbeqmW!ZsY9i zJVXON{>io~@0loL+9`zFU5FgOTn!qcsl3&jlD3oYytsc7Kn_ZK%S;&h5Al8WBRK2| zw3txPaoQQmnF+&>IMo|o4Sl078eIm<39U_*ft#td16E&r2TXTp|0X1H5%S+#)+#^a zO*Lm_Wih4ZUfvuQhDF1r^DT#VAX~#)-*+vY*K8UrB0=W0?uCPJ&ctjiSth^zEhA+| z!S+u9M@ZK?5ht{tBB+mPNBxh0#(d^K*#pCck-zUFF9EAc8WEaYrGD(-c=ztC{Y?%b z7GKfEzyd8G$_JeGc>XNS{i};z-;XIRaslbK!B)poj7e%N9r6xHldo`QElXq2g6U>| z{E%?tNQ>s8m2lh3K@vk?*){Nm@+H~^W0GW$-N|5Owbd1S7~{?R4lNP(MFg3bE7`w# z{*1blRJ3jA-lpM2BaEUyemZend`kQ8QU?%V?X9~mzPhY-`+*ClqUjri@=ITpxu0Sq zwBNx>RS%xljRQk8a(#s%cwozv{OD<1HqYqPoc4b-<5}gnw(Y8Cd#>x(3n18+E#Qb& z99s(q>WPUCWv#i|`f3QYdwmo&J$Sh522l9>p0oUYFYnbB2hW>Mj+Bhs!jG8uWQen1 z&V+;^q>NYldRMp_tegKJ6t)Zmy~ik*Hrrey^S*DgS}2#w$@vp2{O?k&r_IL??2It)j#Mb09DC!9Kn(|zT8Ev}ZPCH!d#s^fwj4pp8{-yt zfLk{Nkk#qFO=&2e7`T9#gp9r#1_`}eAt+m}&iW~Qf9}rri3ytF^ZDU;uGjy#JTOw+ z$meGfuD*F81GD>wnqg;8wAt*--(&}8#`F!Lc0O*Ij^PV~O~8Y;hd);8ou-cV1s*@3zO?)3Q9s1yd&Iy#u;@WPXhjZ_=bgC*=9sAmqZquaz|> zfB@+-{u=G}mF`p%bAT^sh){qfgS6RaL;!ERt>^sbX_q%)xUPhGg(8#x$Vtjd zPMMMa@QC-W&zkD}-K=u>m>~DOTWQ2PT-Hpa>KzNJVd#|9_ zcn-W0--oYA+jtJXDrui{nQ~<8AkHg4WrR;533T{#Sy4N)Xt1I5ALNS4c;-`N`KOxi zDQUW#lKzlI8{1v^p@pe7v>JT!qIbfXPksb+7!;`=N0&U~meW+9sk(pWLmPuT-J?=)nfH zD{S{yI@~&~k{?5uWar&t+reE;sM9)Hc?(7uDTkU8ch{QpC;VP^R%u7?^OMt`jhRwK z!+gys!MD~iCf!z~^3N4Mhc4W!tJs~#TfH*GP1sBjjKNRb z$AyB94cut+RvCx!IcP-mZ;~FO)MOst)ez6ix+@R+bZ8?bFYd-g(o145&N#j-GyEcf z6E*8`X~9R?*Rki}g>w*|+EJdc*F*Fc6T1J-J9?@WD|FcV=}ruZe5;Q1u*ikTSfrUg0yg-bzU+yLtiAS4mbqqucM{s*G9X1Pyu}Q*g``w|4mJk?R(p z`wdadUzA*>QOao;6Nv6^Ll%-ayy3@x=pOcX4P9=xUIC6)BGaOOhgSFL9_qTgMpw#~ zn1v$^EViO}?gI9SRp~w8 zjq6O+M`BL9rMER;q~3Ad>v>fl*qGKLm&~phhQZXZn^63B?x00d|V{W z0lZco-t4P<{%qd&RRr__O>r@F`QFo-mY%*VRjsXW4IQDNTv3vcmA<^J|LJ1N!tX); z!-JmRWX0{K*MVwizpn#cEgHpLn27S5j&eH>GvcxSy?&H`Dr*M$Z1s}b&BUN2uV3mS z52MGG)6MlkVA@!%bqX%VFqfOsas9@AHv2>FTzU0*C{AUi%F(niu8i~!`NjpgvylkV zUb4t8B7@LXo;3jTvzG!FLx?uXyTe$|L_YoY^jFJ}#Rv@#q=u)abV7b6SlyLC&zPiF zh46t_!#cuPcU9>buitXyQ*FagQlmY=Viws`W0MRTxcTrUHOk^uOx8jzH5Q6@XWfs^ z(wCOpaxq4hV}M3lJP6UwgT04uO^=`S*Y*H82|F&}Z=yhRM38vVl%?V@U(GiYQfzq_ zh;nJ{EC0~c>W0W8*(H0qKaZfv!Cxxl1o)dB8>nbJLh#o+*iu}V_$uz&%XoNrR;=U@ zyS_1F1Z#o%dU!CW?(T7}UB6QSevJBDT~-^E^k&_JM!xG7y-~Gr2X}AeCF$3BUvf@1 zeRXZ;^rutSej=lEkJ&B_+{jQqo>3>a%D!fvmOr_iUmionR53-6Yo#RNzV@DQA#fR3 zWHYUrJI(EBS8+M3g%8!~f9Q%X-#&RS?aZFNGX;>+vbU{q-!gIMg#_i%nRrCy@oM0kEqa8NEJAY6lutYvIN zl$|T?N?|A8-44x^kJB@bTA?yJ+aq=!76`#931#b-;|Q{LprxZ?KHuzw4VJ_dWZ{6O z{oF0s_Dw4toTzBmDX4}n`fe69FTFNmLp4RmCgk@pkgQ2Dv5PLp&$1)MSEtn*5UGM> zj~Y_R=`_$9SpAB+YKUDohq2pqjWsKT2OK%{!>(ccH@K)9Y>IrRi3hjh{eyeyZn zczyO}5+O|svPUhq*L8t@+w`poID}>Sgx`XZ#*?xk+r>z73RK23hCM9|Lp0wtY-2x` z{#q@vS~IJXHmAdp=94a}pzs+6o`n7p{7up4ax2om&81sl`gPZW6%0J*t6PhnI3{BrK0+)*i#Jx(Zw@ zY$h}UH?~?Q*QKJWw+Fltd;xRPw~pfr~wLhWt3Lv~!W(v4GI~L<7x|R)O*U+Z&F*?t4_|>@7q+mNF@lm9X84^E_;Z2 z>AMNK&Raoe^ThDiQ&bay8k-*8lMlgZ0~@kw*X9%rFEe^_I%Kk~C9%Wd$J&;o8nb=U zJ-BfnxJ}9VW~PBZ1F0Ih4K($T=&gmLUZ#j*4SRe;MuwHWlb@IMw|=;wABl~P%C^Rw`f<7=@nC^NA%P=$y24@Um6{Mrp14Tj`IMysN34zB9@FF1$A)fxnezLjRpck zRLxg%=yCn-*E0omJF^(Av_kJE4%Q6ilnB!iF8r}mzdu@&%EgdbLhc%K5`bSo2J=YzjZ_@bOmiq_moE=fE~)OyshMFI9GbK z-`doUwDnb{-*vsc)Furo5sF~=()J@_KR)nfH?6`$%KSRm*c#XdKRwv7@FEMqPV|i@ zA9`&dh}IhG3JZjQ4V;}XgWs=+6dO;Zf%ZWp^bYujecF;5n0Ys-rvha4FypNc%GoMm zH@>h@ri_QQz0*pd3TwRJ$KtCki8?O$p_lY&dJckr_`-v1bl+hFrLR-?l~MGiRK2x; z(8`JEh2o25f3e2glE-qIZyNtrOYC;wB7O>n&nI#(XCiCNymGN0>el!PJCnkLs(Bia z{eDD?yL7ae(_`+Ke{dtuX3eY6m~C!`;_j1lH}`K`EX(UY@A zh*{a9tah|x-CRq9jJX-RaACtkWKD%*8_>XR3*jHKc_zg@GG86pTk!E22f<23cL%po zh$6cr?MaQkfv^WtMU``o;RZVS{DR!GH4bK!ty6iK=t6p53wehGlF^DQZ$J#W94Ye` ziGcgM2DBA>0k_;b+UFkrlaafw9TWYH+;5rJT?rHSjEI8|H!99-Uls#YN!r+(eTi>g zb&u=_+7c>t=v_Q<{U}e#TeoqU8Q(rZDuFo2EvD$VH`eDiPl}@%-xPViTVsjzN}4@W z4U5e+=I;Z1#;$%i+|c8(G|Qf1nYVy!86B0RHy#)lp#1gDF2w2v9`c&X8};0e5)!j_TMGI|LOz}qlWjQ~5>T;P)2K~K|;j7?WjLu)xRGeF}ToMqc9 zxeFf|^otwn@f>-#8NbtD-Q68QxZ!YrHpmW^7&#vML*WoFl~C83Vt_U3wYqstyK-44 zsXw43ND4Y>sdMa%t-^#<*wVmzeIf9Em!*)~9WmVlAp|ZBLOa*ZrQ7jIW5kIOm#bZZ zvXwE$CA|BHs_mc@G(PgR^1O{ZNPg+3FNK4Ss2xp+YSou$=)1YQT@7oJHI(?S_+O*4 zOC7zED>wKLb$07%;(bJRKj!xlfuu*`BR@>58a6$$DL4o1%g0>e27YvHLM;U7vn!}u z=5iZL3-nvgZ|Y<%%E}Mk#on5w2$pVeNi(dk9kB7QEFfdsK5!!N#L;#;S-Ll<>;?bc zT%ek+a{j&_QOmyPF|BY~AK9ONFe4~q?)kt;+WsZT%AJS%N!P7F<(_p5+S9x98(_wW zU4YG3FN(c>&8=|@_koZZw864~y+G)#PmaPdfVta@2{=GtaQ0A2L?r*DE5Q!*czixE zZgaY}FFtbiB!kwq)tdnEAF`C+ci_Orj@Bs&Z>l)Q!;CI^p7m7juL+!E?=-U>P~AN) z4ha6NXn_>}oVGwwhEm#7N81gMZY1n|#HsjVMqVc{G6cAs&ng1vF8nx-b?H*AkVbJ& zWwlL|!)!f!kQr8+4+5-Lsaok38cW9Udpl3=5^8=?t$1<0Hj@&u+$WR@Q%Cw{DlXj54QkkR{H$a~-yzY=n;Q8HQQ z9pBE&h|k((ZVnhRrC2-D}~ujYnl`)Q9f)4q*D)R$R}3eCotCM*u_h z(rKH$NDB@(bSba4|7~!0#f6jQ2&Q(Fc>ZC4F3r6DE9La=LT!|%K~HGg;yGn%8dEDx zbSJWEaOd!>UGlPHO~okwQbJjAYlAfbt?;tt=M-S%AB^U)tZmQxAIjUfp?RisiPeLJ zyHLd66gAew8IsmCGAX0n8mz=kau;>AGcTiHa7fgd-!|PO##tuG+2tM|~iAV~6 zJ>X>jDZ9M*ur$s*Y)X5D^Jr9-vuy$!c@ggCe}{x05htIXw{>P2yiAZW5J^ioZ&yDZo3G&Ejf zNE7<3M?7t2H|li3pHEA-HpV2TS}$F6X$Y>S1((bNSWC@7nahd`N==k3+y6DEFL|%|&3vMMNj&`Zdk0-ytp$E%xKGth1uSIAJ`)`Jsm+@Z(1BbDS)lPhpY3~bqaNuURB6K3J4iq~c5UGKDN z+-zZ_KnOr}W8xy}bmO9j)434zjmUB&+$??)8t(NL2epd#O2NN~vxx#(l3;$aBJlZ? z9IRGzi6zkg1`U(%RLsFOcOo=WznG^TFlwlU#m2HVeEM0MtX#lkKO9)i@Hkhd&vHt$HQo&C7(w4>jiI`_K z=tii*oYxwKS|g2|hKv7Y8D6Yp#K$3;!J><%V`>zaXmWOno1gB6!0#)$ z7TM#E_D;6bbv9XgS+q7~NwRpzf18B|?O0pAF;&ql5ylO1vSIomAuvh}dy{gh+Lp=b z5ncT{p6Rn0NDUY&s{Jijeh)7rqqCCQtGuj4GO(;#ilpGj;}ROr5$qw?_kL*bStVRSLV$4hkiSo2 zK6~Rv8P?Mhm6K(jmpse#_(nzlfmgjXBT9=|)By>X1w9pW<>WjoRx!41Nomouma^;N zy-HxaFI4iQ7$P;#$;kxsFP^uzUHTG~BbeqCKncP{-!Z?gktE;HRVtaSh{}PM{bXN+ zO=R&qqDyhdiC+mSoY^a*-6d5GK0%PAzhT?w$x@tb_qXF?4u`^BkXv)U+Vd`dkpSIp z(P?y&9#XuQZRPv%Ye32^IcHFEOX;>Q|dJGCnR4oP^;trW1s~{PUxoVG8D5Paw z)7GnM5lOjY_?qK&3(ytTEjjD;d0bxZLzB*YH$oa78QXkTT%G$OT_bBssq{@#w~W1i zgiuR{q^B0P8@16KAl2HQv*o7G(p6GoNv5;9ELgc?r;e!EAlk|rU}69JjstDBK&=cs z|HwI-?Ze8}t|(T!X3N$Ilj9PFcKV{4nHh`8ePY>F-BWL+M9F-cz zpX(og^@Fn>b?z$O=v+79=1uryoez6e%Dndv0M*T&qy7w$3LMgozhIS0a^83{7d4 zE(oiRzVk^gtF84N&F!Iqw}re|Z`wuLO6i&VTzV2k-pZ2V;9YVI#YKv(KCwCASgTjC#Nep-V7A@O4I`dwEkzSm`RrsY_gPo28J5IJ96M$vvNXPVQgPA2z{eZ9wc)35uKdaQ=ojuE*VYlsiT@Uq&& zrVMcbuLTJj=K=+e?qr^O{<@p)?VvJ4W)M-*jT+ZS)RR4SBjZAlb2PBg zfw-x?!E-_v9RtZ+Djs#6pZ!J$Cpt)6W-KZS1i5ihZlDR&P=n}iG-m9qwSV?4J-jf_ z7}BE<$xBbPKCp@4E-Wli@{{o-^n9P{rpJaeANwRMF!x;C)C+lWiuM#-s6$oRJYzcyKddxKOiVIj{=2^|OJjrm6gV5A~r~JcF z&CPnofG6k+cUf}r+6=Mho=>YitYjzDpsDPpkOI{-C;j0<)7d=sW(L@_G;tkZ*`m%o z5|3f*uj>~s%qn5Fa7HV3M^yhPiTq|ac6gZHQT=yK=gup;enJK1#n$DcrVL zPS0X!qWP9Sk9rfvN4jOb`0kJsV8}aXzJI5)ZWd*OeO-eNbEgX90=e0O2@IW^$*I5u zmj0F&PfqUjhtK)&#g53zLru6YFai4eo+w0%IeQa^0A#$+hRfQ6EJ`d62OK)woM{Mx zKED08!?(fcxoWq!#e4P&90Vs5t|JmR%`M2{bqW_VildX368%&XoI!$%$bfC?as&t@|S%BvObe6`?(Gr_mx!T-W7?&5VN^Nah}xhU%BP5k)p!lwWhGx+a|qF z943T~xG31EgVJbQN*xc(+h?6G2D0yeedSP6BxYXku17D^nt6Dg8p(Lwb}Oqi31Qs6 zYVkS!0PCChPQ>F^OiZJ_k5{wsx{N~LdOBi^vo_Wrz1cKLyR3X)cc}ZdR6_;UkQFzj zIP4^ajwLYK3cl;OJfLp-C7oW2>4yRLlby(dTZz7>$?}GwJgz}!;xprFy>0@#JHB36 z@pNwql5oeu?ZSO&i#)B+RUFW~7ufRdAbp9s0P#v*AYGwWul(%t4aEE|Hc3Jz2TnUmpemP0jvOA;>OVaY*bb(A^%<@j2yFlA9v}AB|amk^AASbMwx^wWf0gSMR%I zX`?*Kw+=OlOCxeQBKD6V369g}=DJxPFTybd;HsI!c7`A^vXc){nT{g1Fgj!}O7667 zaVQ*eC$0@H-%&PbF z`L%^bXaA!$qHulh!(z9X*;gg6TLeqJJW96iX9xgTIMHwSWv7w2E_2^UbXKLkNK0gt zd((GtdN#iT1Vn&JY_6e!>bxp+*IVnq^Cxo3YdCWX>CYfIN-0*GV|rM_g)ULcNb~I1 ztJl+&`5@4yz*nBYzW!$5(1yPj=o=ls@ynk645cxpe0nop4RJwjyCdO_o##;%FX;tu zs(+be1}mUB!F%`JxT&2-Bh~6x6hPWRK3#B4NBtpS)4GsD#q3V~_h3U`YPmCXsdmM_ z-66`zq_JfTFYV^#oQehaX@C)`Co2?g36OyI&}2YClk6mkXlm!$rY{>Ej6aY~C5Pmy zitZ#(4gLx3X@Gj*D9tKjaQ^Y7(w^00y1;bs(~gsk8%Ju277F=cZS;-dWcPT}Fu=#N z?X!2%7gVfo$lHIgbdG;uLs>lFZP$V`Mx{MNif!c$YECj{nyz!~#3G?lpQW#PDf42v z6n5DPtJQl=$g&m3ufYT!@hCt)_(lUAw9)K@EdZlJqPvI~l1%6Y#ii|Y4y#zSl>ef! ziaQ1$q8ZxApd~z0g&LCFfC_#52K&0uwcQe0i^f*S#i}RVPkW+9Th9n}++NAwegT5L zE&L_0sTG%x%9aVSxln74dV=g9Xc#7F^#E6Mr5z56LPDI}Kd z59OcI^|t}oIl}ZZd$k7ASWWaxzO#k|)vIWltv&dmqG_a^Wi&3sV0}D?9~9e^9XzG^ zl-_W9?&Jqo-YpL59e z{nA37JqGe`B$X|P1nU$&2bCN-TZWeD?>co)9`$fqYXmW=)L|@Y8tKh{sl*eX1PfT5 zuy5=xRbB@wYoKSFE*ThLutA`1=jM9+Z}A+K+8gQ`)Z4chWl} z2VHk>MPE~s4ueSax*<2CS`owz8Ut-P$(3J9F_tTMGm?&#bB}+iB9}|eedO1Bu~CoW z(0TYXdr^zt|A1$WM+@w5`Ch>8=@uI1O&xbD-==csO!=fvp>ud+tx~}V;o#kSS^d3{ zbHj!#9>zITtyLGjDbFJaM-K;~m+=I>1v(l>a$-lvaSCJ*(8kfa+>uYZSvj!<2gO_N zhmDo1K_h=XkO0b$yRamB4vKWyC5U!TZSxus=n!4Q;HF>O-%W%{IOzNp5gnaPN@6mV z6Ug*Cpn#r=Ug?@_aK72`oLW;?H#6$nJJ_9~!Fn6IOtabV9g_`*qKvIG+*dNvz90Hi zFOu$b25e~w{KVQ5mP^e*w`Xv21=t}b%h{GCfi$^k@ORWmdJe@-oGEibOnUj7v!s}q zoYuL2adGiKrr9^MISIIs!Tj0T8H{6t#PySlmOJDDo+q-US{i3s@>!F?g#~@Yxlf=T zxXT~ScRU%pnt`2&>8O{IELh^LkG71nc`)wCV9rkZOBp#B%SOD?=8h}L_af!C*y6R7 zo3;dCIXN`kk` zE}UsI9bx41?DxbOQY@ZWTz_p2s-N`q#C=vmTRF2p5Pjz0=CYNIN#G3{Q?~%`7HXB(X?~SY9 zAE~2PpP3hbPc!$};o)IrD=u=qKsMXbX;@1BXwO~u!YA$zTA0MM8OLk?e z6Hz<*MXkHIn8jQ(SvM>}vd=dexH1k2EMKP;Wzt$oBzqyp_`4mpX27@@T!;uy-)2OW zBp$P$oTiU#PUYSwV8(dS>Ybs>FR>ixo}Zc1Z%b5i1g;W=zB?Nm87=<<3C=@`_9=?ph6NmD4YPAo01(SarK7U)>H_jH z;f-5da@YVl7eiU+;jBqi?riGoB=f>+%FCK&$nJZ*rta36P450zInfKP5EI#baWh_g zS{XBG!+qt54{4@uRsWdZGP+N$2V}L~IoBX0&^i_pOi<($+P`k&i?tYS@1#93%;o?&oUF3DMw?Dqpx za^5E?cfR~$$dg!J1iTa=e_^hIPlRCNta+LPl3%qA4ifOx{yNVj3s(n$?b77to-Lv% zM7lQg?+dQK$%t^)DQN2chxjb8xntn*3z*w#w)24Co=f!?S-3xFKEhM8YzX`D_`6wL z+~=h%tM3qLb8qsqM;62O5t2|&!kipuT8vklP1>HO0+tmgw%P9VQ7LF+Ruq3-C_nEa zKDaH>pC`Xq`x&m0ZPU_ZQJ0TM7T5P*%%ObR){%9_|BIAGTlM#&+qia6PjRRh&Y+7( zQZC^xYB#Lzdng#k0ERf>8Onp6oU<4l@p=;NO$z3|!g z^TZ@`n7;5rGZ@>qMH+j^`YVc{(b6iPo>8q&lVtEqNl8_nM2eb$HN6~m_lrHlqN1W= z=ASpg(B&4bRu@I*pj7KI%Ilu(`>cir!2ba(|6SdKdD8ac!Lot^*m}!#;c1k13~g4+ z45z|;R_IxKBqKa%^W^Qhll|E9t2jCPnHU6Y`WWtlpY6t!2RUofKSwgSXjTewvf zLs8NOfsGYFzUj*)<37ue;>@eZ)B^y z?C}V3EWLxCR|TVz{xe`#5^3Qu@0Vy-`nk%EoJ|gx<)x`U_5Hbq8p1d%H^Hh? zn_$86F4scmGqdE+J-)EBE&}uRQEm)YCg|7{KZqUCj|gkOuR< zgPy1plUsagUx-(0uU+dV7tiO+a&rAue=ch!TuIi=l_O^8;cBbJ_-9M)CsxPpsR?mxT^ zC@yD5nW^-Lt+QuELcajOCMHm9$D>sNkpN~6K&{@kXx4%Yc}ancucz5{SWBh)9bU>6HC#+1Wfvkf(qh38MX;}VDE z!zX1BAuRUyiYv!g)vlx+1-?PLW&!Cihww(~UauYvQhJjQ=9i`LGk!sqcUpejM<(7( zVTGkXxPR2`IfLy5oR|I5&qiXk#*xM7eS$G(ffp+5FRQ1_&-Fhx;$a2H`h@{%S6@-& zfr*c}vd5&KoMzq$MP>VrN3k?Nss3Ncv}`I#GVZ5vB*Cg-b(Jq|1h(sE0W-7A6|&DO zJ!PK~+F%Y&`QW0{%yN-vXY;@+Sw!#@QK68qzCT5m;93??c+%zkHNucO3%){5SVm2? z9J;^P{Y+#2%)cCBx$7$yryQBBhdXC%|6?QNR;6_S8w8G?5j~cRS^F7XJl+-rTb^Fr z@x}#vN8L;L40!YT?R+O{Sd`TA4bLTmFWRyLqI`47eC? zYxg>>QKF3jzg`Cii`!g58lj{_!|oIiugPfmF_MXW=GFsiQyl zG~N`7;Ic(qRdz@u##Lio_YFoLwDEjKYWK>Dh&H*Tgh{Ti+`#VOZbV$Mazz1V%LF0{ ze=}b|<=G*;@e93Bz51)LAo?70MBM1P;}P{25Z(BGq%RZr_xp7p6dYW9$F```USFfqcu@|j$ZS?uxv9YGMmES*}SE$xOS>i%NC;M_Vt1M zZh4+&iWEb`2%C)IZGj-b=-3cH)l&F(VxKyVJ4lmlHNuXixOhc9<%*{yefh(Z!}I(y z0cQr|;fhjfa6nX^Yhm#fnl)6&lLYsrPpU=v4?1}Jse?L(@6%B|07Fb8M$21(QT)7D26ES!g#Kr{^DfYX(}<5q;{KJ@nw@gHD-MDHU&Lwwz_Y7wBCJk_KY^H&nWvf z#!%&{uIZJBr~j*6979#M<7Poguj1L0>cusGiFz_(`KL`Xu<}N;`J+=!C^CPKZuJsB zW^6FoY$~5tS3_*{2F>tTHesJML3kQ)P-XU;smpZ8y+XKpCK9srbh~9z{rJl>^*szWUfL3LY#(Lj>|Q z)_(TP#?|-Gpr3nV#_UIb^QBQP+c?vVK5D+9iG1bTs0N^8SP_LZjwz|=xo5{ZuP++AdUCaC+x#b!x zKcyb_y}U(}EeeCrz8zNyA1@q_A?nU@=mj#n@1?79_dQiDPQrbPl8U<%w1gUU>N5Ph ztnNYcAyi+B%-YpZ)M$5~Pk4VHhJHo}Rq~HdCEZSjyhD^lIrayPVB+4S_~bbpN5)AL z&GI1+w7;+jv5kU=VE{FDKb9*oy9oY$RMiNhUgGww;ZclXehjVPsuF;%`lI38^3)TY z(YEFq7cwMvV+@`2qK{eEcUm`77Uc0Gq-N^);6m#0_7#0noa3I08m9h)#1#dAgOJW^ z86an9A=(?^2?^i7LsrYmq$o@-FQi64Z<){!CQRv%^DuZ zEU*7fe4T;r`K#33XuTVk^4s=&ao{;^Xuht=8%dt8AME=RHx>>_~{+2|_$D{XuOMrRt6f4D3g^$4k>WT=@z@vXwfkYSEN zu)WryWs?ODH`+@hD{__fV~dk>EzeRBs$|1RidMy-1XpiAKi&J0<@@(H>{#==su81I!;m|VDUi6^*-#$G1tn2Jk zdXk1LgwI0G;@Z{GZFJd-MVuma+w2gSaIFQ&|F$u;cDfzjeh`~uVAEK=e#+;#@ zWkCvExA1CMK=Pl#=U&!A|I|QuGfKEcZ9knDiErHcg zEyERg__6;xNO7q-gI|f>Gv7d04A_3?2 z$jB&^?;eLK?_ohle>^ah^_5THQUX?eCn{Sbligq!$L)QGTT4{N7=>tq`Imn)0vw$2 zyBtzV<#;K;HH_T>1RPFHgx5ziGcz)$i5e66ZGL<@285E=2zEJ<@x8Y;W_VwzTHU+HZ*X#^I*ft(P~Xcu_*dP^P04j@t)q7eH>2&oAlq&P74MC1w-egX`K|4?mTAe z`aoahHr&P4iOEvQK_Y*`=NZgFGjd`l5MtP%AwhU&6BPuY+JP`?c*duY&cVt_Z0;L) zB&Nr+8{NB8vGx`{OA#ii9+2waYgOsthmU~vjT$Q5lpph$z#F&-v+(3$C3=>YP}>O$ zUoIeX0LKzwtkQ~#;0TBTtvCI``?wb0m>Z(1#)pu06n=R%XmAdr+lR%-SJ~FDH?R9t zW8biY5%fLVVD>(zZvS0~PeSb^cm+xSqOSxfWMb$+>p+7g1=p!m$tJLV5O_skL*e~> zF@IM7*YTE4%Vi&@LAZ*aC{~oUavsnGva9Yx_a0Q1v3y6TEBc-bDalE8LDX-vqct5w zycPv#cs#Hk-;#k&-iciv+Mgu@ zGf9UZfdvX|s_j7NVm1kZ`59?Ol3#dO790ri8!QR581(DRTz0nra;?^lT_b|TD&hIc zzrA>NwNw>FB)oSH-b34C0} zY<(;TI;>-?℘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 Jvd$@?2>_53A^-pY literal 0 HcmV?d00001 diff --git a/app/documentation/example/mikroe_buzz2_cmt_8540s_smt/README.md b/app/documentation/example/mikroe_buzz2_cmt_8540s_smt/README.md index 1cdaa83c..a52e7b54 100644 --- a/app/documentation/example/mikroe_buzz2_cmt_8540s_smt/README.md +++ b/app/documentation/example/mikroe_buzz2_cmt_8540s_smt/README.md @@ -8,32 +8,48 @@ This project shows the driver implementation of a magnetic buzzer using the CMT- - [**BGM220-EK4314A** BGM220 Bluetooth Module Explorer Kit (BRD4314A BGM220 Explorer Kit Board)](https://www.silabs.com/development-tools/wireless/bluetooth/bgm220-explorer-kit) -- [**Buzz 2 Click** board based on CMT-8540S-SMT](https://www.mikroe.com/buzz-2-click). +- Or [SiWx917 Wi-Fi 6 and Bluetooth LE 8 MB Flash SoC Pro Kit](https://www.silabs.com/development-tools/wireless/wi-fi/siwx917-pk6031a-wifi-6-bluetooth-le-soc-pro-kit) (BRD4002 + BRD4338A) + +- [**Buzz 2 Click** board based on CMT-8540S-SMT](https://www.mikroe.com/buzz-2-click) ## Hardware Connection ## -The BUZZ2 Click board supports MikroBus, so it can connect easily to BGM220P Explorer Kit's MikroBus header. Be sure that the board's 45-degree corner matches the Explorer Kit's 45-degree white line. +- If the BGM220 Explorer Kit is used: + + The BUZZ2 Click board supports MikroBus, so it can connect easily to BGM220P Explorer Kit's MikroBus header. Be sure that the board's 45-degree corner matches the Explorer Kit's 45-degree white line. + + The hardware connection is shown in the image below: -The hardware connection is shown in the image below: + ![board](image/hardware_connection.png "Hardware connection") -![board](image/hardware_connection.png "Hardware connection") +- If the SiWx917 Wi-Fi 6 and Bluetooth LE 8 MB Flash SoC Pro Kit is used: + + | Description | BRD4338A GPIO | BRD4002 Breakout Pad | Buzz 2 Click | + | -------------| ---------------| ---------------------| -------------------- | + | PWM_H | GPIO_7 | P20 | PWM | ## Setup ## -You can either create a project based on n example project or start with an empty example project. +You can either create a project based on an example project or start with an empty example project. ### Create a project based on an example project ### -1. From the Launcher Home, add the BRD4314A to My Products, click on it, and click on the **EXAMPLE PROJECTS & DEMOS** tab. Find the example project with filter buzz. +1. From the Launcher Home, add your board to My Products, click on it, and click on the **EXAMPLE PROJECTS & DEMOS** tab. Find the example project filtering by *buzz*. + +2. Click **Create** button on the project: -2. Click **Create** button on the **Third Party Hardware Drivers - CMT-8540S-SMT - Buzz 2 Click (Mikroe)** example. Example project creation dialog pops up -> click Create and Finish and Project should be generated. -![Create_example](image/create_example.png) + - **Third Party Hardware Drivers - CMT-8540S-SMT - Buzz 2 Click (Mikroe)** example if the BGM220 Explorer Kit is used. + ![Create_example](image/create_example.png) + - **Third Party Hardware Drivers - CMT-8540S-SMT - Buzz 2 Click (Mikroe) - Si91x** example if the SiWx917 Wi-Fi 6 and Bluetooth LE 8 MB Flash SoC Pro Kit is used. + ![Create_example](image/create_example_si91x.png) + + Example project creation dialog pops up -> click Create and Finish and Project should be generated. 3. Build and flash this example to the board. ### Start with an empty example project ### -1. Create an "Empty C Project" for the "BGM220 Explorer Kit Board" using Simplicity Studio v5. Use the default project settings. +1. Create an "Empty C Project" for your board using Simplicity Studio v5. Use the default project settings. 2. Copy the file `app/example/mikroe_buzz2_cmt_8540s_smt/app.c` into the project root folder (overwriting the existing file). @@ -45,11 +61,19 @@ You can either create a project based on n example project or start with an empt - Install the following components: + **If the BGM220 Explorer Kit is used:** + - [Services] → [Timers] → [Sleep Timer] - [Services] → [IO Stream] → [IO Stream: USART] → default instance name: vcom - [Application] → [Utility] → [Log] - [Third Party Hardware Drivers] → [Mikroe Click] → [Audio & Voice] → [CMT-8540S-SMT - Buzz 2 Click (Mikroe)] + **If the SiWx917 Wi-Fi 6 and Bluetooth LE 8 MB Flash SoC Pro Kit is used:** + + - [WiSeConnect 3 SDK] → [Device] → [Si91x] → [MCU] → [Service] → [Sleep Timer for Si91x] + - [WiSeConnect 3 SDK] → [Device] → [Si91x] → [MCU] → [Peripheral] → [PWM] → [channel_0] → use default configuration + - [Third Party Hardware Drivers] → [Mikroe Click] → [Audio & Voice] → [CMT-8540S-SMT - Buzz 2 Click (Mikroe)] + 4. Build and flash this example to the board. **Note:** diff --git a/app/documentation/example/mikroe_buzz2_cmt_8540s_smt/image/create_example_si91x.png b/app/documentation/example/mikroe_buzz2_cmt_8540s_smt/image/create_example_si91x.png new file mode 100644 index 0000000000000000000000000000000000000000..8a670329cfc39b3e765069da3617289e4f92fb14 GIT binary patch literal 92821 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 z z?e)cu;)|N5Yx{S6x}ZX*Hu>gROq3gdBBfKWgyN)1 z%$n6Z+%n+J@o7eReS8$wl4)4cn~;YFA_qvx*oNAilgl)vWPjX=QLEKA@JcVM*T5?7 z@Hw|cC->&wlIFU`9xmYGz-75H%1*;|$Cf!o8^V|(VzvQ)lI93nhot%bPD$V4=H|YT z;o;$7!a&k*E!DKGlHD5h{Ga|M|x*`K}%=ConyQ-1j)P@`7<5i3lO$Q5+B7

>PYnK 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

TxYCJG4h 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 Q{~Mu|xs6$siD$z90I$CHasU7T literal 0 HcmV?d00001 diff --git a/app/documentation/example/mikroe_oledw_ssd1306/README.md b/app/documentation/example/mikroe_oledw_ssd1306/README.md index c0ed2700..1dbbc996 100644 --- a/app/documentation/example/mikroe_oledw_ssd1306/README.md +++ b/app/documentation/example/mikroe_oledw_ssd1306/README.md @@ -10,15 +10,29 @@ MikroE OLED W Click is based on the MI9639BO-W OLED module which has a size of 1 - [**BGM220-EK4314A** BGM220 Bluetooth Module Explorer Kit (BRD4314A BGM220 Explorer Kit Board)](https://www.silabs.com/development-tools/wireless/bluetooth/bgm220-explorer-kit) -- [**OLED W Click** board based on SSD1306 IC](https://www.mikroe.com/oled-w-click). +- Or [SiWx917 Wi-Fi 6 and Bluetooth LE 8 MB Flash SoC Pro Kit](https://www.silabs.com/development-tools/wireless/wi-fi/siwx917-pk6031a-wifi-6-bluetooth-le-soc-pro-kit) (BRD4002 + BRD4338A) + +- [**OLED W Click** board based on SSD1306 IC](https://www.mikroe.com/oled-w-click) ## Hardware Connection ## -The OLEDW Click board supports MikroBus, so it can connect easily to BGM220P Explorer Kit's MikroBus header. Be sure that the board's 45-degree corner matches the Explorer Kit's 45-degree white line. +- If the BGM220P Explorer Kit is used: + + The OLEDW Click board supports MikroBus, so it can connect easily to BGM220P Explorer Kit's MikroBus header. Be sure that the board's 45-degree corner matches the Explorer Kit's 45-degree white line. + + The hardware connection is shown in the image below: -The hardware connection is shown in the image below: + ![board](image/hardware_connection.png "Hardware connection") -![board](image/hardware_connection.png "Hardware connection") +- If the SiWx917 Wi-Fi 6 and Bluetooth LE 8 MB Flash SoC Pro Kit is used: + + | Description | BRD4338A GPIO | BRD4002 Breakout Pad | OLED W click | + | -------------| ------------------------ | -------------------- | ------------------ | + | DATA/COMMAND | GPIO_47 | P26 | D/C | + | RESET | GPIO_46 | P24 | RST | + | CS | GPIO_49 \| GSPI_MST1_CS0 | P30 | CS | + | CLK | GPIO_25 \| GSPI_MST1_CLK | P25 | SCK | + | MOSI | GPIO_25 \| GSPI_MST1_MOSI| P29 | SDI | ## Setup ## @@ -26,16 +40,23 @@ You can either create a project based on an example project or start with an emp ### Create a project based on an example project ### -1. From the Launcher Home, add the BRD4314A to My Products, click on it, and click on the **EXAMPLE PROJECTS & DEMOS** tab. Find the example project with filter oledw. +1. From the Launcher Home, add your device to My Products, click on it, and click on the **EXAMPLE PROJECTS & DEMOS** tab. Find the example project filtering by *oledw*. + +2. Click **Create** button on the project: + + - **Third Party Hardware Drivers - SSD1306 - Mikroe OLEDW Click (Mikroe)** example if the BGM220P Explorer Kit is used. + ![Create_example](image/create_example_1.png) -2. Click **Create** button on the **Third Party Hardware Drivers - SSD1306 - Mikroe OLEDW Click (Mikroe)** example. Example project creation dialog pops up -> click Create and Finish and Project should be generated. -![Create_example](image/create_example.png) + - **Third Party Hardware Drivers - SSD1306 - Mikroe OLEDW Click (Mikroe) - Si91x** example if the SiWx917 Wi-Fi 6 and Bluetooth LE 8 MB Flash SoC Pro Kit is used. + ![Create_example](image/create_example_2.png) + + Example project creation dialog pops up -> click Create and Finish and Project should be generated. 3. Build and flash this example to the board. ### Start with an empty example project ### -1. Create an "Empty C Project" for the "BGM220 Explorer Kit Board" using Simplicity Studio v5. Use the default project settings. +1. Create an "Empty C Project" for the your board using Simplicity Studio v5. Use the default project settings. 2. Copy the file `app/example/mikroe_oledw_ssd1306/app.c` into the project root folder (overwriting existing file). @@ -47,9 +68,17 @@ You can either create a project based on an example project or start with an emp - Install the following components: + **If the BGM220P Explorer Kit is used:** + - [Services] → [Timers] → [Sleep Timer] - [Application] → [Utility] → [Assert] - - [Third Party Hardware Drivers] → [Display & LED] → [SSD1306 - OLED W Click (Mikroe) - SPI] → use default config + - [Third Party Hardware Drivers] → [Display & LED] → [SSD1306 - OLED W Click (Mikroe) - SPI] → use default configuration + + **If the SiWx917 Wi-Fi 6 and Bluetooth LE 8 MB Flash SoC Pro Kit is used:** + + - [WiSeConnect 3 SDK] → [Device] → [Si91x] → [MCU] → [Service] → [Sleep Timer for Si91x] + - [Application] → [Utility] → [Assert] + - [Third Party Hardware Drivers] → [Display & LED] → [SSD1306 - OLED W Click (Mikroe) - SPI] → use default configuration 4. Build and flash this example to the board. @@ -70,4 +99,3 @@ The OLED display will look something like the GIF below. To report bugs in the Application Examples projects, please create a new "Issue" in the "Issues" section of [third_party_hw_drivers_extension](https://github.com/SiliconLabs/third_party_hw_drivers_extension) repo. Please reference the board, project, and source files associated with the bug, and reference line numbers. If you are proposing a fix, also include information on the proposed fix. Since these examples are provided as-is, there is no guarantee that these examples will be updated to fix these issues. Questions and comments related to these examples should be made by creating a new "Issue" in the "Issues" section of [third_party_hw_drivers_extension](https://github.com/SiliconLabs/third_party_hw_drivers_extension) repo. - diff --git a/app/documentation/example/mikroe_oledw_ssd1306/image/create_example.png b/app/documentation/example/mikroe_oledw_ssd1306/image/create_example_1.png similarity index 100% rename from app/documentation/example/mikroe_oledw_ssd1306/image/create_example.png rename to app/documentation/example/mikroe_oledw_ssd1306/image/create_example_1.png diff --git a/app/documentation/example/mikroe_oledw_ssd1306/image/create_example_2.png b/app/documentation/example/mikroe_oledw_ssd1306/image/create_example_2.png new file mode 100644 index 0000000000000000000000000000000000000000..61494a7f162974e77010149a1dd3e0d7d1fa10dd GIT binary patch literal 100143 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

    kL0!?duQCy~Y8ye={(k2B?lF{U%W&S^L_Jq~x0~ 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 h@@&emmA+luqM2Pvw@fblT0%ie3D3uQ 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 SmwBGsACtJ;t-*Y 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�K)@3j6PiK>688v@*lKkDZ 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 z

    u*PRwm35OOn|BKhbTlXIYGeiO+F0 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

    crn&ctYzk>;+GJdw+@{vd8L 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 QUm!2_*V-zzN|s^&2LN*8Gynhq literal 0 HcmV?d00001 diff --git a/app/documentation/example/sparkfun_gnss_max_m10s/README.md b/app/documentation/example/sparkfun_gnss_max_m10s/README.md new file mode 100644 index 00000000..53be8151 --- /dev/null +++ b/app/documentation/example/sparkfun_gnss_max_m10s/README.md @@ -0,0 +1,104 @@ +# MAX-M10S - SparkFun GNSS Receiver Breakout # + +## Summary ## + +This example project shows an example for Sparkfun MAX-M10S GNSS Receiver Breakout based on I2C communication. + +The SparkFun MAX-M10S GNSS Receiver Breakout is an ultra-low-power, high performance, miniaturized GNSS board that is perfect for battery operated applications. It does not need much space, such as asset trackers and wearable devices. The MAX-M10S module from u-blox has an extremely low power consumption; it is less than 25mW in continuous tracking mode. + +## Required Hardware ## + +- [A BGM220 Explorer Kit board](https://www.silabs.com/development-tools/wireless/bluetooth/bgm220-explorer-kit) + +- Or [SiWx917 Wi-Fi 6 and Bluetooth LE 8 MB Flash SoC Pro Kit](https://www.silabs.com/development-tools/wireless/wi-fi/siwx917-pk6031a-wifi-6-bluetooth-le-soc-pro-kit) (BRD4002 + BRD4338A) + +- [SparkFun GNSS Receiver Breakout - MAX-M10S (Qwiic)](https://www.sparkfun.com/products/18037) + +- Option: [GPS/GNSS Magnetic Mount Antenna](https://www.sparkfun.com/products/14986) + +## Hardware Connection ## + +- If the BGM220P Explorer Kit is used: + + You simply connect a *SparkFun GNSS Receiver Breakout board* to a *BGM220 Explorer Kit* board using a Qwiic cable. + + ![bgm220_kit_sparkfun_oled](image/hw_connection.png) + +- If the SiWx917 Wi-Fi 6 and Bluetooth LE 8 MB Flash SoC Pro Kit is used: + + | Description | BRD4338A GPIO | BRD4002 EXP Header | SparkFun Micro OLED Breakout | + | -------------| ------------- | ------------------ | ---------------------------- | + | I2C_SDA | ULP_GPIO_6 | EXP_16 | SDA | + | I2C_SCL | ULP_GPIO_7 | EXP_15 | SCL | + +## Setup ## + +To test this application, you can either create a project based on an example project or start with a "Empty C Project" project based on your hardware. + +### Create a project based on an example project ### + +1. From the Launcher Home, add your device to My Products, click on it, and click on the **EXAMPLE PROJECTS & DEMOS** tab. Find the example project filtering by *gnss*. + +2. Click **Create** button on the project: + + - **Third Party Hardware Drivers - MAX-M10S - GNSS Receiver Breakout (Sparkfun)** example if the BGM220P Explorer Kit is used. + ![create_example](image/create_example_1.png) + - **Third Party Hardware Drivers - MAX-M10S - GNSS Receiver Breakout (Sparkfun) - Si91x** example if the SiWx917 Wi-Fi 6 and Bluetooth LE 8 MB Flash SoC Pro Kit is used. + ![create_example](image/create_example_2.png) + + Example project creation dialog pops up -> click Create and Finish and Project should be generated. + +3. Build and flash this example to the board. + +### Start with an empty example project ### + +1. Create an "Empty C Project" for the your board using Simplicity Studio v5. Use the default project settings. + +2. Copy the file `app/example/sparkfun_gnss_max_m10s/app.c` into the project root folder (overwriting existing file). + +3. Install the software components: + - Open the .slcp file in the project. + - Select the SOFTWARE COMPONENTS tab. + - Install the following components: + + **If the BGM220P Explorer Kit is used:** + + - [Services] → [Timers] → [Sleep Timer] + - [Services] → [IO Stream] → [IO Stream: USART] → default instance name: vcom + - [Application] → [Utility] → [Log] + - [platform] → [Driver] → [I2C] → [I2CSPM] → default instance name: qwiic + - [Third Party Hardware Drivers] → [Wireless Connectivity] → [MAX-M10S - GNSS Receiver Breakout - I2C] + + **If the SiWx917 Wi-Fi 6 and Bluetooth LE 8 MB Flash SoC Pro Kit is used:** + + - [WiSeConnect 3 SDK] → [Device] → [Si91x] → [MCU] → [Service] → [Sleep Timer for Si91x] + - [WiSeConnect 3 SDK] → [Device] → [Si91x] → [MCU] → [Peripheral] → [I2C] → [i2c2] + - [Third Party Hardware Drivers] → [Wireless Connectivity] → [MAX-M10S - GNSS Receiver Breakout - I2C] + +4. Install printf float + + - Open Properties of the project. + + - Select C/C++ Build > Settings > Tool Settings >GNU ARM C Linker > General. Check Printf float. + +5. Build and flash the project to your device. + +**Note:** + +- Make sure that the SDK extension has already be installed. If not, follow [this documentation](https://github.com/SiliconLabs/third_party_hw_drivers_extension/blob/master/README.md#how-to-add-to-simplicity-studio-ide). + +- SDK Extension must be enabled for the project to install "MAX-M10S - GNSS Receiver Breakout - I2C" component. + +## How It Works ## + +The example performs getting the longitude and latitude coordinates and logs both values via serial output. + +You can use Putty or another program to read the serial output. You should expect a similar output to the one below. + +![logging_screen](image/log.png) + +## Report Bugs & Get Support ## + +To report bugs in the Application Examples projects, please create a new "Issue" in the "Issues" section of [third_party_hw_drivers_extension](https://github.com/SiliconLabs/third_party_hw_drivers_extension) repo. Please reference the board, project, and source files associated with the bug, and reference line numbers. If you are proposing a fix, also include information on the proposed fix. Since these examples are provided as-is, there is no guarantee that these examples will be updated to fix these issues. + +Questions and comments related to these examples should be made by creating a new "Issue" in the "Issues" section of [third_party_hw_drivers_extension](https://github.com/SiliconLabs/third_party_hw_drivers_extension) repo. diff --git a/app/documentation/example/sparkfun_gnss_max_m10s/image/create_example_1.png b/app/documentation/example/sparkfun_gnss_max_m10s/image/create_example_1.png new file mode 100644 index 0000000000000000000000000000000000000000..5bb2b622f0ccd4ddec8a2a2782a703001a060360 GIT binary patch literal 88707 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

    VOKxPcGX2iL-53<3B$Bv~;Od4GV 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 literal 0 HcmV?d00001 diff --git a/app/documentation/example/sparkfun_gnss_max_m10s/image/hw_connection.png b/app/documentation/example/sparkfun_gnss_max_m10s/image/hw_connection.png new file mode 100644 index 0000000000000000000000000000000000000000..b9da89c145c781af7e32e24f51428b233b295ee2 GIT binary patch literal 527129 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∈7 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�~AKN-=0tY_IwD{WG@hpCDP&) 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

    B7_frZz3 z9tC(AF%u_LRKvdhd8<728yCR}ta=J0@eG{QGK`|{O9e^v4WtQKLTpK7Ov<=<(tW!P ziE}D*6?iCUsEDJKi3oogBK?YG>^w6dy$Nce&K9?8pwIjHV07alksu8lqK(nA#jMyW zDM+#fQ3U{UG3(kf!T(NqdiO8X(7x23{pwDI3ci@$HJz8`k2tW_TXAvV!@8=G= zoX6n;!~1nr-=HPkL-3zB_*ovW4nXguWXfNU}OMy(*oH_Lltp zEUmk^U=iG8UsKabX{aqEo2xyTn`KV!ZlWtLE&N&5M8-TVLS=%-7?5AVK@%lj>Iz%H z%sR_*K9Ecw6#ncE7cEQ$jRqxHFgprC8SoUNOoJN?_XyWARm_N7&(cNcGM1uPo#sQW5!y8Hv3mi=T6*Uixb7JILv)4>Z zF$a0JJwMtzR4~ljz%atm2yuf!fmt~@RFRp#zB)G4;|yO z$j0X`8%X!fP0gwjqH&_ks(>NQXu(-%ST8zyUNkBgz&s(R0Hi$x`z#%51MGRzIujrk z<9KMq2Z|f%)THMRWH!ojOuy+Y!gsbgJa;StYyy0A68!LyBGcKqAgD_dAS_EFQi4eb zlTV8z8flffG?r`QTFHV+pPsR-u7k8AGMO*sr z$H!S+o!w7;Da*^5+*mqa?b+&W+gj2q<>N@{{8{ea$?sA{X=4}ZXk+y7x3DR)wR@}Q z2s76L(;$`d3cDH8AmHO+BM3VLfhha)6sd{W35mWt(Eb#AdPg4C$Gnn@uS(|?g> zAJ3O0Rdf^k4bE`6(y*)t38(Hg!hNh+>f#ttlD~0NkMWswD`S3}W15;NIF^I?uh;p+ z+uU1vnhDCfDcTx&nz|{QONQ)SR;=9oak8A11RLK$+-wx3l^$Foj7z~m=m?3%TsEFFM(IMqD*|a$o5bLIC~QWuMEin=3x^`)9)iV-CuCxMNCW!0!1Y-WwZgY2t^ct_ubGRlXH=%Bc1>B&R@+JB6~Su?t~YfX{bGV-u*eFsOMx>!xzRT6`| zT{Nk?eC@8(;ssw9;)OmxL3dKh2K@*lzYNHp^hYcA%j5sukIz1LADd3ZAx*@&npw59 zbSU@q%+G5aSl6>Yt*nQiUqOSOpJjdhdrka&-^G6W3ibaOw1hjs04A9!I(_E>uJh9JqdWl;N39)6?n%J^=jR?BE!V;gM22I=Uazhez*{s}`CjBOvJc4;4FB=JVb-1?ISVjzA zyR2?{R8Jh=w}T6cdk1e12^C!zM^oEwPU`;S20Gd3g$Fmxy(yWJ(VU!;@NnR+ zmZhbijg6zXw;*1$@DCiMOv~oZaw|I(6-m`3JJTW|N_PC{XqOI$G5WhcmWFh7=KFVj zYK!5@GkS=!9~I7RE7Lw!;Wss4FTyvz#x5X3dqqGY6<}) z%vf>??jTXgLKR`Q)v;SmX%KEI%sDvkAdo3C;|o2O^N?R&!i0(}H3hj=<<|*wfz%YE zoK(J_wS|1_-)lM^FR$x-pFKz}>Fa(ZJ5Dt}aa*Qawzn?f2>I-U6?6up#{_%?CJ(h- z6x7Y^1eiJ7eOD`Nsoh-Hw6tcLw`XC0T;>ll3T#NEd9hALUTkR@Qcnb2)OqA)RK4#% zEzIPd^RDI!Zsa+8Xx*I|NbJ_KcgdkWmtWgN!-B3h(7BsApTUvm{dtFHTsxo2%X4={ zdn2o9P=7l7H>`XoMp}=jQ5R#{u;Z@iNVZh?ep%fPzWgKV(=@)?t-t~oe8=VgR@HJy z&>#Jk7Qdr=trte(Dkd36M!B(=B|fZ}BJqRiXK*~u)4|nJF)`=D;1yz{Wn>0zVk9MTzkf7lMVFPrPL^>3LabXyYu+ih$Ovb3;s+SSI z7#xR!PPuBW$`+&$nd-Sp4T4h5dT5Z2z2)f2e;PDv?3R` z);MeAAiX0@wdcUuVuDPD={#3Dh*c7dfE zzVIaRmV?{F2YDB~kGN|i3%#R{$II!V_CMpDKI8Z)+nTyMMiv%ojJt*)3Pja0_$Z0J zhU~#X&3YqTj81g90d$)ZVOTut7};`(V$(o<2z{DlwDTri6ez*$36ooGcl3C|Q+JX} z*s5e1*n+z8;K}F+a9ZGVUiP*3tMR|czfpIxMrGlA(KH zUF^sI?+5rxc(DcL{C)pV+sOKatsA3*#WS(Rah$B1XDn<}&%mOZ-A%P8+A@E5R?jz3 zT@{LqQmVgA=lgm7jrX9Q7p0<^G$;vM6**^P`CZ=-Eh$A$3EbjS zbkBdjjaUe$e$Qvpw}qD-eLmlxjTFtTtc{EdspiKkCw%cSt@4g6%=cBz2IH02;l!vG z9?_j0EhhFWhog^miDzSlmAPFfmeqFEHJZ)ZRAlIP3F^Qw@glI#$7!7?iu|h#2Va^r z1*JjX!?0@5uwz5lB(NjlcliQ7i~ytrg&8@bI7+lavFaEAdp;$PcJ~DP@YC&iO?hpQ~Eyou#DApH4{=ZlQMQW&ks3(G&I1_ z(0D3LN-UtJYgBPteQAKPos^cCmXeyUm6`^qQG0+k5y7=Xod%aYMJ008o+3KT&YG^W zl71I)bi;FTWij356(v$0VY`T}LbqqcnqA>4mn4ITAQxZA|7I=i+QFyX#q#@2<%8Vs zbj2LrHg$DX>B7V?Q^<(lmM*8F=;^YwY})D^II!EgJtkA<2~SjTOau}ANs-n9al!*3 zV`Shu5GxtfW5sa}(k+#x=Y*iPFs)SXE1dH}NfV`jH5wq%WC)GLeoM!B+2$7d?(_4g z@EbqP_$HH}3Wkt?VT>YI!vzxNy57W%V8G|c&36)C=(1liz8-4Cr@`k)lB|EnAb;Jg z)Ys~Fea>~&qd77;(tCJndh-ElzG*D)Nv=${z7|?~IuY+PjkW^C99sQ+Bf-~bkE^C9 zsh&6AFGpMDe5>Qp%!#g*czH9qH!#2O3T1q67rGjfMw>Jun&#t6@%GW`*H;=yoU7?E zpcg~kJ|_CJFFq)5w5IL5J!!n;<$0#9^d_wL_PO1t^!G1GlPdR4KOJ8GYe4)zMFWLY zou#)s&W^k!EPt~){|e^Xa>m|SY8Qk%gO(2V!K=45#9}jlwPrQnxXXNg5A&D)jyE%@ z5s$deO)j+TI57!w|1eb>JQQYgv(t4DVeu>vUp6itiXIuZtOka1`jm}o<*;pR=okfC z1{oX{8m>%V@hJyJw|;4gU5jqW7*DI+$?(UGPN&!NV#k6NbDn{=0Fb|J#hk5aO+Ho< zoN1L%7$8nTgNeV648W@V42*1;X+0G zCQKr#O^=h>Un1QnZ>!@bXJEDRJRRqNeI(In2v3I;hGfC&%#{sbU+_GgtqX~ufe&xJ z$+3toQpluYY^IvkF0-Dplg(UI&Xnm46hs zAu~{g&tfnwLGPyh8>u9WsVycnHe-V9>YXB{~kr!h-k^6PKZh{ixOa}g=>+QNBHaC?cu!kMF{&9H1D!2C8b7;qMB;eLd_M(n^=!w zI!EXAxr=4b?moKn(Q;+F}Ai5>svHg0&`Xk9sh4Y{kUqqJ??4KKS(b*cGP zt{vfG-xBOhN2X;D&2?LL3r?GX9U-2U`#rJvNp4cYaVRt5Q#n4))L-rFzTbJSMxFTt z1QxS@vLy;R&FQF)fL@sNA1N` zz4cJ`ch(tyB1;Jy{A*ZAo!HSA02MScmI7APQm^O~mX@sabnl5a?sKVKWUC>zRB}6b z_~+HtSOwNKRP?xbIJ>RBJ3fyFeS?2_{PG-VK&K8x5+TBOMU^~AS+wl5+HSk`{sRvy zo8@a{>ECVTBjK+hI?$C%V?ZD#csLawFI8<+QOO>qVhm9%Td0(!z7?)px)>=N`9hKl zUq)^RE(h`kK{_7s8BYKz{nLVNt-yzgO+a6f?tah^4sCT2h24g zCHv7II)A3!m;t6o^8n}PX4RXV{!QOS_DCPIm_i?+o}2 z1U+pvbv;DT;39BjLhYH6OJLPX7=R?vl!xP-QC-V*I$iWsaPhQkc+x8^f49}3&j-+N zSuKEP1@fZ-yf_h!p6$Jl-+wXs^XF>2?6Xtf z&MdF6e1uo|gvjphd3o)fFd>SWOiQb!rER*gcv3%cXeX=ueYb;>f%Mz`>0YfA{8tb$ zfwT_M1X9Jt>vWFU!J1pH%Lo6#^Y!i3O_We8`^BjA`n>#{z2~`cZ5QW^mwAncmek&B zTz4+91SLPxNY{iEe--XAO)$uy{}ngxUrk-Lkl(}ZTQO?s80T9fc4n)6eF@vnn&xHg z3`aVx?ftj$J7VzJm4`VMua8fw$8(F*#rpEv&bJ;X%bCBKL4}4v37FW#;gY|}VmqBf ze~g|^?V(?AIU+?zm9gV9q7golrA1Kz3%4s=d}?s2dppa9j<_PiYiYk0ff1Ey8K7tm%`A|rI&v?IXgc& z0gLq1#E1+VL)t6ohf>kkGkJpOkQiXx$U%d6FzqyMWRy;`3uTlrgqMU_11n}j7%c_@ z6$MVbm>C-k)U;(Y9x6eL?72qclCHe0a^hn>A#$xemjwNerUT% z=(_2+x|4i%Hk<2d8PXC0Yg7O;l- z$nwz6g{ouVp;+7Nu&lv(l#@`DqKG1~?uyH_gILzuIGmdTR`D3MjDxak@#>r?=0Qef-qs`fvxV8%@OvV}8a*+S(C zbpRO(zF@>}akBw6Rs9Ee+H}QheqWyeH#789qEcmqORnPWf@Rw!xZ)A>zcHkp zI1m%F71oS!XNXV@*m!U7N|L$*=#^lRK&D8=#46ZmCEQ;BmkqmD^nkHxq;!bSA&Ddk zT7;CN-Oz3W7Sh-Os1M-M?oJXfNq#Ue$Q2gmC@v)-8wTZEpi2WBki_Q%vc*e^v&+yi z^Nti_o_y3uAht$vq)RBCBvS&Al0*!Q{Qfrn`v?{nHsIb+VXmk%hB?Up--Gu=x)bm* z{G2uUE}-Wh=ja>hUD40KdAep;byeBop{WC5n6Sm!`mBmsQC&QA`}ww)%97{zX}z)c zHwM$JqoA(1IP=6(E>7uq@=K}k^-Y`@fp6>y@u_0_i}F&Ke<}P&vXWBjlLl|=QD$11 zo~PqPru9VjB_oLg1D-V#o;5uxSo!-`bhlG|aqszM%iq*aL(@!0*04xMG5-F{OC$3- z4xClBe;D3fqFydCLhgo71w@o8O9~YC0wj(|N}7&fvWa8hgor@mDqAzYl9|iVy&5ld zw#?C$phe2}2SKmuhX?G6hE0L(v2RGF8B>M!>)nmJ7kyHE7;Us6dlCRR%2()EP)0Bv@C&RXkr#m%=r;9nF@tue~f;>*dKN>CJvjjuA#t1%M_CL%!$sg5n;r} zQ6`G$3Tv;H28r+8;z6;&MMsL04?^xDmf&H93sVfx62$s^EmR)bbFB=NNL7U*EJ~7D za{bDp1=!7a1PGHy%Sa51v)YIwaYc!VH#eY*0>>FG#>DKvtt}!OC6Gv)(=8Czyy&UTjWK;K< z=Wihuz7QXG7}8m#b|~k&KGJq{Wk0jCX2{d@?bk2r0BgIqJO5-65bS{w+xK2w7$fab zqsoiOj~Rzr`U+-wCdC&(hj_>j+e9`6(M}~=_FH^D$n>B=R%t45U^`h-q&fjXyt|1o z*&Z7YN2WX##vKP7u?R$F6B~!=;4zqtRTCc*CrqG-&W6H=C=UBQiGfhM6jZ~oW%FLZEVw;_ zbXK+&ZwyV(I+v4m&5WG~t9Oc&eP#ngrd-Ao=5uyWfL}ikak6!5vGHS+CFf0HD=Um` zS#A4Ff)f26`M@lpW!uA`X$b{MRAY${cWCku>OGCyq`)?Hft*aT9NWQj27f zdgKsAooL*nDFf!6gnpU+kefEDWir}#9Q6_asuHCcD>^xcd_^F}6s;6uC7UaAM-|_ zfG5%TEni1p0~s@KM;%3sd@Rb60>#{I7$w1s3j6fwG$S;6^-nc;DHZf*@MXqA3so z1|w0HdchhC3Q~$D`3@YQBG>IU^$xCm%MRM41fBRcvJxYW8CZX3LiSD#NV?>iVaR1H zpfc`Z8E~l8kIT6JD>H;{(D%ERNE<_BBS&XClNFiA0eh&}R(2V%@ zIGTUjaK*|}(qTcBs?zPMnwzG{PGjDm0!oL@nzXNIX7lDk^-W+BA-XpWG5h44l(ik; z5|Et7jnxVNgBUHJ8}HW+WXjb3mF41THJ9$`c0cV8VG}oc2v>2E1KdxQH<)LGG>@-<_?|vh_J1|Ntau0*jD-?k` z+gQUj^YzF6W$1$(@~;YHG)L}}|6k@v{?662{CfF~>#K*vz#fZTdH-&&p%&*_Gt9kB zz}@i;9Z3xJ`dW5EIJdcZv#C~jMaR+SVb9>^7e{~>hm&oDQ!DLVpD^$+G4bcemldM? z(anXkysKvtB57TsX`Zg?+kw3O2X={qI-=ES~!ea00T63q*-D7q0f73qi z>N>;La`VB!y817YK^uOK)0XAn^+*8f>-66c{e%gj@BfBEaNAbWHE_y~O1(P{@kn4x zaoHSXgQQqi5Zj3;49EA7y!=Rvq%B;fIcQ>s;V=^_v6#~dm2pYp;gO6RUT=R?Bq$Jy z4Gx0I{dX`}VZnP38KUS~Wcz?6pmMq@b(of$H%gc)+Mq8$S9TXyj}9DcaK|+ODmpIPuhPH7N6B~R zP~c*RMd8>?o2^X+rRcHQPSpv*#v_QOOCMfMX`%;BDLqZ2#Gx=Eg{d$^4BYuN7;%uo z{8s(G(xxhsCn2((p3dGf5pvZaBX0x`7xg#I%_XX^NoVs4<9RU1N4??z zU{aRn`(vMPz=zy!Hq`H**$)jk|J&im9v$^b_Xznv|Gg10;N)FyGWS*p?`G3uTPH$3 z&st4m-8_YKdeYqJGep(7t@&BL{C8Ze>+kb;BJ?2dg27m_LnG$K)`t(K<$BM97`6SMwjT?AurE!gmEi>5E`}woWIKb)Lxu>mpsF7!xwU^0BDd5e^ch6jDO|j_c_fgonEfmzijX3XbYB#Y6C=gEM8sO zl3ZBlT{=8uxyw_aRW|Rr;1hAhiIOW#Sbr}EXns_P~gpiW^@dJImfvIjabdhQ7njyV`Xt!!%HBoR_|gw%1zu4E;c3- zWkZf=QF90FbcDlq^#^_oHCf zW#gM;`GQHK4k{R2wmoFKqHS-hEnoN5nggS4BM0l|o<~6zKVOE@b=4g*KUP0?vAQq7 z6)|6OK#gAdw=OtUOwwurpC}NQ4yScuMiUB*-)PPhW(J=%*N5f8@n?(BI;?enpE}>T z>Aq-<&0dBy?>F=knBNkrK#m;-hbT-H>J^z5xxm!m>u?v3)r4`n^GqoR{;_90B|?js zI0BwN8nbAVqQ?XF5>HPPctVT|=$$;RmiC9@1`mi^-eg?3G!(;~Zm#cydLEuxezzGR z{jHy#!T|R-lz9I(Z~skGev|Th+v7LO)c|?7X32vrs!G6Bas&!=wMihPeFNnR(prDF zGeG4Xua$Vu&tjk?n3xhrI|Y5ON7H8W_^txQm=r>vBE* zNS?j|@N}?0^uJZXowH1h=kgE+?{>j`dXWEx1Km9Y-n1( zJ_>`aB7ShW6D5rqqtvVfqk;6hz&?C0c`N{cgTjwJTSD&_nDpG@S*RlYQho~{K($ex z!E6`?3eKxkZQ)6GL3gCjnl5b+S4(7u2CfRnQ~&KA6l80^K8--%PcLmfNW2kZB&?}71tZSW2Z_&_??0y zOeJvTQ)!ylG3`7)V&I}DuNPnUnGEw`Kg~H9AXI6hRjboaW2Hlwaz&87Ea?VqIK({h z`8!JabU2qj?Yy}+$z_npPZDpa-`xvnO6Ql zd>046SE>``Nt-m-Ffyx7{65$hY2W}RPl-AjQ=y-tG;LTsdDk?Y-3oF=2T%2>$*{4p z={c`jua@!%Alal!P$rGG3%8lD!bYIWX!nQ^w?~~vq@zDGx%!r&&szgCCoP-DDm=AO zOTFob&m6JY%Zdfg78hHS`SrSF52Uh?Jzl`%j8`N#Oe@O~qkun4MxAF!Lo+)$*);## z68!r*`VG7xr|jw?M9SHaCBmlPA2%2AEVU>Z<6qtFyM8Zm+bzt+>o3762a-Rvf))Q1u^+%^_{mow&AN9XppV;XB)0@e` zxE_BRErPDfN%Oo8Ma4jpAQ@BLob@6q+>%q!Y}D*L#T5Jr9xH2`bC3|9ldgF$l*QT=Q?$*Vc?m|0?HSn~ygymPLL+Qz5ne4?t7<$n{JOtwUqpe{95h2V z93*FtIbn6fD>*S*BrRJ`k6Z=QB^E2Zrk;kOzcDGGQVX&KN-fT7FD~e;Y^-S~BqLmi zm8%`>W3sy;zfyFlmmd9qQB9rP|H;+D;bgaA>zPrB+Z;+^Zchq?RVq#f0~fo=sX`!;2H$VsgdJx>d!~+OOMr#4rGa0ghxG-O zD%A-d&p&HY!a5=;yFPU9&8#*irWG6wPOGhD*;m_Dh7m`W$0x58sFM%;S$c0{{@o7* zL}j19{{K>HM^<++$`h0R%kST{S(mP?z!i4gy1ax~T6g(4(m8=c9I-vmmDK|gA95hKDE{W9=Cvi@xq{#v)bu1hq&C@WwDURlV_Yf zycxd5WM_BQx5>Iq@Ws~ekq0S4f3qq2a;w%at>y|Isezr6d{N>20@VR=p9tgxN*kb>}FazsON?j&*{h#Sv%Fr zGX412nntjs-=>$JhkbL;tJ<8vkNN}`raz$gsAD_c1lDPqlP)vIJgN;Z8|Xl`iR$BN z6CD)jVufGnQcP1d%a+HOJPwnJCqIH>XpmL*)HSB+kNIDuNamN|nC5N7@1eNewjBpF~8 zgF0(GVp+D~WZn2C3z$O;E!r-w6m!Rl9=&RD60&8Wv&)u7L45ehajjVv{H+@DaW~o- z`QQkj+FDuC%gS#*>jU<7rIn;Y5~O0I(7>J*f;C=?rY-`{pBfy?*cvG*OKGt;>)y_P zg&hq?$`q=T_iMiK+gg@)Ms(WwdZw(TmZu#KuT8oBV?L@{R3*tDK4LQ_MG7S{UnHX; zwh=v|^)k-(DxnJ}vF(f3zg@Ka6=j1g z!C9S+o|d1TJcU#n$*J~JilC8Bcjkx@#}!>h0Bh7-k%zZK5Y1H|ELyr^DLS4!FzCnL zeTKF`lz2aTyE{()+3k9e5n^Q|ba4p3=S|jTa~GJRwe$J;T*s`Xzqw3&)n)Zk$zfZF zhd`lORl?Wf>Z@m_Bf*>+H?TM0)|}MFxrA+AexR&klFb#^N#v1Css|9pplXM~f1_PK zmUAw%9OB=k=^FfME%;@kZ_#qa4g@UGLTJ&pO7JnA0t=_Hn^(d}XaUj8sgelc&Du|3 zU#?8cr0Lvi_efIF;UX0n+O{0jA5-7iGpR9q8Q18)@SBI z`6cdFH}E#O|88%;Y9GA!$m@4R%kMu*>QTHZZH71U+P|d4{gP+2$-8Z&Wt50>GLP3n z5gA&nE;EGDD?IwV^P?}kM+&?cMj?opm_1Kv03mfCs1~P9SYW{A%2IrV73ftg4+>+F z)G+LHa&bJNEdRn7*Or@qjaMnn*zD5GVNT0Up&~c&JidP3z34db+SiF*T;of1VMssU1OSX1bST_z}Km?M^H^O zp>IRwV3Sk-wwznZ?`{vg8|Iu;#39;JbMY(tytSTA+?x#f7U{e34Lov0geS+vlrW-| z5)(?pf`|zf^oV8z_|o9>pg{^PxR0C`@-JF39ysueAnTjmoo#=Iqmd<}IPo7H|Lp;# zKO;J!+So*y|2@txeDQ2iU&1NVJQ+UnTGFU2yDQ7-y)U7NSfw1Y(58;=dd~vfpI1j) zz9`I0&9s6X>>R6ic-N4pE9zy1yuBX#)HinHlFoxyn*^M`r!8D5^IZYb<-o0)hyhn34-ZEuxVA9yC=$}Mo{!7Q)-*UETF-Oc#u-P^ zf{i;*tTBBLWJkx0>2k-n)>W@`{$(T^5MGaqB6u2EBDdkNso@gNAi#kG(Wi();NOeZ z4mi#c7C?|K$fejqcBd{_%oD2H#%>m9*|ewzDp-b7vKcOHsI20jE zGVW8`p;u2c-?T<vY`wId~qZd^7tk3jiD>tA&q@cvFxkPbJZp z?0!krg>%YIItKZo+O{-Q3EUhuicNtuumpVmWbwo3XKmHBX>$~OYYwn&Ii12Go*h4E z861CQ;i2eZ%9xb)e88#R4!Fo42(Y4_kA~?(F0q&e#PF5QRj5}FOJV}QCa6-o@=W25@%yG6RYySuwPhwg69e!jo|xh`G} z^K$mSYpu_^mn)qe7&Wbx5>W&FAT-|{oZO{;dPzh)wbMK6)cJyUduv@fy2;K) zBLLzQG_tplu&klU$z5zcT}oK`w?&dGud1!ov&ngW|DjnUE!kN5lD-<-QR8CCHKnH@ zgE0UHkrpvBk}9SGXgo$Us~1#=QhUzV$wR_O<*EIetkkkaS=5S+;RPOV*H<5#m%Ra~ zU6618d!iv@f#jt4{py+-9QoT?V-GI0L=KlA@pAI?hYU0CccX)Q(EKoeR-!Uh$ zq&0dzaCoZ11=jjDSr>_E|F3Qff8N-!b%G-9+{9Z#+F$lx-ph~MuqvDs$s8Bh-p)5I zA>Rn%Mzn$EBdD+oP!1~ESe(o1ZC$kv&u_2W-!@MbULDUI?oOH<8%|!kOU>?7NQh*F z+2dVYX}o|l#q;UZHg$5S7=u~<6`mwG5;bq+hUUcT){1q)F@9MKd9;+athKwAlbZSE z3uv6_^y%Klrd<08Q|(|+6$Mzv%x=x+E70q;-%g{916q}7utt=68g%TcFx0bXmr2XA zt`wv@9dklr!%Y5z0TP-d6F?xa6LHr^=U#vE!`iwKJ6PR4oR?wju(GI>KUiWY;iAyd zo(p6_ogDVZEPyIOd?;}+po2+2e6R!?snIl6K09IEY44}Y%ImV0w*yL=uUbKlwooAJ zj)s+KxcpCUVr;A}&x^|BMM4JiL8CAI?*jv4roaeTm8|T3W2Ti40<~mvG`Z{r0fbg`=RSBO-5;cFZC1`*eF*zoiIH7F@PY5&$O z+@4|78uOIITFCjw^+20nuh+}_yd}I_=XcUyG-dfzxI$&%-aQy%AD{x~zJTwhRleT= zL0vDl?N=2~SQJ9_7_q#MRP+lK``?SX%U^$9=Y7sRI$Nr-#w80BZQA}sK@Iy`QbJrp zGOCaUD?o~3^FsWeC}p*}99E%7v9g4uoJMG60Kt^V`_AeCzRAg5N zSnTn>K<(dy&!_~L?{p+DAdpU!|%T;BfYtdG^MTGi$MYPRw_ z@6E($U2t^!uuX~f!$GX@%j<%ikB5n&S3+Isz>LWdCxPyzUDm(;Ov@~G$dI4{@~+{l-^SE;In_L9g5f>P{rTH z|E&{svy7-&kX4w<0Ds>pl6$e$dfkYqT1*x6alKh2hIosdyI{Y};se%@bcBE6J}fU{ zI_2%pGa?YNZw7|eF@yA7{T2k_d}E~uYny%lbWT)PYacGuXmRleq3riqu+j3Sw#k0z z>*kJFiQQ4M_cFc^ho97Fl@TuL3Uu5E%NAL@|sF!jcoi zPQ@RAVh!uhvR0;(W19&^fqm$whfDPiPtT`i*zf;DjG;T$CLj@t(*+FVRR*~t2TNgp z5PvP>iJHVWkR?R@17?uy8<{Kq4Tl~OMvXmzBf#(3y;Sg>(tvp0X03uOvKuDz1C1dK zGAR*Z0OdxZ9AcVOkVLO9J1(fP+d#QEo<9{au-j^}ih;>WR!ZsvqCckWw*S+QRNFr)X2@AXT!z(A-&5 zY3H~ffrq7ls(2F5$fwn`L3$lhN>ZTso$GJ&P%d-hafrB~AByTuCv>TzuxS8ZwLuay z`eaMRm_Tbtc`QBY>Eb97Vy)fk4bA_bnuPf6o6h;&i0rtaz=V>XUbNCbsG990mb-CD z1ilRp9<6#vEUA30udGC+IlN!g_pI0h5=4a&GZbDGyl^0-khHM+0F|GQjvqBApjZ6o zQp0VTYI|rHa_*Eg(C`iBJ+LCkP%^6tE}$H2cjR<$D;~|2BQG{MZ|6Ay=7+HynC%v! zM2Y+zTXi`^v_^!;-i-@hCOiOt6CuDNS*T`y!yhaM!a>O@!)i?|L)j!Sal#4A-Y z<_4t2naD`L_hd=&Iu0zUZl;LMm9#Mm2neu!Frop`F@ZR!==c%I3=JpLangb~ldk3S zSM?_}nCL3iKOkw|L~0IVg}MU1itL2`NA2@!n5l~-V{Qfs(f-QHOk_k&nQ*)q>d$a8 zSz0{&4ck+Kdp=4K3h$THMnbCp>-qq&nYNgFgoq3yBc#l?sm=3kHr63ERW&VjIo8Gc zJBeioae>_l{iF@!B-d`x(R5>BQ;-1uBuL{(<)>XSH(!tCmMU>I(EC>ti#uxe3CzHsw+K)2SJ;TxzZ@i9-#+6dn1z)7Ye z+lRo)e;Of3c^KDF5kFD3*MM8Lwe9lq)Qh4m$bu4#Ki@|#3if)h9RCm zC3@ASqX`v?OwlmGpJFFmNeWQz1A2}0g}YS>)qI;A`O#>)c;n&nu!5yJ_CUE*LMfRE zvMVga$If*AU0Jclo_W51RIdsIMByVp(gCn^l9KVvB$A^xTknHm*7oNI#{b_mQQY8d zWb(joZ#PLUbyRlN{`P!w6)KimyHR_qRU$)sY{eMyRt5)wb0Lj!Fz_5J0wH!xvoPprx z;+a0(TM5JxQEz-~lp~2JKpV`%6!*kS`DVoN0}eJ)CV!Hbgf4v?Hxy{;f!7iwRaC-A ziC#`lT;=|-w)j6CfPb(42iJ4hdpU}&Ayvad(WHNP>1ok9vkbqfB2?%;2D`zqawoz{ zQyBDuzk14$6v(2IVIwtYb9<7+!5T<0<5PU2f%67#==2qfRv!uAD^QcDqEQC8JPo8z zyC(gSf_0H`$uS#~r9`Nin?^n~b{PN18dq!(1o%o2tCC(Q2TXg1uD2^CgdkOZoAvw` zpFXRUF_%OtI6uMs8R_t{zIOgTa7e9ShJ$trlObiCGBhA=gli8dir80TDAgyS)ufVl zb?JY}d4X9Wqje|?H?%>HJzX-NLnI6w35r>9~WZThD9joJzk%otNZcMmRp@&KWR;BWB6E^c% zBEAN^0R*HoibQD@aI_M`6@Q6tKA<-RGr%LpcTgD}G<+!aE!&J1nctNxHkVw3WfJuFA5Id@}y# zs%No^EI|J@z14U5rCjjKg07ySrh%>o}(tJC`+g`?L~u? zP^3Rs8PUAUi|diU^(DKLqK$6Kov}kbpd>x0>tJBu7YS z$H0(w@7g?F_}(K~F2uJNfWInmTb4Oz`NC%n6)$vfv%;;_I#$V&^YC93o>9p(9bQEv zQ;~LuA(kPkp_*M$esNhvF-yC^Ft#PuqSH!rTPYAk0_;H)-mU#-U+%oGN4d{!M_&1* z=d*LTb$J7|WQ4T0KhHJ;O4Q@BJ2Y;$yyaMl6z!;Ot<}}p!!;tPr%zYm#fbkqB$O|l z7~wgmN0CRMM7*Z1YAedwgN8fZ6z#^>jv*H_pEuX1Q*I}p&u?kHL&NDh+7GXtjO6K0 zPmCVvLe*Xsn$t;xC*_qRj%FvP%xQ<^UYDJmiS19%hqJ{z+h6~))3irI@7CPB^d-f< zOY;{DXKdAQ#gY77=Hr{2U0s`4oSRV5vQ`{^u==A;vr&;ugB3hvO3kwo42Ue_MKZz3 zB^3n&%$S=7n47--PQ+rT>a8FF{*d17m}EID|Gph|SJ4DS4a3UAQgrG# zs0>n2=MPSpMnmjY%~(3_NdO`bLkBD6CmhuWd`FvQ-lEo`_HQT5*#(Rb2^oY!6fp`< zsz)<6V$g`8Mh2iGDN>R)WV0(_MyHUr^5y?PK3{`nN;VOcbUjX7|wBwJ({UgR#Sj;Mkw(3 zipT;~eaWE>MQ96wvvF$!jeEv>YIF zVtX%1g_0Yy)Q6~NDEd{Yt=CkoIKCsVprBwhg=f9i9e02UE*#P6o6!V4>Z6&Bk}WR> zUO+Hbh#Pm{qCTA7UjX$ZN12Kq`n8<L(0O+hY*XRdVb?ihf_8^X@u-rKKOo$SBE{C^S?V#fKza%u>HO$R2-YqRr1fB75g z;bGAg8c%;XS7YGeiN8~VAHR`LXGr2$noF650`2Bx?n zfcyp66JsZ$s(1c!sNz9;_z~*#ZJCeY1>w#lm(?g)@BmeBUyWBI`fB) zBRa7!q9TWfbsD@o2N$Xge3QV79p0=Gmel}3=!J7BUZWD`j0tzK0TBgc137!OED$bAcCS6AASyHt z6fF^Y9gGp9TxjC%ulb&0TI#nzkzCh+%$53$C?@ew6*gSYU!qc6g^T=z)21<&s)m_C z@6_XqRV$7R;ckEhS$_{xagBeNzcb{pe;*(g=U^DExU9krQ3& zlIa|6f1}LRlzr^#g@lrp#$jXYi=?Dxo+k3qG}HISw1~qI<9vGnrEt)*#R?(#KMMkB z_j)>Y7xNDJ&P}nf_d}wG!uM-#y6f3SkD?L5_&z@(WrcvEW>NMfW8M{V7b}{F6}i*k z!LaG+#pdM`Er)}}1T=;}s^N_}W~V4!3ngBS_RBIRl0P2A zI_SOFy|z6J9g2g?1T7>h?ejQ|ATFCfAidR*dM%gJF6W!`aF$rWVge%=D*SdaJD7R< zH|DwvHDBYaY(GOQ?oW0x$9{`=ECWg7ml>Wdr&WlDDmXMxuR zS@A0HK_jL|FfJ8c`pI?Uv;!xaTK1xW^!Q)}KdEPB5F?InrT)!9M43O*R@Zl-IJL{zq~=D4(%LzlI8|EmJZ2Oo%2C3hN6C!=OB zswk@b;35Jv$l~g}#y@`SKi*Ihi*kR;^DtklgC>_s7QEb zxuzgEKXrBU@7Y!AKPkW`buuD%y7j}}1*v_al6JVIj6L!4w%VVO=Tz(Av1eQMn_%v5 z(tzIqtA*Z9f}YUnD~J&9&2@6A6T=MZ%WfN}d+oHOvTh~w_7aljvA=W)wd`yI{4B!E zWp58B^JaAJma?26d&5?K(+Ej!9z`!}h5oVK70-GrN$I6EKhk77mi*p@rIo2=o{75b z?CSdR((3G@GBr@5uf2#4(7ziSy8?5ftL64?)cF8g5_y3emh?S1;Ny%5o8>j#=QspW z?x_r2mZ|+X#8|vMI0n63h~_`jv?R-#lzQj01;KhVkNJq(w20u{=5U7t0lnmI;J9LP62v93m=XG#io?h zD7l|F{NyjoY{1T#G;p5877RYN^#eO$B}a{#*t*FHWhvtYc5j_8WN0mHR$5Q51*b`l zjisiXw7KZrZANsxdU}*<{iEsRciVRiZOEjst1(+%R0cwUc8TvzpEY&bajgG*_+Q^; z_Wn83>4iKIe{=FOQt$a>rAyt&uQa=hZ;50cVzQi8PEb~VJAc@xC09*)>UDDJ?^Ws0 zy7u6=AojBMlh08R67d<3r#~e^T&NBo4;Q*WUAoIuj4mp@|Af`{_;eA^h*9q8c6S+Q zM$QY?Iqiminfwwmt9(MZP5Kb~a%0nSy-=I(-Ov`W1~RV^SK>FlCBw zbm=Qyh@%Eb!2fIXv~E*Lg6MK_v~n^~)ADgT?OperdU1Ad8*wMbicntlQXvL@&zo*A z%#@+@&dLu!|!5ys%z5VMcRNQYA z5?;%j3J8*BLsp7E?0`YQb>Slc4h}Nx2)wsB7a$I@;-ps9t3ZuH;h1QW&BPhTrONq& z6i+YMyQ~PI*}+01GH_GU)daUJTURDuqlaqvuADODI1tdoMy{8oOqJWbL-+J7sm% z&6@ZgGDm`4ObF;RxUAG>3%DkPYtg5rF6mm2r_E;@DHoPbt1ADm>xwuU9v&8kIQlh} zvFJSsn?mgVQzSWb{G z4UvQ{aVOA8w7)!048?~s>XG~0dP@5+lzpat9?_n=BTv_Tczp#r`^MLc2S98d=VsTd zYiO42oyGh!huJKv{PYH&T&K|)Awp#M)x93rNchMwy&arDZsl%2&+qs)$$+l|bj`*7 z)(OsQp5pa~urUzbu58q`%`GMT9eU^RR9{~UQBhT!pWE3ndDk+$&u>Oq5(lK3qKTB*V4H)(#Yzu8Pk_JiBmoYH| z@U%Tg#6Mo5#26TDDXH(r#QTDdu0rJ$Cr#kYAuV?xUXBSjqo1}P3pn%nYE~?q##R**2Z3;( z9~VAPl`>V5;u#!zgNTqrG$b|T=$<=j@$p>aqViU7ni@>`J$nO^fV*pI+Hg`Qu4mQ4 z8Zo^40bW26KSES$MCOF(Bt0qhl$bn3;rsFak;U0DjEJF;q5wLiRAtb(YH3N6ED|3R z^DAYv9X(fp<#y9eMi~&>K*fAvw-8hy_4Z9-2T_6vDKP(|t#OG6AbMwTLXQ15ZaDql zzSVJ<&KTx+Un*W=H1R_NT%OV=(xYYP^+K=i(g0?Sxmap6BiswE=`gh5$2lv7?|D4k zMk|x*P6u6!z*dW_jqv~UymfXjk2fYcWsDhRNAu<0R~Ij4yLGC4^*GB%RWqq3b!!${ zKB=|sW4yDwL^fREb4RB9B!Pk0k*K|-$4;Mfw-}A69ez^A7bfwf9e$g+Sq+Aql^-&G zvl&JguI0HI%9mvnUb$P{kE=g;Py0Ggnvocp1Ri4#OIq z^a&F5-86O9bcT2aJ)d@LZ`OR42Fu`NY1WuSi3+o_kqI$0EiUGRP(_oK2gV3`82TK~ z9Bv{WS|s{O@+wL?F)lW9g3ND2%-CVfp zI5WBP46D}F?YS*j;PS+!6XClUWTc&6d~68v2u02M$W6bXl$rWmR1{B*i7NC2@gh96 zYB`F?(SDUTGRfLMxC*{eC9Gzp39~V8d~{;!69o6lsje3 zr%P2PvRoiUXMo$&xqSg3dkQbIu|QoHnYNB)^lq`Yznm}^pEeoIp0syw zvk`^MfD(bdT;cC@9J6wejLVU$VOQR1NKGvE&wk1J)3Y*Sa{!g-%4o1K{8^mifH(`kP_QL7Oe?zlXd1Iia09q3tV0I2=QM87mzV z{F#=_-T&IQ02IvZZac|GfiG3&xn&bp!;gL1Q{-t!dKzsFm!p+?tT;|PR_4;nHEf$N zn`ixMEW+pAdXdaNw!4|xH@HY~OpHym3XRpw)y?c)HO0FMHbU+8?_eSS+uWP=Uh1uR zIa!~HD3#??bf12kg5{!CPOv#^EXf~ zBkP|$)f5qF1aiT_A}W3i`=AK}cyKk;M%!irB%(6_{T3@zoJg#LaBTWIv?b{S~8eyi8}jt8W|oQq;A5fDXmP;C~9r}RU^6%;KU znR1}GDH2r0I5PC-t^!oiK{xMV12HhrwA!6lmu4;1N`L7Pg;Q@(XHhB9<8%P_1mC6( zEudTi2#|u|t(u~13q^d9Tb}wAd*CM9xIMQH4u%g_A28rV5RH&wz(rYTNMf_PcV9{P ztj3Vdwx*qeyBw9M7>k|0HB~5nz4crpd-o3m_>EzSl<8YO0+ng~)5iSEVR-z}JlrAN zjfn2UZf`!zPX1wx)ku@Jk#bulyPj4G^G_D=^?Y*RQMhtxf^U<2*eBA%I+vZPkYh@| zIkeJ%n)Vj{I(z8zP+}mtw$xHI=~P_J?LyAoQ#&)TvlvgbA%EN)?>|c^FO$iF^4n^m z)U1BC`%|>t4@gAbHE@>f$e~(@I(iS-6-D3sG``Rm~h8 z_Lj4*ma1Cj@>$=8^EW>1)3ZbtsxUT)!X}Sx1oyxr^8sfx~as?)y;(D!AigEZ$`8lXijnDtnu~^KeYO|ya?*->#RnKmP zMk<@f0cY*}>7d^t46y0_m`J~Yl|cXIum8Xa1t@7S_7}N^g_=kT)$jt`0@OS1hO4^i zKnN7NYdyPhIG7S$n~RGGx=|_;o;YlB?mlW=&(1vuXI@Dmm@Nv57gfY(LS29}LV(Yk zl;V;JmM;IrR}lvIK+S)H-f|_v)zA-rMcVR@m=9KdzcJCxAKT-;cCMR&;17Nyss8$t z{l_8`QUCgzP=Iscs;to}F|wW5<4Q!)O_lTcc{U z(;8E!$a7lOZU`r|We~9|_yqV<{JS!VBf7-jwRB~5LrV3$j!5eR{{%+U z8^4u011m6J{G9%6Aea*zJYdDaMp(m~!t=*Uz202;14qy2_iOP-wtV5H*aISkQLv37 zNTB4ne#0d>)6l^Y)2e$;Cs|Zp5 z5u`@#(kS<;+mNGHykt7<+p3Rz%Ryi~_O_owhKYNRnqz4fG#h&KDEwVFa)e)`DOQ&H4nb~GSwc0jg)Eu-`5L*;GiDnhtof?S8uEYs z<%ULT+tZi#u^At%8+Of5No*lep)La?_q6`vWE2WII*qVMvJZMtAHR0bcLxPHjT4Bh zEy&0h?a%y|mJh>{9kCEfSjqDuC^4|zT@`784=$0?PwoJ{Jj2nv+t$)+B_hyz6uw-l zwHzpa7RGw84LTYgpq~Mb;OAq+`1p4UcXc&*{qs3Thf`1}QrIN__ObJ_ZGdZ*e49&( zGbFZzGkqnANMlD`=UB6qn*8d?!xAF2_V!S$lCLHGt-qtChXE8UfPdcwF^w3wUp@{x8>8y4sC!U*P9X zh?uUf{&uUat0R(i#R{*AI4AokP(I<`5>_oo9ey#E*WZJ8J{d3n<5TfgF81gH@Ang< zWv-p3s^V>P96^0I#OJgA%SLO)h91@&!$iLD<;T}2T7S&2w;*WyGj!C;Lvrb_Y)bJ} zi3|%qc@aKXJ&76BkscSjk0L9Xiz?;Yw!J#IFs^qOY~Jw!)=w0{>DxA&IDhg8)pkJx zo617MJ~MH*sG5!XyTdGi5)2nCpYOo?pE?OVyh8Rx1k}OcuUo9f07F8-ml?(S@m#;M z0Y1GmBUaV~E1Dq8goA*OsZNFI!p&%VYYYD4xgq70DnS&=!LRs!zn$O*V68lAGMQY{ zwbgPvb^^E+x#+<3Tdo3lFtME(Fy9(U-2+v(F9^aU3VY!k;?Upo%9T!j=rG7&?;ym{ zFPaTu#>??W$;pkg`|h6X(;xwF2H=>0K;L3u-cifm zD%3>41ky)QLyeK@F*7zc&NHL=M8^OH<${^9r1evb?V~k6;mbxZa~fppm-p%0b!ae= zNoIY#fOmA1a~;^N)#?&cbj|oFj*5pJ&?nxL5!KclM1zCg%qI}myS=pH+}cZ_I;i4a zD@topWzK}IL$gyvD^MF$tSWVE>Mup}EB!+OiZf+^uZhwH2}o_AgYlj#TP7op!xDsY z+UmG@iLw3=De5PNYcJJQ_@8cMWd)OWvWqq1?Hc{t+uJz-AA{c0L4Pr%ypx32(!aWF zy`jpURNKxCP;DwOLMZ%r=c8NP(Fl{?>(_V^Y9J04GtQTlXkTHY50i zkp*tBFX>B>V7mC?`hSC-#!7pto`deJa;| zJI#)Vo<+w4gS+Al^#;lTJ-OO3e^q!zuCR{I!(h94MUi)q4n|44&$NDVV)@IyP2!)D zDxdDRO1=S!d(Mx3`217jD(D2ql>^DnHw8LZxfy)%MD-lETOT8LZb-jsm{kJHCn zSjt%AesA4Fs>|X(a}s7yQy!gru?)wMJ(e~B+C6WC?psN;GxF}={1Bc0#?Id zTBoKGUuHUg#C*WJi5!L<3J>T#a>3^h+USudj$cO9u<82@su`ikQWW^<<2)&&?%7|< zRD7F!>BK<@c~L6d%1nt!y>NxvaLUo*Nr*Yp5!svrI3R=VyxI-Q`sHI=f)?H4!JMkU zaY#ZbZ5({ z7~s+rX+9RuYWkK)btN+Na0J9L;!G?`&A;)&rAg6!llYU}2`Tu1!*BTVN7Zs}J(#XX zKj??CI0Xq=_$S}iuB4k9=!-KG1`-x%xmuF(5*3w$N$} zNZY+Dv{*r{?fGeFo_y{8@r4&4QYF`fG)EF|2KvfkH1EfuitNVAEmzuMlr5? zp*ut!M6Q=TpWh5YZKAsB^-7=5yNB-9-&H(sE4fF>F z5X}Z`E|}rlr)i9MdI~`sl^1PvL2gHWQ!eDiZ64)6Gq7fr2p&g*XX49mU!ezwgWOYP z@|XEGb=t2+;~p5Z0!@t0ZMx11K2w6-0WJ#lZT4?ndp_P?(4qPuzmIqDpc=R*G@+H8ThKW&fF4nXc{wCif1b@hhtXMJ8&f zj$dF#6L}QFj>2opV>hxd7VxDPBw6o38k`O200*#GZ#ldiswG$R{)Ov1{(?A3xqxrS z2EId(L)4{a@katP|MA53rqc&-{tis-PyLWPd5i>nItYFq-BLW6pifn?x9N|gGQUzI zLFOBiM)%LIf2i>;7Oafv$#RJ4Spo-5l@7RA6nrT^&f6@Zq6Y&g$yr(i7cX#c?krX#jFo8x{ z3@ZVo))f}EEvOUIBP${RXm&aB{n}w`;BIdS=sBj4XF?EW5SprzoFuZr#qqyd;jX^w zAhseCB5E)I2`O0nP?+}zUFm-uFOU^BD}E5gOHpr&@|0@TKh~j1$u@ow6`jjw zW2b+k2m|i(8=9^JWQ2IQ*holU7B{PwQt_mUyZ3FiD55)Ijsa?c8T$`XyzF6fT;v5D zs*rCI4ukAusTGxMh2@pDW|H4sl$D%gRJ(fB5=?b@JuaJV+F$#TsQ;&Je4~4A=eC`C ziEP4ZCyP3y%^B+Tq0{{n`(kF(dU-wQA4$G`v)^@3{XURBs?k@I=rG_(IMLdZ#f zD*+vSVkEiy?f%O4dlz92o}2TwLCHG>L2ui~ zV6o=(f9Yz?P&9_2zW-Fs(x?T@Ro z&|&ZQonK-9T|jFi^)!geNf^}R@UBjY?SwpN9)ceh@*{d)Uej9Ig>_yoLebLOR<3vK z*7cpZcHWQAmV35YK4eFCV^38FhVir!=skG4L;Zs>SX9YNcJ&S~1UZ!KbE?mwvMA)O zPfhJzgL<*>>9^Y);ANMGBZW1uo7})LAv^ci#p$c^Rj;iZ5Bav+j;YYQbobLXYy};4 z*WHn>VYA3qr_-HfGx;`$)9Ypz)>e-yYo-1 zLXQWGkv^|O*im{d&pi-U;ftGL1+SMS2feoE6*E@BtBWfI@9Pz#bb+^hGgcvV1+UxV z?x=L3tBHOE!SlOMr*9jD?}a>1H!<|wk6VG`^wBUz+trSskJqlBu<+H!`nv08x6Atd z;niI^m6VP|nMW5Ly!ZKkh^h9zOThYOw0^B`ZY}DhWM8Gc2u|bXX>x+ttS&?pWtPT= z=O)Xyj^yB7@j1fFF@a*gXR{X!&~kD}Q^jjBaR;ko;t}CC(QZtjOwE|u=bJU0Q+qFD9s z72fcJVqqPCDH8;4nx88ao;J4 zd2CjGcj_Bbh$!*`t!JNsG#4n;mwKv@D@V+YE+1S> zTd+t9WeAk~ixJ6%K4W$>V>XXV=UTG0^}I9v39s$-5amtd|9`s6o>D0MD!maQ`gC1P zZ?rAM^X1Rl=GU{5HmhET`mzUBKOZx9uLJsK0+825qdh7+oM`47g-4rsM%#E+Yd=kY zNx^Mr<+S!`x>Nk)LdkP065-%e=Ec&_op`d4XtJIN{Wt1(JX$fHqj9&_fB}8lty=Y% zI`NqLcYe8gFjk1OT&A)o_s5K7-X(+0fSbn|G%AE;lO$Cs3JXLomT}D+hrC1fs4~36 zr#l{tBxMasFJk3wb-BM|74Uv&W`&Ia9#A{zQY0e;SiW`+U#&K#GL!@h%)QHwFvEBv zTe9(VpS*bt*l8D3yI++395tSP`Mp;ElO~&9`*fxK%|F#*5I+Q4A;F9Z zFTbNZ+r&InHCfWKDq_xrb#CwZU+rSQC51yGk&ME8B566JW(lKq38SxoZn{qu%blaw z8kjUD-_k*0ZkNJ=2w9;9FYOq_$EjXBqh;rvu_+EYS-gmNA93P!l^n?GbCvui`U$*@ z;I_^0i59i}V}tl3kn>>l(0#X-Ms`xbBm)|}?O7J5B}}N|GBR^IOlxa;5i2$N8SjRq z77NaZvm3-g{rl0Mwg(0oVE3X&0>>~3fB90dK6^n_t)(bWnI1qS>5HnRBvzA@42WUi zan!iwrJS68RgZ=}%UX>uaJ9n=1-u0?e_K z1vQ$r|8q3?GTY`T_5|PrH=@#MQ0$0Y29UHW#YU%C*CZziB#6-TY}$egXO3>@=;$=9 z)RINVFzs{g2@|Qszisj|2_+6@eXIa6v{Nvaaj~*|T8!D6rEPR{PMs-I9)O3VOGVhA zjX^R7!7B9VpHI4C{gvvJ$m}Ap3K@++Wh5hToU)j9Yf(!ArPX8L86B=_FOlWG)<2AbDjKiZY6#_1N%qDW%8Zc%t>gzm(k}E=tMEU-=`-idka+gxi z%A@f+JcUH;GxA#@epTC=Pj@}nx00t{9_lgHUbdQTSoCh@?K?kt-#tXy2tD=eL==jT zdKO)%7hQPPZOi>}64GsrGT{Gv#H&Q$k;i*s<^2q9dJ>O0G5+=7m~~*>Vm+D7d#c9N zYa!oTl!@x0Pbu%j`xVWNMyWa}M-X`$eza1Y+3E~jWx}xN%rWas)osVI?8LEbN7ap( z?j*1X;|7{_oxJB`X`{`&@HU=pgBHfBg=A z?$t7Ez@!gqdEOmJ?iK~`k5!p`uIGhE!dyP9nW!ex4re8|@K$!&8+K2txahoDu$iXCJ{mn$w(OJsr=uFhf*ir^@e zjx6&|>O-$UqeR{eLkWwlXbh_mJ6;9!mVXPY<$NL$hdA*#^!qgtsYLNI%RETK(2s|< z5-{J^mn>{K&Hl7BU#T3$Bu`0Bx4die8Vt^0r%3!CU?>9*2zOoM_=^UEk~5El#Bt6U zIZhRA$9B`l?@PS_sz)(jLb!wxCcG|!$>Fj{p3SP)L<%gd(qCfg^fC{x=^EIfsy96w2VASabtXf?^fB-R&I1$nh+=6tYiX>x> z#*B=OjZS|PTquKi;pgz$+1kZCNXT$rKTZ2MM3l+2xV9*!RCbyK?`aet5K>h3_$8A{-vTc^adbPJ)0G#>TML9VD+#~OI-X5Q|(HBE0@>)qH$;cIdo zpTQKy|BwLRNqM4(H$`+_*Z=u8!4cj&HQAw=6Q9-(53RqQU#={q8DGhj81{88nq`u6 z$3`4hh7Kid%gn??xXJ|!Q+;9?80=T6q5XVQ5@W0TM~F3)k0FScHo{MUGE8$LkbE#9}_xd2QjO)jbS7N!!(4J3bV6x;f!I`w0@_gH~p1CVC48e<;7oXRw zGoRiF~UxG_#4Ly{KrqAw1b)9 zVh{H>E#GNejH`@-u+c7%DWss$*#Er*+w_*5`YI{fdqqlzV~RCt|Bk>sDsg4Sfn|>G z(^H9-EtRel{j6tO_U-IdC`8x|!+iUOvqeor=iKFJT-BxXg9L>&lh5URJ-Xc8Y2?4b#`Pw8yqNaO3YKo|>1P#(?C-;ETb|Hov-ic$7qc zi=y#^72TLrQ<*ST<9rSKsh>zfsoj58$buZ{i!d2$IO25+Ig5^2s)sE(m#-y4@xX=A zMK$_##dA58yrU8+otQ`9!&xq&d^1m1Lu-Y*g^y8|`i3Poo;i87=Jw;KlZC-+ov@9X z-}0vKMg0_+fDkyUVD&;ZX=B5b?!U2#%*s-fx%Notky|JWl|qT5)*J-0c*SIjaLV-W z`G@8Y<6!8j5q5uUWOkcR{=j8Z#z0gCLTPfKcmlcemhm!;009YgNuys}gbAG1~4v!X&rBzT1SD#pG0SulvsO0jRLcirjxYDeGHb?9=hXUxVcv z2>Av{^F{aDvaTJHKRJrM6)KgaU#dTAsig1jPWhUE)8;SJ1;CuOIS5OjMmbw@DC z9_cZh{^2+FptYy8L%&M*y!@(o;>~oKp3}=IX%*4%NNc)9bs9CF`g=8VgFi@_7({s& z!!4>yQL05%u9H>9C#mNW-S%qThe*$)q$ZY@TiV*O0^=6aa)|o#1z|3avnFaf?nZV7 zEx&*`VtS6;z&Z_ETtP;971=aW*2B4Cdpj{*qw#t6rd+7yc~dKr_4^q;+g$(TCmEc( zh))7`6q|)^chi!B<*BkS!~SmRf;tb|#aem-MD@jZ%`S{5vGe?DYGdp7mmQ1#ZBLQ; ztM{JcLw6o!J_3)Ov9;5)art+7g6y#_KT^yfvd{OoB?p~LUdmtONlAb*w?a+g3;qAZ4LIvuM{(G8Cz=AVzVI8~C$gcLNq(rO;z3~=SfW9K{2TLSBLgH)jS zFfeb|(&ArL1fVPnxc$kL`3RE~6|@Ks4ZmEqrGMS6vxf0^VCZZFvLMy1bgz1{+Mqn+ zjM?$5F{27IhY93S$XgNsJ-6N$r~Aiza*BEpsuu{wVbf;2|7T!9@|@pL`Fx@0-Cki< zkSS1FwebFMNLJNphVIy6{0MZpqv0yAJ7O!=`Tx;$PJxv*(Yo!J-LccL?R1=uZCf4N zwr$(C?PSNcZJTHR=iK|cU-rXVwW?~)Z;ny@btF{N-CXBtetq)vRNVe{m&N6wksiMJ z>-6I*I{{9RE2ILue7|0SMcwSJQK)N(qFyrzJp#6^*MvE}3NmB<;FiNz3%QNI7!{;H zw-=?}5t239w|FL$n-PP?pf-&{OT}3JYhgp@MrHa$&O()ILjJ5t5@UMXYr89|iWVFh zsaCjTe#oFsp$yy`*c$|5QK%%uC7sTUjn$U1*6sb(02bC2|sgK!H+Eh(hj^1(;J5xi~%lce@H&X6tC~ z>F%7OL{=DU2Tv6p7*mK$T(4kB&*Stp-^2aBrdT42kNwBNwXlGZeW+x)%oQ0%l4_su z%wT>+3o<3<0UUirYK5qmv~absVO>fi%KtApkSH96d730hvn%-zG(creLDli>W>B!i z_~}t)lV_bn4lBiE_kaVOl1xQEzMEuzbxEz>#Qk`i&-J>e^t|}2iTc0(%!l8{8UeZH z%l36ujspb8?{^QJ7qi2+7V7J+r#qu%-jus7nq}33N!qO!6kBiPS&0sb7t}J_b)o9!J+X*Ey!*m$XYQ z|7=apnqsDn`IvCtPe7jMBW`Q7M_<+pNOgHtTRzsJ*=37=Z;Y*|3w|8M2vTp;emu-h zoO)f&cl=)FOVxVyTpl}C^zp8>>_m0Rn|808_Nv{oZD+UY=6PI^1MJxzzHY9|AS~tJ zo4W6hE_gTuOk=D}K?~w16yO~P^|^PG3~h~X*~=h0i3qpq>GLG#ck!v*hRWUw1b^{z zy>pi)Hh*!f4IhhHp#7^HD`~ll;|Hm`_Gs5T-oL4Q!PaSQ(1Q+zpmVxZ)mIeQ2e)gIOv* z4vL$G$Y`AJx=r9sX9V5J~}Mxe&KrnE7vi=^}Xt0gP)FN zS~git5l%bGf^KXosi6FmaVsj z*mLjJRS4Z=79Ypbe6nV$m5l5X$*_giuOg)}7WG6R;qZ##^rtyP)W~_Q+N158DC8WY z#Uo^r0Hq2AsU9>D)(A?i)vtn8jjm7+7e)i%q4B;9=chFyZ(i>-+Qy#EfXrF(xr; zQ)yt+{0R{aeYHT5x*EC3+4+J1M1VqrHmxa?8xS>1UWA3AJ-ff!Br_NZAj}yW>1{;W zLX@->v=(biC(%uYc5x&?A*cxBscBGP+y$#;4ZSIibk*piz)|t4rE#3r7|mJgoC|Fgj6i1ey`YeNE! zbXV=Sn`0g|J#33@+oV4A6uV?RzvUFBhR*P)#k`xkPoAa! z(W@Hs##?h49^n}TWffR?hoatL)4%;xIdMqk(kZC)h<05*uZ*HsT<($5dWLm>%n1Bh zv!~kQ+i@>^wpJqU!V}i@$yJE&&THJ*U_q5S^W!b^WVd$IQ=h`BZQ6-a z&waMtbe!{T9NpJk>RmU-`aL=Fmo4G>eh9TLU$%Q`6026Q_vP1JQqA%Ai{-g3ij!{0 zO;$*Gw_C-10Y(P>RdZA_3dTC?GrR|W+F1Kaj$Wrlx~ax!1pDpMN&fV^Z&n(R&zD z4 z*Pi;(QAuE&tolkwQ=@~jIz4Wd<`?e5;dL0A_mUX9-l!~Y_Kaw%Gb3KfN}T2hWu zYC;Fb@NDTo0#qA3V*IMPzme?SfN-ol|J6D9?_0b+0FXwH@*TpWMmNEIa_UtUOn{6e6Xpq2v% zJ*1}qv_sDSTRc?;CDbfY^>4ocN3G0WG#(w5ihktS#KVb@E}9Fiz2j)Z`c*Py%=$-E_2QLnX18Y@v%;?Qu28_UPj*u`me@K-y|>esu=b zf7kBG-ynLg)2)69boN_6KaP7IpwHTa8|%KT4?nki7&p7N3Aqe_y1V!rbKyH?;kx(6 zMnb|Tqw>SWtGAx(oEJ;G?_=_4PdoeFdqXH*p3dW}uqzWP=4%zk=>#@jk@Y)nr+em7 zE}g;6SEC17;M?qz*7~Nrx5jQ~vDIJY1=ev!I&rN-viZe*I(2O8;y6M0h$8Go7@X|D`x6Biv`3>(4cF^!5JssPhZ7{qcxMtt;!$V$XZ9M#htR|y= z=E#9{dwP?Z93}YNW+YIve4^t0&KH#2&C`y@9pNmSP|ZB z-0#jbJiy8h)UCB9~Mi?VUI zI`SuhlrLC1noP_qi9u_mL9*?P0f?-Pdumf^V03k;GRq23EG-H zYcCX+^=m`#`(JNQ%f#OA9vj*C_0N!_4N>j6hRjmQ#u;*sxam9M9C?H6T8Cd}W+mqJ*}QDe^Qt*S zd`2(CXkVI7E;HCK*uYpw4{+_*@OeMaO#GOuu3)0wqMQw@JH$G=dW)P*?!Qe2#;!Bh zE?lcp!vw9wC7#HNUsyzv$d}SGkw=W>TP(Gt`-N>wS4t->*lIqtSAx0h@la(uMOzKM&%2EgPIkcQ3 zCaK~HFpi|yDyWy>bmA(M0jFjf1%Kgf2$3vUumk#fjq6))n25rrkK};u;h(N>xdRxm zh4yJugds-t>OjZF`0)+6R>wRrYKD=6c^u}Xx~wvqgbW*1x>$joaZXh(@hBoKuC6bk zkuOE)+)8VfCO%;J$;H`{tcqsw0E-@Sb@#{Oj4DB4Z?o>{pwYEJT(Ah~02U+$Au^$y z6}dnh;%RJ5rn-#w`1X$$9mZ1N)PEz%WEiLN$-@Q%g4j{PkpMx$fc8)p}>1k%}K4atJFgJA~2E}6ewa9HY@_f%G?NnqQ^vphy99x z7UjGW$Xl^&9x|}|gDVmcJ@T(c-D~-G%eM2eRg1Mwj|e?VdLmJmz)o$cl?ZEWwD2&~ z%`7*p#&`)S=3yC|bn!B(MZElMhP^@;)UolF&vgxm&Hn}cbD%Q+ecQDM5q*66vmCuG zO1XwA1!#SH9|p8+t!;9dAWc)6g|IGwX}m>d&r%Q3AGv-1;ri&C>+8wlc`GS0yw2o( zx=K^D$>DyxIvwiC;&|Hf1Mn>z@?6GlO8@i-#=7NXzWDcXrYc^cL$>kCeblUaTj3p} zeGlb};k^jl>vBdm-?(?#j6e*a55`{}V`~uEdLP^-(pAMXbcw7zK`=mHalKLETWMuc znz_ZpTw`&)`N)qzI8LG2>oHv38_^vY!g$j7yKB}zhXnu$4V1FK#XR5i`VHSRWiMQK z+gg4&eprlkECbkZf7(nD*Wi`iCUJTTIRK`8dwpf&+R0-`r}Ltuz1Hwr-Qgym z!cdW8BGfq=>X}%3h)nok&3IVRyq44uu{{;pGr#pw5`2bGF4WkM6jbT;S1{IV_qpNWs+Th1a{6@35#a z5mBK)n~lzYUeIh*R7Q_yP8C-gJ=SPpkpV$w@P*V$ZCd3D5QuktvpgC&}+4BOw{;==!yz zDiA+yGj=4rRT6vm(*}GSjbsI^#Yo4T$X-PBUha3Z6D9RNj@dJ+_ax$?8Kv!1-$ zhrn+ZSpy(fo|>4rUx2MLVx=An1+5y{0hpL6nlYPo%R~oB=`&PtbIgzZdypW;XUNhml)it&$}9(V2g8DZ;vRnrf3a+IUR{c!;pB9ETp z^LG7q82Q!J>2vmYRh$wYKOHWHz)+xT6v&6>@LqAyM2~dsiSBSNnY!KO*LE)bplzdn z?GEPh4%fQk-!Z=fQaDB5-jp{q6SE{A9X`sNEG7fR2BOilyIS;|W;*Ah8=S zXbgQf(?+)vb?cE;m=}dTB=fxx7 z*L-{|CfE3EKW%De;qxee_tL%lp?_JzeaqDx-Sb7&RA#ETc{(131jS@qxBW5euAP2w zN#RnZ!`E%|G&mevO}d`;zCC&nh;d+v>5#K%HR-sX1cbkrXF_FO6sSDOGrGg{93iRs zxW9}qgqDQuBFxHR1T`Y0Q>n<{dpTL$Bb9iG&}i&9(7~)A)QQC;^k)N?wemxiSeD8J zaBX|vJ5SL1^lm?)?>4jBwRBjF(e3IjNe*@mPJudd%5i;NQx(&B;xE@X&uNB3Q6f;j8 zGG{!{N;@VW24uEo$0CnYegT`@Xdk9=1;HRR5U?0pd5MA<3Z^7bgkD%jD!2$Ty#l+8 zWgEZKbS{-`w|DLHSjPD|A>cUkB=(1}VVk()e?jH)-_lGoQi(1DWXIVu+|r zh|jN(?A!{ceC)j?Go#!fDF9=BKmLBO(Ln`}GzmoU z7hv?5;;7HyhRSCX?Pu~b*1}EYkTDI_6gABl03gkt))XdQCl2U-0gu_rMSl(9@IM6c z_j7*W?v5Qg0tGv?Crz0I+LJBWa8w|-5P2~KMltN#JaLnSOl+~F@Y4E85X(w2aV;@# z%pcR8ES9Qu8wg2guzv>-2aApf$EYFn7mm_2Dl{*tUcqyzAmrKS z<@wp?s_egl8xSn^=PQry1;6tV1(g1K|NM(?nQ(XcY>m~(H2wMeCS^5`gZR5P+*3f7 z%X0tXnR1HlsGEWP?qIh}^4(d7lf}#0`fOt2<#iQs??FaDe}%=zzVOQLajDqUhTzud z;=m|7JCHq8gLYEm{|A z^sd}toJJx}xO9fM9+|u!;Zl|LYB221KiYOlJx3*9qNaBRvk9%e{X1X(jvc*o$ba)a zU2%1XF>B*?**Jy*+LPsVQ?S{u4wcVW-NV}e!dG3dc#*4jZxU3aYvvt4ZlCswUm z0<7yZqzMC0c!^2Zy$>@TzW@uewcmy+ zy180+z1{J2CLaQ2etranNSCnCy8W18^&fo5tMASObN+mYQ3<0pnZ3G~_L{H)|48NTfVv@!wU_3{Z%W5(Za$(V&DV(0w;8T4vz=f#*8Vy z5;O@7$`$;XfQKUh6_!6!iV$5Q5LAdP4ir5|fG}hL)VmM2O-Y|6UGEZD*2^F_uzg`c z$1oKph}XyQZ`b1K>ii5i!37DMiYADKL8U5%L+*q)>)*4xxid5@0P>UbX~-ftnC42A zM~4&$b?HQa3{VL=e++CK6LIk-Dl~&I--0BRNH*pr#4==>)HEGc zFUYQ7I|c0oMyzl8fxPM*?Dp=uE}!!mbX@<-p!SQ`tV=Gr<&5o2E(Hu~o0-}3#zB#a zLhIny;bzilYJ`nynoh^g+@qOnI8g*GP7T{bwZHefUDBj&QA1of_YFApDcYK>?*OTD zT8@UG7@#J=QISU{F7piwkB8(KDf}3E%L@GXE&Yr`%IT7rs}I#a@Cb7LZ@mM(nFQaE zTdW^)Rm#zl=<`L9fcrC}=X;v>XQVHlJ3kb0tsvs9K%~tPWD1J5Oa;-Dy80qBID#|j zuPogyCvUs!BD8>IRfG+#$D`dh*&LgX59O(xkSEXg*}j@B+_#6tt>Y4t>}@j&ZECaX z)YsJ-bF1sCRm&L5?akN2@vaof{p-x^ufu7XfEG)enzil@YY&fimx2;m%ZRBQLYkZc zD~;?I$Nh(6No4#YDr~pEE^c2jY1W(E+aS@peAKlOSPNtX+Gum4DpM`me{4GJUg@2V zx7bzI&nhg*5mxWmy)ns8^W7p9v~>3w_y)MXk+1KN#3C*to9&Sp48f0MLal3VtHJ)H zs2a79J3hye9G>{6Ezc?Hq8)p^eGJ=~hOH*zR%Hrg-oJ7ir>=d6b?gBtsUbYGgO7`t1RP#WR48;rXecx^wC(f54crYB`0R-k;f>ILv&-%cgj?7c zzb%@{hK2?+q~+b?66xcJ?V}=TcNqRy<|!d#p`iTE`Ju&p_EVz@eJAKiyd~zlfE7!+ zZkB;{L@1z?U*<*?{I6a)^9dSNqkbg7*e~h_&?H%lO5zK!J3^8J{RTJmo9^Z3cIBY@ zS&6d|3rM=5(o6Ftu|+dyYNFy`h3JKffhg_s!Ugjlm>4`DQRC(OQ6zQo13hINI4Tb$ z0Q~$`q|#3+RA5|_l_Ww9N8-!?_Ucnd%4opUwfbZKjE z7wqf!-0faZ;ah~NvYC!Paw=$tHyT?nRC!tCWYf0UTl&o3f?-g>rjI=@qF!54Oj=QG zDmU1SuWI8=9aQpm8(gKiow6IN)ttwX3m8C=w}u?fPv2k{dORX)kC=6%7+vdUo`bs= zWn17QF-tk%5f~7Jj4Fzp(8UhGFC!I?{Md8~-Gy0|eLTr?eVFZpOzRe`^wlZ1VW0d) zBR`8a2n^rNr}wGi8FFI|H>V%3 z4@0_80jL>YeGZ%Cm$@bLg$$WF_Wl45=7WS-d9AHB5; z7o^}=>8>n3ZniuhN;$kTLhkb(%MLA0>t&Z>3lJbSyw%U!C3GdCqagXi z@P~qgB~vV)L7m$%(4W;^hg zjvpRVi~zBhseM7H2!Xy_kY zyi@?DS+rzmOn6u@Utj-U?Of_QHTa4#gSwrzRxMsRpmqs1(6dS>KrAR%ywM0F17dvn z6dpDWd507=w9o)X4IK|y5S)l3lOxNW?EZqz8u(#Z2SEdwf+qtF2mSc`aNpnB`UW1n zLkTZNl!X^ft``Olbvmj9>lb(o(|QXtyCl>o21Qb7tX0WD$;d{!n4X#%n`jgj&RAqj zGCYV)Sx7(#S97pqGGrFcPRmhe;^lUA_7MfQOeYq>2#aFSh$f2Q^)UoIY`-;|DlNYz=I@Kyrp3E(iF=6pdC|aK z>^?lq@B~?E^yA6P>4L8jVXT(0jX4o!7y=S0!AMF7!^asGA4hQDT}JWlP#fbx2ONBl zI0o-hV=T|NpoNB7SvLkk(}ER}A$0y2}WCM!w2s+{d^%Qc>e!sHXD zgu`t*_;VA8==#qN(<>g&ZyEhjMaJs501rmi*JX$x;#c7Sh$4EIqhHtSx8q$nKHUtL zMTqO-cIN~7TXNjwwbm%R)%ZxA!$g_An)ryb)enY9sf_WOe4Ec4iyg`m7dhyUdVeME z$5wet5D>JguG<_A4=0a~Q_kCMv@Ls-Htp)(+%5qltY`=pvKu@u4^yjmDT^a~oF1MA z*GnVn$#5EP!aVn$k*#izAIt1DD_?gQ50k>wqMk9?MvVw?5U;X1et?&6w~w2v8lRWP zsJC)ji=(TRPFweMyQ_uLyZp;G9Q5BS?dAElBY=2qxMFofTI@8X(%CaN0hkDSRDiN) zZn(l5q?0pu;}<8 zUy{;-vOE2#OpKIlbXx|}k>V1N6e1-gBjjqdWo3-wDg&97sYWRA=6V>_X*vxqlZS%q zuqywovT=I6|L$$jNUDe|#0f&6><{eFqU!LWt$c;ly2!oaNB!>?*=q%%;fV>!*>Dww z2X_DgbL1bd!Brb!)yDJl~cE#+z`=5SmNtlZ(ZEB{gv>0fd*Y!`emp2!;k2o#TVp!lW zD)E-_e%(CmawS38DC2eN*xj6k1uV-Z^Hly>acZ?S`hF^D*tbYTb-gw>G{R7w!tY$r zdvDOzK6!_`W`A26=;{8x-Dki`(2v32>iHhWXvrvNr_0Iea$mZTGVBcNv6tDqYI1;M zr>&gWcCG$XVl+~oRwge`mZU}{us9^>OKHRzMZUwNrUYcK|LNVY^Y-?3<(?hkB47cB z6DN@?QsD3>&?5litL4NM=M&=RQ09wE{2F)6_LwUPY7;9HTN7Is$|&`i91dd}uSbof|*!4cZ(lWa7t+jUY$O1KlsUK^{9~iVB9(Nf_rK zpa$Q)b=9I)IcM#1OX!b5dC`xeSxS@AxMN>=oesCMV1VPB$SZ~S!l?J z`42bS3LIji*Kzbu9CnMSIJjh*&2Ee5i8cosJ9(loM099Z`^2H+TM%z< zxF@f5N#k+fsQ=Y1051q&n^rr$7Wh%OCBI?FfWh&3gtX`FRiJ(D{bJe2w6d}}^jx{o zow&oS`0%8%6z=uBCi%LF=yB$Tmdb?ClqaZYqEBD z`5uuBUBPL*U@X(#<;OoJEn<(jgr0EFLpX6d^0|7IAzq3rtTd{?48_} z+LYBx*rq8plAImaH`el-T4JobTAjACDV{*N$#8Br17B$LJrbuFH#y?x)#^{}ya3lD z*Q?!FpXLv1NjwhYiX=s3Z_Z|;Iw)2k%N8EU_HDL{O?R{<_o|s|9d{poP1Df_PnYYq ze18H){CjLR93V~jbU~~l8zdy&&yd5{(3vXjLS#YrViiK|6PE6?q5yVu`Qe} zHQKE{J0aAM8clbHA;ejW*3TsDpQ=VTxT)WcR^vA_(1puq8BJ8GG&}4hpMd4tlo~BY zn?9{58Ok^!pyowrFeE527&7GL9WoF+2ofrIrVKt0k)R)#^2Dy{M=ZjK)RiX7%KE%57vGr=3*W>Wx`t!wFW(N-?wc+ts zm-6GWYNcj_9&jp3@E=-<%(P}BCJ%Y(ERby-Cj<`zxkn6IrUZXBmn+=Az!c{A_3?_O z$jr(~s|Ob+CT|%=0xV+DBXY{ngp)G8B=FP3Rj?MHU^aS5(%5aR+67GR-Uf#9(-_>g z3Y3BWrct1YEl=`<;S3ozm|MkdgprPyQRR$Ol*|M>4Pb_aw^ASLc z63we!;LFm?ncZ~$*QmRKoRN}|0g5Z$ojAr$2G~?7NKe%G&D$g>Sw+kpIRWv)>hI1~ zUap4^r(ihc&s99l`YKPxc zOl13f@b7WxPgy?l%iHViTU~@F18Js|BusKIus5N?X~-aU`pKuFj*WwVloHhEDHQg%Qa5?>074>Kt zUu~Q9ckx^QWfZB$S;YOBgq(*q-O8(_kIZ{AsY^YPMbmv;NV#W6X})Pjv>qNn-uSg?Q8s(P^yQnTZD=TZ6G19*W6YZMDs1`s%|Ag0yIaO4b}+1cYeLeD>F4Y_x$k5mLSarIA9NPKiFV zIwd7#*{Kt*5lM@#CibLVC5se$g1E)#`AK)!}#=4hAkLsf5`~iw}VH37ZiAG=$ z*-wiwor~RJDBmo_B3cQ5L)}4dAS^SeV!vqIKp4y1ygs;|K(Nbj{$pPh)}x*4ViVbN z+b0B%i46F36K-|kAH?87Hhiqk>q|b%cdobBy5Gm1R%`eyIMs28x#)>m%uSh$IlKd znCsX*&J!IkREFeb0)UtA9*5YY|GFW|v|ai;^y&tEV z77t0UzNxqVDrwSn^QY=6>J25;#-?gp6G1?BaC}#94bD&pCtS0W5q*2kze@Q8S<28w zm7z&1i{NVQ#?M!{2Oek7AKnVfF%D#gOx}^tKA(5MSu`7)%~lqV$4cq(IrKsb_I~>6 zi`Sv?x#SUOrhl!!;gIQ6(J&6I)tWqK{lMPC!(r{4t=BTUx=UTZ`-L5bh5&-8?QQL%9f}M_Gn@$&B8bX(ueZaLz)N!d|W}B`A3z{P(fjI zZI-07(#&cxG3YcMZ%kK4@wS^iMy~ol9YI{?r>uZmZl6xk$au@u8jN{a*Gy_+ zG8M8UD|VJZ+0tp0eUn77g2ct86e4VpK*gdt3wDwQ9B)GT;txt8ie!mH({IZ6qM#kx zRN#)=ilFQJ)RZ!YYMU{1G9^cN9)DR5-JuI(mpVr8(Ema8RM8IMoRt}*vx=IkO$(L`#y zjoM|u*s_+eGOS<&GEG9iVbzh7hlXWkdU<_)oOpCP!yo;)7sZUEF}%F%iz;OrthBGZ zFALaBQcz5gj)N=`AVURl$711xx%kH>N`-n8e~??3M2(UCN5i$C?96nlcgG4f`-&Kxv?=eMhvCQ$ulUug-_iM!Gs<>(#2n$UX zw~d{`^9VGlI-qCiX(}8%b&QjqGE&_DgzE&P4pTfZ)END6a;f(+JTR7rVTM)1zymfZ zd*{+|d5-*$&{JX2(N}qGQwNMil*{00@TC{ut{KHBr5rq9Etme?b;mnB>yd(^x{#C%b~+yP0-cEawJ4#3F__%yO~t4dnG2s4 z$2}FV*BX)Rm2S`b%hCOHu9WKp=H~`mD2PN9ky90pQpt6-c&~=$2L);Uk%IeczSFPr zeU0zxL-xpx5-}lm_R^R`p0WFY6lN*Wj6D%`Ka`DH9hFfBXV)CzTfp5apJtDd?Pq?s zv?NqZRc#h!!*5C~<}saJt&loQx#d4guVDVO$5DSm#ClBeNc|o8o#f#%8MveJUC1yn?AYdQ7=k?8|~{(^P1N=9jZ+k^(aRVUr8Rrv%ze(q;Lm5 z>h;-b%4WSMFmF|SHA42oL<%NF8twBV1o8IMC(MH<3!2Qkg`lZJl{Y)EgPAqM0z^}l@q+;M#56w= zC=-!+`{T-ifltI@@zXHzQ@}m?v~Gu4)>!VUu7d5!$}SKqkr?;(?|d1TSKaRJqb>ig zzWjcXd^(FmQPZ$76-%mFs~VgQfJVj1A2W#zjg$sjMGJWnH$GeaOqHcWqxvJpl!guE zcXY_)F<3B(9?eUILXls{z)z@#1?(&U?$FVVp5Mu1tUW1rCOxtwsssTVQ9@{vJ!guv zF%u>jYlJlF2fZ3f9%g4qC|W#g#u6GXjb940 z&(ItX)Dx{%r|Fje>-!T1E(Jw+bXdV0CMtFkz?ks@2@e~6=lcBo6lrH)yiZh)5}Z2- zNOAa0tHaN7Lz*)UYsiHw3037I8RL8f@K#d~#yH|6K|GQD(PGj0FH$o&=6sx%YO9Sb z#iWL-gXo|CGE^@#*bI;RBR|JY&}q};{}2~(kGqpi+HcXc5s>kr@4W@;3&PvvqOGZC zU(JfTTo)9aVH31RA!-r)_jjXbuQHB21(4b=aT1UOMP{uUWhw1@Jv@cQ;v_@^bLx1knnYjzq;ffePpp zpRUzyx}3#qSW@Aebr`%iZZEl2kbCse@|0-*J>7$Fn%NA2;H{0{$KB=)c7d9#i9)iE z!P}Z3@~*cIy1X#cRIIu*sJfhU)4b-8uSC8s&S*%u`tipt6!Oj1&Qmge+`G{VHag$U4O6tb7nN3tQD#d!U zd9BPvj3w+P`j0LiIW*ZRQJFwNLT(^hp*>yyun}eY4#dw`UZ^D3wnKW2l#(du;fe8DxW63QFs|OGO{sFAzNj0(khZ*jF1k| zYc?1>e|?x*bdKeY(^FAUahZn2XxEzy>-2q*QYQo5nI7|r*#NXb5;Y83&0l5gX|vHP z+#spqc}if}MpUdB^io-zUIWQi7VOqcBI&2_=(+?-WlcnNs9Hg6E&wzQVvRtlD)wGv zevKQ7kanQ$;;&(Jxi$?R{tE=9a=D&)cytD@VYG-vqF54B8}6&=WO39TRUsiEHMP*3 znwF3bW?t?VA7N$91R|$fhhz2$Wx!M>7L+z)B$^?ZPAD_=<<>P%NrLlfvw5lgTOU*M{d38=S z27mQ`m1m<5)&A~*51aLN@7kPB(U=jNp1RMw0bqt>4wJOItXL~0XnE`w4O>Gw-MS-N zH5SQ%&}Bd9ql&eIJ!_@zNbIRTz~TtFT2;8&_fIAg6U>s+O(E81NC}$=kv3Vb<=c-5 z^v4KhVF(sQT_9ZZmdO=1hQ+K=ObeE`-<=*6GYNOCqj7$uBNbz~m&aZ3iV0^ViePpJ zpyE5`iiqgpY<|NKpYURMgaz?Pz)TwMj#ma(ytDC@(e`ZH=0B=<9e+k-VU$-N($I#X zS`xS&L=Zbm^e>4EI3O23%UpT5zX~1izg>SbS$n+CVtBFJT&dUV3QrpbCX1g!IdwJ} z>}{FJFGpW{Ii3!Fj+2XM)~tB5e=HUhKPAoMixANl75=j3Z|SXxIp+`%UH&GWZ41I$ zAS!+)7v>WWztruz8xIekCZvw>(one>n)R1$uK6t!X0ea>Ca%L*;32)EB{ERbi)!^i z)E=3j9a4+wyZi@FdHK(*RqW0$UJsGyE<#dO@lq!huP|{tOXIO5Z5$g^>n@GXrZ!W_ z`LC#yUzTk;wLd!_3r$BFK3D0RX}U73TdmNw;`gjgv0~<&ep0rt9Wp~zv#rQEeUi{V zn4Ev#xEvaNXbyMaZ+#YBzFuZ&CR?vFxGZW}G)AW9VO*&*-R~3^iMCYnCN|L6Ty}zI z$mFI%ngIW8q! z2$?Klav#Rj@n}rh;_M73rADpEPSII#KS;S^8Hc#QRf{lSO26U72o_8>H}(|BJqs8} zxCKX!8YV~pC{ZoWHbunTT%fg$((q;s3qUCx*stFB4-y3e7g?H=8a@GW)KIb9DbPQX z+Z!8;$j8UWu6i7LBlpk`ft@t0Kf6l9mLqC7b1DVN4U1>NgvHD>$FB`@Tc-qT1`Ejy z@im|a?pdu|kVI;4ejWz(ird2Jzc3E=*Q|7@+aDUI&q~NJ3qojP+X%&|Np% z=hOE8Q&&m+E~zz^szZaGs&tv#FJYG7Jy#!I$s!Ld40;pg5jtz!F_DQ&+ z{5N6J?}ij{oNIbo`8o(~1P|BRMpC4>c*!3_7hU^(GgX<=g94#GZmhj2*6<^I(RF+# zZLi7o-!P}Zq@JyjAx$5HPg$kx@rd$N>7(a1XDu)(={^T3eYgN8rsvqkuAB?3LicCH zZ3uE+GmQRfeN`+y#}hkH7oq3ebCkwHATh2hP-Yv3HTHqpOw;lYei+dWTc>D*}{Lo#u z=)GIHu;pQpZZ-w}#QNiS!HAAEppDmL>2g(ld2Sz%ToaEvt|W0rUZfYwsAX4f0?M@| z4Elk4AKH41V%7~YVyPH^ge#Agp#9}y^Uztb! zv$^L3=Jz?^mTNJNPX>6k{X)OCyym?&?@H?Uhg52@x%Ys{Dhe3XRNiweaIa=Hcdz7? z7{XwJfoxKuLG|M+JQ3sagp8QltKBV~Hfs0*73&L674;iA{3kr@?ZczKZ5k*{Oh7GS z8NbyJ>^$ubCMHExdpoT}m>7Anxv}1T{#wn z4ege#*Y0+N&j(CsbE}u4r{3T&XzT0*C^@+iMSYhx1$HQvsYJ`+Aydf;i$zArF^MO| z0cG>W)2Nb0wV9=V&ePJ{gZ_u8cW{fukJ^Vfx7oIB+qJp2&9*k%)@0juZ8kQ$HrsYh zuHSs0=XtO9FPORJn)5m5+~>?716+4Qx50xz07a58D|8J2wI&9yI%|pHVXKzROG!z~!~~5-aeRG^kB3J< zL2LU+;we%^XKp7qc*G9SU^I12IO z856fh>PIEpE&ZNpXY&Oiw4Z)gCCR2PEBE2azw~*YOQD#2O)=sA@AiA4n}^a(PGVkj zLFHHZQI3fVEZ-r{@bdYQ>vi9(ENzxxSD{3>zWs1IBRA~R2{yG*)AN|zo@Pgy6NE0e z^QCACUWOfnLHKVPrtt1Ih79P)Weu`h2(EQE7r~jFM zPgH(Ba1;u&Z(5YkJ^cdYKkogo9R+Sm`{Q-Fa=JT4YPA{2 zOzwxJW_YY>YtMCgC@&8JF!O7-k%T1|7u|l_p6_+?U5UFnUvUwdGd2Ld~*j;yegl&A>)u`h)hrw z>l&Df3UHd*0XqUA;>>#QKlBvyYe|){mrgNP_i_1ma$(m4P$~~5f2xd&1$(sWd(bSp z_^mb#FFMy%8@QMqW&@lPnTqk5sbn(M4$gySJG1k{K?*EwDeuw>Udl$t)$D?!SAW$s zK|ikr>i;XyulLHs*I0#n_upDgPIir=1JTQ4g&3-sX_N&&F?=#bX;E%*=rT0xILm)| zC1{TCI))l2Y+3G*gVW^<8#XrZ1nKE9D5u5M^@hiB>-6oy@wy;k@_;f8AEXp?ebiK) zx}+H68gUf75Mx4+5x?Kuxk0#sK;(8+G)(&+6S6T;v1+s>mZvZ=vPE;FrfexvhSBH&Reff5EE`_Mm&W2ciUXE zS~h$i9zK(fZ^|rcejC<}mRt77RL@$P;l*fHK)O1Hh}Ftqq-FcG6&7|i-s$@KZVmxp z;*#@t^jr^z72>m5>A0MSFJ1v@X|>v&UV}%mxu2j;-FkFY@w+SCKv}@~DhR!7hKS$u zXmqTy8*1nti@BDVF)B(T7hB>YB7aOgu0bj<9 zxQ&ZryDnLVM5*dP1F9w&DGSG6VV=JeGusQx%mi@|PP;M^xhO^sEA@v~2z11|AV$~d z3CR8-anYDHu!D>o(R#L2mK2S&zJdepLCd&MAp@88MkuJGST{^nWErpmu38?Xz&7UL zm~gTq&uV_S8yvcCB5tXZwjZ&}WBL98F!^7a^MAXnaFgqY%R_V7KHl)P?Y7VNvsd4# zh6$;IP?|#Q?{<=6R}K)?mRlB(q=@EQ?KHcN@T&Rd2lOZ5(J~pCI#gyvdr8xBCy3E~ z-WxkyqL$3mu-#|z5pE`#B>ZtIIkVt;F2|x_6W=!VvvMKXH^as(kybkw;|7HND^t#R zW?+Ag>Nie&nn`?iWtsESo8j$u&mdiX4#7j^&BM>djuhZ&G}-Z++8iE4 zu2u7UndmWS-nLue=%rBXNx14XkXWSlj|?3=r@i`oV;Vu z@Db+GGl(%s^Lv~=^-Vl=nGpAO>I}C9p87X(-O81I%VxWAr(eI@N8zP*PR(aXjqSFy zxukd71kc=5L2ZNKq(>WiImRewv^x=bTkO8>?6kh-al#Gl#|mw?#Iky!GrjOLmvCV! zzN1t>Pr)IvS|flXn~d(eKwc8Ni#u25fXuMRHgYPS2EwNiUO^S{YhgoRLv zkCI>Tern6!4;)}!PhZcm{6Y{Q(mL?@D%{?Gd(+GJ8c4}|ZeFJq4}HcK;R#)#NiG&G zn;|x!GUlP3vcg1KB3mK8NGYNzPz$oHEI&}=3mwki|6UwF>(B?jaf1wd_W%S(Vev#L zKyZwJt5L9ziByVcanG3_9@YX$`*lfEWl&2#km8Rte_DH~N=ao()j%@IP>>bP!QO}| zp{~Ikux1qXsXB$qmMut1NmVXdLyAgg4DZQIXw;ow5qrH3a5nk4&@)qICEFu|Uoh2<7LIbuQ5095)58z$mqaG`f4qug!Y8-u8Wee%11r7UCM6a&m$`Byx-R>q0+-LQL zL@1vSWqO!);U-BF6a-NxedT)<$u_wmf%!)6K_Y?sKcBj*|^oxTtb=@EPZI@YjzN`*) zUQ-WZMJM%9I%ESWR#vM{KA&oXHRJCsS;uz&(vX`u*840rx!0BzI!lXNCPs6r`-oDv zNhWN9PWj}s<`vv+cAqzPVS>i=8Rfn{8U)r;GV5jtzg+vT>Lvif%#$B%!f)q@a>7kC z22yQtJG$ZGrCt5)JxI=Yh(ieBCbLy=H`7HPX}uLT90OLc#~dO7F+0#VUXyp7L-4{g zaJ=+=IU4iRbf+n*vdv-cs$%@qMcffTni+a07-sM>jx7+7S9qA)M41f*elg~S)lK>0A&&)dTPQ>q?MgRObp)}Zy*`w`S@xta57_mZZZ`Wtbz4xwJc;el6^ z`keOam9nuilo4Xkvr%dlkE)c~$D4DHQT>I%2(XX@8S=xs4!gU%fxvGlvpA*|x)eVn zO4tgPw(96kM1q%m5ZI_!HK-%S{-saSD?eXO%jC&EgW`y$O zKDkcs@b7r#!6CV-rJ6LFWPt*iip39)M3oR=ayUL+&ga#jG;*Hsc6^fa z%h6OB;U%xPoBho8I=>L~N@l0e&}G>SFqKHRo%d}Ekov}0)0!(F=vSM`m`GuvVBg`k ze>6A(NUf8V&GUNrTM@35XQq&qke=;wytN6+7owu32JNgxTlp##mxmOPJ1i?0VyJ0~ zK(K>vqA`3^OkCQ({wr@+>KwtG!DdRLh*p7>bA zYf0U9a~xGaDl~2Y@W9wOMBZ8>iG|Nl){6hpA;{);iT!?zJA1V<#TmgJc5ku&ggblP zTqRF)5kQe5rY;XYT9`sS+Y2AqeaA%uibQk|BX^R)_D&+(7(Op23fMahUeyQZ-HRJI zLcFc^K*-xS6@xGOW?wyKUj4RTXp{q-@eSYLk+mc3WJ|$*gGZ>h4LJzIx@vs74SIV( zFXLJ3PumD$I}jO3g2B+ygkYHZl3MZUJX1^j`rF3;dX+GXww<%+H7g^ z)O}{rIt^^ndpm0_%CCKc;X1^BSzi$?fm4mlOeK$AAtdkCYN{!EvE43`+x~K#1TKaf zAZ-c%;rPfG^^qTMs6QP>iUb=!w}6Q4YbOK(mjUUH1z1%d2ze*)n^st*VHGJp((GT{IwllTxY=L z4Eyi#aC`Cb=lhJmiQ;gtR@a}^o-3=~yiPMmU}lC5cCoppDNLhA4#S3X>4nH`ZH%{5 z>h(sWfRJ|4@@Pqf1nHt?;U0oi67P87JPni>Qv+VcRORh}^!^R2iC0Y=51%-0s%5-yx9#t+ zdzX?9X|sB}&zN%wSgxMTX1~9kNF5*#M`vTtb?X85t66D!5w%&L8c`x@Y0~R}B}2v+{_b;Bv+r=cLu2hrM&;n=u<_$bqODd`wCY!yj0Dpuc*aB|e-2ct$s|Dd~2 z1I-M0wLE%km&XQbV4RnkrlWIG4Z*FDksf@WfcPVGyMhGVpS1r=vG7M;F}wKQIn!GX zf2r`*YJ=1JvIeY*^Ve{F4oZEK2q6~9>Kq7bBNcS%RpjsG;}K;}s81`r!Q$zF7t3{e z=MOdd&0_ZAwlFJ)3S)I8QY+ecjxvPUE$T#EkS{4=#HaWuQ6lMpOWuxXJZGLO+T~1) z1@V3KWW>bF!O}UcNb%#_CT3&aE)DN4QroG8hbxMnzRD(8(B))b_(Q0iZmN(JC zPGO|=&(~M?-)WUtRK%Eg`0G*>VRiQv)w8iPQ;OWm^{5EU#wc z=KY}j&LbbGnI8{u)h>~$l92CT- zuzS;n7WvnZg(O0zW(j=sn?6D!ituQj@!z?RLA#SyS~=EHJTg5HxGIzuo+p>mQU;ueQ5BtEsFN^x9MN1}Vyp z=m7HjqkwBEz>9_j&f_snlSi&op zMSo|P%ctC8w)+nGl6g9(gI&U$XU8}_9{!4~ zO=BPe$y@|`(ITCYXZSmg`P&n_ua~BuAiO_1mti%%zSx3pNzZbzq z$jW-(^eub6WjZ^&aLYRk0|g<|{3jq&4+tob1 zD_&}YLZfiPAt8B9H&6I&oyN&eNY~!lKUMS^eRqt4FBfuWK>3_m1vQw@g4mGJKg8ZH z$OsI*klB5u%Jug-wn;1fsTohe@}2>Qe{2`2g||{aERULUo9TOb9aq$y2i%HpG*0J~ z#B)US_IX+(9hM_!X^~uGqXkylEA1xS^0WKk;y4{Nm;a?%fXdVVg%*85gHUB`H}(U0PaZZfa&$QcQu1h)0K6^%D^7)xfI?T@mk8LKcg&3;V** zF7a*bcoxd1MVpdc%KE2jO~vVt+cC%QR^J_I9ci^_GybqGG^!@ehEjY@i$1Nh21)j}P>p3s;-oD8yNP`K+D-fki}+ zqX;{cNwkK%3|Qfc7FbwV8X9@amM%6+)t$2|O@5nrfH9wjQ?ae9Zm;f!o~wb{jqV?j zR*T1Hz>6*FBpNvYvc7Fclj+>vzI5E;(!U{zp*^x2aH2-Xk5cxsnE{BW%XMsYbn(J? zYz8fDeXaJoa+lQ(L=e3)Ry}9Sz20T@mD3w|Eu`;B!O1B_Yj(NXQF(T{dkA^)NJt03oED<#c{lm0)+;pjelTBh&g_hD7wd-4p=0F@EZhTa}K|*?f3v!OC z`0rp?b19YPLQN{qPnYbu{FF&h4*=eL9&1!G6Rx}On|`L4v}3MgUu6?>D@@2FqNHkL z>R_3rVqRH!-X5&m_XIIVJzZZ2PkjCVz1QLblnlPj_$7e6mse}_KDc@(=XDU7y+%3U z<}40syX2DrAZZWJpgRs>HVok%E(^!xZ9~XjTS=116*{B*l6Bujo4d5qGiVZjo#Rq!nS=OlW$qXQ3%`3T{m$o6y z3(gt^!77TI#_1?Ga&M_Vz6yQnCHV54*gV42 zf>})V33Cq(a*zmIr$(Gn*|WdU;&OTXJ7b{V=(}e1R_$J0yEA;3yg;|6g<7FMQW2Sm zVY!lZ_yAbf=&j~;YA{{j{|U3@w*6|RAexe^I`IhRiUzk>Stiz0ELkU4J#~ab^qUWmqD1yjaiRJhq@L@O6viGp=a|`~pLg5v%DFkyN!A zA-J{u-yxU0lP*NXO1S3jj|~FEDw}y#Ry9ATER27-Rvka;HCLU7x1M<0`j=ha3V+4$ z;(poPet@VHw%#q|7K<%0_pJuGpYuaL3Ci{nkl!;H=TtL{ z-=+zXiG{U$oFvucn@HzjXCq@{{}b9O$#7^FGBh|&q}FvgA8)NKp36%)Ys>Q8&{NX> zV*15$%21&R%?$}onitmxo|o^vNnFC{Cy)5?~V)I}vJZF%i`LK7jt}Wjw>N0A92VKAWxg@jn(%SZPNGm!Zqe zblwv{-xujB#U+kK4&8Dl`iZoo`l?(KjzqE(IL&#HMC5(GkjRP31I8G;3q|))on(GD0r=+@9NfO~Pt$)Zz8);k1 zM@ee^YTP&a*v+E8%S8UIpGRe2g=s$O$c{MaIX8L)RWTw96!N{>$*TK`B4WQl)D!O8 z-OsC%exDgG?x5P=7BcjI=?~+={Mx_8-b~vuI59*nAKCIVc{{M^71VPR9rBCX>EJEc zjP3(7Cn>jyJ`|n?N{2rb6z!`9cZaQPLCDYeWy%q|!tq#TgBrBt`6%+*^*3$2{6Yl- zbeC2maPw?7v+Rra%(K_9Bd{&JeqN>cobXFmbm$-HU~Hv%QKv=5vqAd6D#E#>=#!!7 z6D@&}g-6ha$nJ$PV-&TFBA6dec$XdC%~-;D((e7zhL3+Fz_{hr>R@9d*?$iBRU^sI zG!xsKVnuTtu1;TJk(_M8w&zECwP$SOZ+2y=m+*V1^!M{Lb(y=Kd~)_KlwL|w9i5g& zk?EnV)Q{qwqZUeLdf*1*+Vf7|E3)Dx{z}7hN2tF>)b-D#^^+?>kQGhK8_xvh1N$%# z&+w&X7J}$|mK_N^6685e0xQ*Ks zPSDt*CoU*MmI`A85719qQ4k2u!0MQ1U&JalOb-^|tf-4arU`8%3xPv-uO#j9DY_9- zcRYp}Zn3-%XKd9Mc%7z;wye`kI0u|=PTyInpsmk8y8h_+1F(1~u)z7U{Nwwy1>EFc zci%2z%(>}&%oF+s!kTXoZ#I_=T3Q8GTFk~;rktIZESNGYS2>u^T(<7cx+k2EB@}+4 zsTWt^(*w=xa+}Te8y9|!OfPGsq+lOhZD~4I8*bU2U)9Lr&0uOIA6!gh#4!nKx~4A1O>5=L z8B^g(>Rj7Bzx*F%@4NYVUp(m>xpUfQHQinhD#AJx+WFa!r+Kwqy~fr!+h1O&mGXkB zYiosE&(y@l#dY2$hT#<+V-OXvnQ|(4{qH7M{~TLePcL(F=~Y+R1ax`7DPF#uRaXA| zWiivYNz!UNg$fsH+@MDF6BhK6TWELK{xY_fk{45T@!7lJg`Yg4!3tI=YfN|fmPR2+ z3t>B0*w~JcD^;S@SUR1{%S=U=D{GYa!^PuygBM<-Mwi=n&6Wt}JMs{#r7ajTSYHAy zLa0BcQF~)V0@F`0`@}`SQfauc7tu?tF`% z`D!U!I3cgwyp&TG?Kj4-rfI|6SzDV7K&x)9u=_CCI#i7bb!;eq@nN#594ASZJWX~; zwnVoixd=iOZip>Zmkb?WKJ&ozKHI8+I?7pJx5AQP)#d3K`0hF9%xS8omyrEyA^IG< zgottT?fo{muIK$68Hi2>EQ0Zhf4=2jSNf8=_ow-9hyL0EdxO4UDDRkcmJ`0B{i>hI zA2C|#?s*#qg6JHAt|x^-i&PXy4ufx6{o>Um%F8H&FkOpEZqkdA;_D5{9;^bQVtqxZ znd>xD_yYf=ovzEgK$3Q;RUu#olZjfH3YvK`n_2Q6f+Y@VJ0j}Fa0C%KBzCfH2yK3? zz6@Ns4ICe(33NHo320iTpZEttKiDM>?9C9zx!6_D+M##K<{TxAvcdm!m~{y78V~_f6mq&>sGNi^1TAivBPq zVm0o`lW-UM3~$JoN~V?^auVk|p|@l7&O2U7`aL94ccLQ#;M197;1r_p%|>92W`#Hw zmxL#7p_>H8LD8OOt8Pr6g^;o>ZcgBhc6v}Zjco9PIDJrDZ<}@ec$hqN+9Z>4d zwfJ6K+j?zl?_YmE@u~HE8j}}2CITUZy4~&L<$YfIvd%rT)yQNb8fNWT>NXM-GL`X) z$y&$&W#w5|Sn9IA#V8j?Fv;)pEb?-@*Y&~cd{lC|+H5zcd!Fk0XT$lFV2718U#8WjvtY0nO(t@EP}r@I=$rF#%@i{TaL0T zYJOYysHu1sR#u*Ymf7$N70u`PB(6}!f86{uLnB7}k@M-+h5gAY=$WpL*muUSe))F>RKPyPgX=PSdCt7JUb8~UF0xkw;#o4C! z*n3*v9`Ro-{&zaM)@fNE!qdbxeXuDC78dx=yr%P##R#u2}=Zd5K8c^$V+t zXyH-zPc|Q0je=gSEK``J^Ir8E@vB9ISBuiVO~YP^-#lgXKNbH=!uT?ojQ5r3y$GNU zeTa7w;uW5}XPN#Jh^{^Y+eP(vJ6Xl9-13p^omHxjmEyggq)ApmkeodCFjRfPr}i!= zZ(L@^v}uG+om`BEGJ>b?VO#29Wd@OUH!MZ!@&)>qse zx2zp0Uf1hH=<@xhw>I6X(_z@HecJ8mY`qHGug!JH?Y!|)thuIiUOn*%K;x>BKB5^i z0=Z?vvN1MSfLLQ8aC@ZePS3g153-?p+BHoP@*bqIRX~c_O#oOwlsN`I9$(*yKaTp_+~Djz1ewchhmS@$>=xY5kdJvpY8(jYKVZ)N^3cZimL9}}Q3 zDnRbOz~SsV23-8}v!z-~*RiQ7-(hBYGfSg7Q%9}d7Z@EvBUraL8#^Fq(^8w&>7ruIDc^VDv>Lb>~$;!pMm>G|QZy&>|h2T{L{g-6t4=UIiZg!jlBpMOf zA%5XwK2y6oW8zrr;njFLD>)~<&H7f?!lUcRbS^D}aHFq*-{DK9vqH@J{ZnqaP^;Nf zZRYUsJ~h3`{{D(?tZEHghP-Uayk(R`Raq3JScUD==f@iy;2E4$TM``gI}{lffHGC~ zIU;}=%{Vfo8J}A%o3Cd6v|S)jhT-sb&Zt%?x5Do7qUUyJE{A&NO27v^#QO4Nt-%>N zz2ahaZY#I{NN!m^VGdHj?6qlCDYvD`-Nk-8h5Pr?M(M<|ov`PI$K~1WLfN%|$I9k{ z`=^hdv2mj&1170uxGz#Tw+(RPveRuwtH~0WIMfaUwBKr{r?s)xbs{6)1=;kbM3<%3 zQ|cxLU{M(xmk=bXiljMNF|eg7Mv3rn@IiqxT%lm``{)v3cbj4VlI5bPRAMd_L#}ki zyYMXzZgQ?{GxN{{Oqc~ve(TI{C=NL(xi78JOHV1prW*}BFO|w+Uh%2$ISw`HoJqUZ z?B(GV)K6*k{TS?Q?RiDJR6v%7RZjbG_`i#lX4%CghA?;ta_g%pvw_XWW611W;m5%2iq#uCQ$Y988~P z;6iWt^6c({v>hbzfBn{FNa`DaV7DSidx$pn(plzv@I!g3l8I-i{p?J+TD-f zNm?eD8c!4jt90?TUrmh{*oTt-yq-9Wn*OG}zn5QU5~D9k?Z`FjSnJK(7I;<(Yvw}TU*ive zr2Vb}1ou=vaOLN&IOb#s_o!Q^G2I5(2QrX+vg869#8?aHfw)C)z}?Nx`m4d{9mOsU zVe<0eo!i8nEzx^#i96r%{;gw^YnqHW_QEPO1dFuE%N~&3#{Dr(JCGe8VwlVy0_c_1&xvufcR?CgSLTfDSC3JP7(9DN2 zulx7lS`9D$0(&*R#`Jc*TcirTs+^WJt6rdTu|Q#bC^pNj7*Wa~1*rgE-pGMt23@m! znKZsO0VZNJ6=69%>g_0okA#PVrU!~apSpFiap-KKq2i>>KRiUIP&y&fISfK_6`GjT z@(j=w$e@$U259@!_TrUMN8NS})BS;}Ro-SR`l(@}76L z3OY&#zr;;|SAtbsW(HkeMVG&n_DkrG(x2abLm`5TG?=!(xh9N0OjfYlZTa5ZoC0Ea z*EMRkUC!r{I%o1y2!vDFeAlMCz44j!`3!XO5?C?2D3eBc8JLo$6J<<|BM}(!`-4)F zVJYCqVutoeZz?&hDN`cIjl@y0LSx}6L!oEuNuNc&NSL1-{0&qkAOTY5Y@@nJgpAJp z`=9^|87x~fCh3}Alx0*}h2;Hh;6lrrQ$x!OgR9>MjTf5upt|7AgSiIr>cT*wmL$av zq(TxC12b|Q7n(vQ*I}MI8m2>5tFj^WCimkot#$s7$Gv^nP;1!FBT3Q!3y9Bz`#uE- z9)ZNcK@#po#5-9}I_q`9@0S(9X^R`j0v9CAJ^_RrqYtfB6A)?~(>GAAygN|f&gJL! zCbR=C@fQLzE@0-}=C3geJ|pEqMHu$!NIRQhqg&!?+d_>R#8YJu*GM2LI%0wk%n$uw zia3?ZWt=JW-)Io7Dmmd+)8cB>(mL3t%&TUjLQJzLh*P4K*bF1A3?}^S&y>{ftb)&! zVt$iw{(ljIFEAGPLW)O{`_jNSOw4D+OZ}@LpTsa6!;hW1H)c(k(=QQ#AUIm zq}TR{-T}9n7klVXg7+*x^6#>{U8atUz8tGiX!<8@g`d*p4d+&sJ}-rMg5XX}N6AV0F#bga&F)jMzd zwx@KmSb^ju+7tZb|DXJb`F0EVv3`{*?cG|t)nh(A{foVtPCYulk&e-N&uI`f+NV(t+2?Tsu`{Tp@BkEwXF06!AmAX ztai={H9?t9dIUV^0Py!)MLJ}a2;CvT452n4IHC$4Pce_5Ui6LeN2oFC4ZI!BBq%?e zalsNtV5?_u4LRpGZfsnqWXX&@LmfP7& zBE+~q94xJ*@4De}cjB;ELHPFcd%fFxwQ>=!CUrXK3@!oWsQ{dae1&o7@k>9l0ed^7{V)|VCAy5JNgIuu_mx9+jPI@l$tL5 z6R7kh7-mVz2D6&GaWk*;a(EiX_J1Ylq4Bdm5fi5TzXA>QjSD>eDy^BwwM_F;UUuJJ z^LyDXOM$5?Z)5gYQ2}#{AQb4kfw;{-#sZUaA--Aa?XyXa9e}S1mUSi;wGn9pD+tgf zcllD0QWhR^k04@^cqA@`LYVjQuGs2!$zy_B+k^5Cx*+!gqHWH$uvYS~S!5pxh`9$! z>`IDO$>fJp(9{Ohs7QS~V@%}VATlbjfeOIi4|k96%9Ct+Y#h{~{S@4&_X7js_TOU) zwgCv2h7e)o1kIkCoIc*nLPjK>uqv5x%7al~qcFFoMtTjQn!k&!Ly~U3?`T{E=u@JVr_>aN)M7Vn^KA!GNBap5LnfKu^o2Fku=om&E2#MZ$h&vKfg9JmHFcDXRO?@CX z2;krBGQfNlZ`#kXu$pwvNo-nB5m`|BrXA-9{ColTN+7@)tOQZQa3|0NbSOr;$Fskl z4t16CUftJ~BF~m;NN3$h=BCiV(9tBp*5-DFJchG{G6UW;T&J3T`nm1Rl#YDZy2<(% z&b9bgU0U|P>EY*6OU5$gJsv}>Z>eJ-Tx+|VYtOfH%B@@5*!sT~UFH-O!1vIDJdRrJ zXF*tRp#?cX|)ceIJLqEI{L?zH?$<)N$s{1XM za0|&m>Q)GXVbokPvXFJU3?4EH7KTybz7ci?n%VVG^Ekb86Kj}}Id^;=pV z9tCV|x?RqX0{76GrC`pCSy#lEz`vhU8y1!QdeIG(C&QLAJTDhDcM65mCtrzIECIpe zX=BC{9^43rC z_QK*N4m7>oXn5zfAh&&jrd`%3m>nw`@cYaQR*8ob3&?K65dA(Fpc&<=wc;vXRVR0? z51+gB)5X93=<*&JqgIk?bnX&lfZIGC>`3&^+|TfRo=F)T>uT1ZbDVx(mI2RnSXhM$g`UxM<0^j6 zE~`W0ad_Lbnbpjh_x3A^%R*cWb!HnugWqra79eD?L14$%|7#QZ0`b|S z>-@r}!~eSUqWMp2O->F5EeBl1m{*0m2qtR-xOsU1X6escPFaefOcr*VwWjC?oIgLx zR4WhJGSs4BJyaV)BuLP1AxCd!>vwhxnVFdxuqO5$pagnkLM)rDLuHB5P_lT*2My<> zGau<{BV)i zHC1a`Gt}<1lGD3Sp}u71_v*~D*PY1Z6|Y#7F`X|?K4_Dm-%!lpd$ctf%qdgi^YXqH z_G|Qc#A8wl041ssfs$C#xlEQ;!%F#;as{nCUrs!2<_gHIeJOV2i4Fpo$Td3nzM_j1BN~dBo||FJb{?I8 zm!e9S1oy}nqxn~Z2IY?m*csb7r*o--T+`o(RRPqb5>XV&JVqmw0|K$+D1P!E_AwGo zV&kc*!{!yPg{}H2auL*&I(4}8xEldyj2xqTA zoAnv}uOp9J5DT7`-xi@CvGG5@*5G`4kllqL;0oYoYy7;n7}~9@~<{+PPV zLReF|Hi%?*2-!@sJ0lqq9u#p5ON6sb2Ya20x)xHvI1q0kBU8mvEspV-h(9a)bdlfr z#3txfKJELD7DBCzRK}&4WLc$=U)w0<;w5uWFv18V-s;C2*yF- zg*5LI-VWx=kOw9zf(;>v8(u3wZ;0~UbLjCJ9qJJdTwisw?-%)dJU7{U8wxUwE$N%f z?Vwk}4XM!y3UhwmclvALakz^zFR{YLgXhONK_kA&2Rt)RWHdd)6e(CmlfSe9Wys}3 z

    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 z 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

    &S1w<#)AZx7E(x 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

    vaRxRlkjF^ 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 literal 0 HcmV?d00001 diff --git a/app/documentation/example/sparkfun_gnss_max_m10s/image/log.png b/app/documentation/example/sparkfun_gnss_max_m10s/image/log.png new file mode 100644 index 0000000000000000000000000000000000000000..7f7052382f96344f0b960efdf4ff39f3722d3005 GIT binary patch literal 36625 zcmdqJc~p{nzs5~v*|5{f$}EQlhs=~Ra~876ayF;T0W0S*=bRw3wxy|+DLHGVq$ZRT zj*yv}qT)Ou&Nv~Os30KlVzr;MpXWU1UGG}&I%}PC{&1n7aH}`J@Adm!*L6QPHq_a> z`{-@}0I>JwjjOi+fURua$JovtynFcLzMJrFw)oxBxeP$Ii_Y=B;B(eC&;|fL$M4y= zyPfy-t_L@)`~ZLh{+l0LMw}!b0swJ&H?L}&J+z|`wE|Q13160ROLyKMRI}S+7qK9n zNbvV{y*PI(Pw!NsMGzX(2G}vn-QaHFee%aaZ7}cV+yg$|u>-z**}v*cIqd5f zAZ2MOSWGK4>?`Jzu^u5e}LEl3V2If`F3m=_$ zYSkzX%9Rwt&P&?P@bjKeH2dW2(#-q{6MxG=9UffzYDO68v5oh@67PY`@A1Ksse`wX z;#DcJm?YI{F70#>U3zIoSoTkLbwjKT@oZ}dJ-42C=roMck!PwmGs2Q;um0#(ovVIp zN_gfFmt&z{R#DX+HoXqC(Xbj8rQW0h<=)htCEYuXJ0|Bvzq~Zfd#$j`iQS>s<59&B zgKJ6XMC}K1WU%ylS_}GlGi%ZAU0Vqskml{As2ox7aiR1`iO0-I>Ej9w$wU4}=akZF z2Tt~%@#^n4@v4sAm|(_sf7CB}c6FtQJ1CEeKL!63yN+wTov~CBT)E*l;g6=Ol(ZEw zUZZQ|`8fsDM#%0)#cDf8YDwGv?}D4ZHWF&cost#E%TfKILD{S1<%U;LL5HtiL*|A= z<9qnt8Z}Ek6uQJM^_fOdg#|sUkfd@A#$o&5*aojtsH^hBwMeeY;mgA}9 zp@i#k)V8Z}*|H#M^Dvd;?i;;V<5N`znVDj|S4>2^dyX)PZWk<@I@#$xBc}#xzppgD zXQ|WV1f-EByMydgTB;L-Q}0rrDqMUG?4O454vr(mJ2wDpDUqDC*jA{74@o&=Na&_= zyZ@GH{kUcUL^a3v+iG@JQBCq&aK?_Lbh>vEVg2q?4E71{M9O-8a+bbQrebO}$QVkN z6}_|EBhGqyH*MGM$!EqY?ECIHEwhDhPzE!u-6u4~T(6Hh z!|vLiLj*_3748svZ7K>jV9hAVAmT~}M6?Y&d1u8VFEc*2J41_5QMe+rqjR|@qoA;f zV{nck3!+7g*DGZau;xJ`rE@7_BgvVqSJ2*azF>(J%tkrGAY&o2i!o=^nQBra~ZZcH}09H8rdGLh1%Dy_I9ujqRVpDldz`}2Y5@> zB{Y&2n9=t18A`vY&N=)C(qQwQo3%y=<=p_nl>V_WY`$-|1)2CUH`fjSc)7n8jGy=G zbZnmAe~A9;YVtqzLD;UqJ(ZPJuL}$Ltyt#9x501Kt6%Y!xUkMX>OS=H-Qd&8%Iq4R03i6nn178_)nAfxhilRYHwH8t;aqI$yo<5;qOXl`M>+&v$W;hD+sqBcL7m}8{C z$;zqZ(mLuHs$8Fs4SYMuz=io#&h$Kl5=dlDhvWyX*X(j@#itIcCP3`5+t_DB*F^^f zyUNuZ?a-rvAGDZRbNsI12g%uP;aUOJ3}(+Nc75i{!+ja*JrfVz-xXl5rb2rSz?*-W zxas1y)|sPP9GR6H4h(WS^9TUIdPxcMZr5SCU<@o4+IG1C4^XxH{QRlFyzKM{`;Eb5!oqqFVV52Pk%LI?Aj2Co-i zkpck1ckN*3REIuyki~X2BQ>nTG7mj&RbFWJBTs)Cvd{HZC{nhCms6eY?JLp7*4E#< zUvTBqy<3gDQfF7XQ@^VS&3a})!Y&=$oyHvSqEqqv1{&IA@$TJ%%8IF#qDXLaLU95j zQSE?y!?6f;lLeUj^ZOiD^{L0>ezb1C7rs~LmyV`S%Q+u|+UhfWxEWHBp|@6)v*sQvuiY9kbs-fyH36?)G9 zO!xPmW;#81pZ~-=Xg_zt@})9yS^XLItPaFLu&kYEG#VUsb4g)1`YklGR<7PUoj3Yr z_pL5DEW2BQWP{Xu>+F2|>PALk0ViUViL$HRyRZ9v&E3e~yDuaq?_5|x#{ zn6+E<-AfhdKIK+vub@&S*EE{G({Pt-*RY_pQS+f;1>|txN?#Ia0BDHTTe&ual?i6z zq5IRC=?S}sd%Q-bqVgd^$GLXZ`C7SiYUY6x_Xt4fhH4PF&28S&c6D12{QdA!VV>F+ zKu7$gjwPcO9C-Ro|Esktb7kSx4L~7~j&EkHP1&6KH1ZwZVc5SCC=j+aB6o0UL8q5d zrue#=bwe4CC82j6zHBPT97I}lc|*#wa?>+kvyb1e@U0qoOw$?ZF-k1cW zS-F@MvP(ZaJah2UGUA)?3!ZAsoO?-&8(uaT>G9gt&()uaM~olLIBBNHm`g zNOUG6JXz*C?Bix5#EI&BI6Wm}JK)i0L8^Dr&a-uB zbMQ_Kd&-zIiJMt@h(OanFtr^CK_(-4fqIgJ-EgVfaV_d*tERciO|J?dx#|o2t}H1% z;`u)Sm*~g^SnJKx^&?$0n10^5+$K!$$&5Rn!UHUiZV5Z-<*{zPoFqwaZ7ln!Fvi#q z0KBx!7%5@N1n%~7VLl6enP}O%CG%D4?i|=7VF17;&bMP}RN3dD7UZ5hmJ&9RBmRx= zM|P3KgbMK5iiAxAKVWRzZq4uHQAha;B26f=ev-A-kP0(xP4F-S?W!a%yxx}>|1{*! z1di=fg5yR(FNV91w_?xg*c)zY{YNKu+01Ru_;Zr~Jlp@*%y7tK;$<%+a%z5FyAOKk zV4q-KyO+b~6)>cQ~nr_3AJ3M#4j) z@S`nV8#T$X7Z}@V8Xc&|y+Iz}8-(dM!9*xw>ChWjruH3)hL8_;AVx$l4Co>o$Wc2d z{sbXVraF@HVIJ6-2U+VCyiQ&Bb34Pfva4!40(j)MIk_d0A=g$si|>Ks9sY~K-6rb= ztW0#WRZ>xNcI}pB_u^C=d+fY0G}*N3we|o{52Thxfk@(`EHuPSI(&WrFWzf4MOvzrs>w%d!Rs zyv*6}hOgg*l;El7NP99Lg?~x_K1hRv+Y?S=U-0J8k>NXulx(1mX>F;HOHiT^ zQ?J}E>`@<-bpoXN@egr=t0`(tyKo#Q(r+N+=;ft?=04@XiGuiCIkfd>{ds7}lObj| ztZ^N15OO zZy6x|Sn7u#KSpn02GSWUU~L&TG&m_%b_w59)jY`D=#d_6wNRm^CGUB;fXjBFpsgW5 z=bmzj8qM#$l&)`1*1<)d$BLe74g$ZS;`3+3*$c^SZw;T@xtKSDi&%ca2w#b+>zDz#YL&t zxf{AN)r$_x#Iz4vW&FiLslzS9X{^cr_OWfpbUK0dSju$tC?6#?>;(YkpP*K~NA*uT zwqxh&!|x|I+my@LZWnK!bocEl(T>^G*O;A@a2p0%PLMkGBi?zsaPmww2wI>0^Q=!#(eBz7x3?Mxp|J&rg0{0u?6O814k zzYKaSZi3tHSLtf2##y}jK=($%H1u4sE^;i;hg6P2m#4KueX49zfa+YW=581*W=tQG zX*QM@xFQYKXQu!d^dSR^tN}j1Scu-(^&cZUoVG2f=@fGwvzs@u(f_|DcE*)|p4fx^ z2OC$?wsnWb&GXZCBlm7l5(z@vxa+#*KCUP;rM0zir;`nHM$du8@!}+K_X&zvZdEq5a^!6M7-YH>EacSlkIB?;`6t+hfk754E87*Qe&0O+YI=AM_y{v%Y6&@PgJD?gX(%(j;(FY)^T zAtqi2WIj7~jAKzF)vQ(GBVV}ZA(RgQm`X&@7dX$;A0JBrO^7=XZ*;Fh0QHl3U(ZSL zq)7Y+(N$KEm4qE0ejDelk-7eX|NNFP7jo2kn_lMzzvc24!1|-Df>dUZ749rF-k&N! zSr4D5#e$sKk=Hn$M-6b>F#)9e*%{;SVV2{8u83?pC+Z7ta}M76Yrp-+%`x3y!~4YS z=Iq`Pm&Mzf0*DkZd^{oCFy~H&Nb8LMuB!RS!BK>iZ?PIjntoE4~B;v7HBBd%}OF(Cw3Yw&;9_YrSVR=e?bm9vaplWLGJgjjzI3fId(2_TQ_L zAzzT5lIAeW1y)n(+kP{vk~6)Fks!IQqE=G==ri#4e?T_ zWG3bPNa1RScmdnO6J3yjV|D#mfIS^Ah&B{iB?JuOqvCM4V*;1_h7DFgqUNgo2A9&ma;8l(m^9Y=ptW5^3G@2qX}AuR44+U;*0xHtfQQZ_`$aQ3k*xkXCLN z1xdnpl{T?$QB8*F$f2B~yk-B@^%65YxuSTQdWvgu$Q(9DSvO9jTa%%~wqTp)b%tHJ ztA@wads{wGg?$IOsv3SHi7FR9^gt$NspRX;ti7Smn64q7RSKS@wm+hs zBB7yC4c}e`9=sr%=9%{CIS5?)ykeQrkooem3=&jMs3lJ1eS)F$5Qoa<_>U#G*$DJQ z+7CI2%2Z>kLORLn;B-GxY&)r3YZB+E=ByUIX2agzyrZyzEr+4q>W8GoD=TNT*VfMT z_j``(U6qVj0)Ij5$8=%CFJ!+FNprdn9(&;^z0!&%-G4E)+^cmHJBpf+6CX#+mCaQt zCZVKnylPG0Fi6JJKAQ*k3j#=4I!+X-ylVA>M==Mz;2y`-Gm=qpg$vL@Wr0rGHd8@D z?MHoSqTSs^{NgBNWwgE-VOy(2R>ua8u+{@E2N~FCWggo+UT-yD%l>{?tMKxVL}s&T z@Mv_<`2co9?9$CYJQ z(E&QYuzOde}+NufJ)qFu+6oQn@x9MTZQF8l09#;@zT%&EE-V3FbF%ThMj>IPJbhC#DN z@8~3O2f7Fw$HGlTi6B~q$4A{&$`DFzH;j5AcO)dXSHpaVEF+cI`Wq_9i+OLFupLCX zF(Jh*;WsxP8O=pxC{iN9w7aDG`j9+3pKNL2ywd_jlWxp6DsC_AKzx2YM9$=FRI`-D>=2}bL)ZOOMXyN@t@tfUD_45XRM-qOAFx2uM>w-XNx)XN6+X1uDuy)ePj4N}Qp_uHs-j9HeS{{7Jgo0}<&MsH( zZ~|P)3@onrEcm0Ua3q{-`y%EO^x2Zj)fEX%rOC@prU5mC8|6j@ii;^MAv z|5?}MNp87h#QO)Guj2&0%3S%5+GcOg&rbGkW{~!MS~#r2X>lAcaQfjMu-xKoK9*yE z*axo*2aWU(X|gY64|-|BH4~I?+g*b;s0-L`r@3B6>)0koGu+VRK9zpG+WHx9M_1@b zYh&`pR+iYT<#^#a9a?0mr(rU70Zn9>GhS(8QoewPzAuEHSo$+$4wZ2zI=Ht_FR01e zW;&+{E<`rU>GfHC-Uz>aKE04`7cd}R#EfyO#u%)v4L>fx_DD!15#lE*=D_fqq6l|Y z1?yf&%S_NjMKzE7t*|X3#|VsHcFZ1|}4fa3-He-l%07W>I(8>t0-aKG#1u7<7~A}VY)AX8B%@&tB;o(Hh{#%JDjryp~ItVAqzco1zJOH zM~!si!Fp>oadPeoV5)?<$r^klPOu>uTSgZNiol=!4>&SIq&O^xTd3|Ty({RX0UzAX z=Vb?R5y<&vY3#W6%hH&*p%I;YuwB`3;A&>($kpNXjR~V0*+P~Q1d1KBz0mfuUpQek zGPc!8A&Lx?Ae+4+LTqbi1JX0w)#4yCzJ!crQgK>|XhR5+^SBiHeJRy8dS#3!5*RM` zPd$SEMMicYR>xC6w>l^g5|CR7QAZNcZ$I*MOo`8Ibk-&rq4x60D%vtU55un{H~D;( zW^N3<-FU0_#wPJOYUHXS-d22m)6IyO{q1Hr5>&4e1ogE%=*5c3{-IAR!PPKW8|>6g z1x#5X+{t#Pzdcj}YdDL1UO3}-KdkcXjJ(d`Jd+vEI4O>~1r9#5WWB7Ahs3JFL&JD1 z^e;Y=H83Zy5_+v;`-wGE(M>vnEz;o85t5N7z>n!Uk;UU9I*WY|!mL%Q;MF#ftEILV zgA|J}wPcjIcz|4WrG$RQYq?fi8>_`>`2%;|8J=5xlQ{>21iY<*;eCGnBjf9_@i7m= zzgb?^Yr1L54xp680>_y|d1&vjtM16w6>-@43Qu;xFhm;Ms_KZ@`OEQey&h7)>0+** z9$+VQV~&>QV?j-}0E^?Z^vDUSQP8#@%xr)6u5`YWmH0T-A%8JH%StCjuPRXy!GVY` zT?;|9ocWDABF*U{wJJYNj`_>zC#=7j9D{1_mkSrSb{q1LNpk<)IHNx{CgmP9cCOeK z4kV<=FPT{wHRofl)qYd|IDYy2FZYk4%?)E(H!NoJ!_e*4*wigArLalQB3M zYwU75V#Yl=rB}Oo*@+YS_SR5l;97qG?B@K8a)zNOKcuy)k>H&QRUz509Y*go-NkhLz%nItQm)Q*YpNUX0HrvDFDt!^_Mg0H7RrIdr zx0mp^iaF48UFDjYCweuMQ0`^>xuyWRFNAy}Z=(s0pYiFkmRx1$8`P>2drPjTLWfAp zWNKF|u-V#JfaiU5nQg9mi40Q9z9noiSOV5T>l3eJ@5y!7%8(`?3!SyhVJ6}d4AA}V z^LIZ&ri~Czf{27V(W7q$d@WXHQvdNP+gI{oa^vl#jxyq`Lmt~OcPuC*zOO9DBY~bP2 zo|af1V6hEaJIU<5Bi;%cuF*N=Bf14({G6v|f}6$`bB<`WkfFfPl8<>%VsjPJd1x;$ zBK9bYd*FTDc!K`MnK6gVBFNsXn(BtO@%ERt^NRwGi;`MtA?`U3Eerh7-@?^2H!z>f z7H7u&a)C+9=~b6O%eMvsPuseL4*6T$58h(`kcYO$whlakZG-`>VL>ifNVETi1RvQ4 z#O8@czJk$f(DqZ<4ms z+@()9rU~~lo&r4+5MP(jittOdF5USpdjQ)UcGP_0MH&ocLQ^HNS3@t{U`ck`y<=>$ zptdit8y9RV`P7~&C5KT<=MGLNR^XdhcT#5pz1uVQy4L(F4l+16AoBke28p^}^!$#> zw!70?@(xngjL((tL!feQO&(%F)WC>_<-V&XBas44a5FkvYJ47qjV}jEttFSMujjTU5aVpQ;Zu<5n7# znrnx1dG<>b(k>-d9KxPqAHtU6D@Ygnty($Z!VKU_sF2dz#am%V=-;9CsIlbo^Rf54 zGS4;KXE)iV4{PG|Qd?B-_|=vcIA6oM^?T_qzj^*ybJTgomoZZ|huEDmc{(&(t z8~je_<95H*6dMGcsD@GdH-Jp_Kro__dQo-Jp@>9peWBf*$?&`E!DAMih6r^2F0ywq zlSp=FbQ$l>^_NK$27pxkCggl9y?0yEx(by!&Zoi>Wgj$1{un&&sa`a-+x|rTJ;q~_ z0rKkf9?_Y8|BE-$A%E6}SO({w^EWU2D;g44dn<5LjOlGGA(1_d!U!?D$|BFvtOBNo zCBBW|*$x~AhKV^Im8~iA+Z2boy2YiCvkS^6#nz{PDl+m7`;qrP` zlJ{h^=lXqR?CC}clB%d-P+0Jmv7Fz*5#*FdF+A@t#`HkS=oe!mnzv8se!|`Zu`MbT zHD3b*ojDvm)W(8chU5JfRtfD)>Obg`v%;x=5nYSBv1+e^{I~buA<*zY+D)&2-_%h% zZ=XlAvZ5xh6e5;$(VSxFzR<}tVN$hnLJX&OV{Hqei(aXx`~ zX4{`CNyd#=&Dn9cclYAbrD|L5X3+Q7W8;6 z<5uxJr?-W57+hn0=uQ98=E=fz0Vf(MXx!S$X*b-qoQ_viW?3<*c{hUed27*5-dhUo z?KE(4W^`~sF#0dcs(f3B;t^JamTHtGFJt1RfS8(QIQ@$vYZV#c{rWRy)o z=9C$=vz<|1%KlQzuFv>XjeX1l4fW!5f)=67kxAVCh2D9|F&JX9Z^zfcz=z=nKX;GU z2YI<6sZBvLt>+mKY*6#{cy1-o8#aFodB(Pyy7kLBzQ>&Ov(RKA!{ztGb4Bi<4Q<;m z!nnP*PThGLPoa0}P8(LdVXo*KbswDI4`Wg80=qX}~l zY!9_8D|rM?r*=&wz9Ek)60Z7YN;uprvt&?2f!u3nDx))o%XAe^_Hs^CwD5bz42$Ko zclEvz2JEQkTa{YgW)RI^P%5}S$X^~UXt-TsYj<9E7pP*Un?zGP9o%LgjP;W+p9#te zes&fa^W6itaAj6oX)Um9t?M;erPtG(8D5NaYEDF4gEgZHT{6oj!Zg0ixt}(jIe&Ojt}zQ{gZm{3OTR)3McMb;3+Wn=d|~(y6_M9 z3+FH@1<;4eGP2l-yLbAXQ^_|I3{9f|=lJTfz+wa2^aAbuBXdvAsuatJqn{YP*++J zFm`Fo5HBL?D52;rf&$}Qc&ghjc5Hd6pd}kTl2R&*Du9&r8Ng&?&MFj<#1)Q{A@uE8t61fFt+*4$L211+t3*;p>}>waD;+ z_V#Rrn!-&B=}W^I{G8FW*$#0RU%}#OuJLA)_YuxQfXS}@h=V0}U_Xy>w?)AYtD zS{&Ox#h6j=w9svl;Wez(Fo7!ie6G4bkq<|j=fU%Kysx>&+m5J#w`cz)fdjbwJlR5<+MFdJimaU7`SIu zZKA%)1rh$OFgj_>g42$U($r%i^5M@lb2IS@PK0SRFA4s_=BvG$MR)FSA0LOzZ#v2= z5z%deW~qJCHf{+uT({bKT~o@PifSfURWz~PS7<^4t^Z*QaZsXLplAj%?>)_ zA;f)Uc(E<`-HBLqic?pz)GzuJM=t(?c)nF*vc;^`vf37nskECXfgyIfo7kytzI!#Y zLTop=yF58XG>(K8bBjM!lxM&=gtJD%Et;&eGKjD9f!Db1-53SW&m(M167BPV5sslI zABU5Uri!0tLfna~as>G65Zxh}p6y@5+xwjZ!)I01BSNaTAT^(cFH;VS%LtUN9k?~( zWsVIX z_3CLfWz7C^(dzV7WbR1tr5&AeRD$O3Iat0f(hq8Dvi>A?Y<^WMlJled4e3KZO4$up zNP!gvjH14VfBkSwB6{*UIFO3_Jo$)(OZGa&s8qvO*!tclX4evz1oZqMJ!RQ?)<+<0 zP*nN;c?|~U4%-T#iV&DyH6mHtPt5#N#AY$#!j->!Xo?d4ztGY-u)ic^p?!l5ZwC@< zHF1q^=ri}#$rmnVW)4lI4$fcCfGDoqW&h`BY+LX{IaHZv4rzvs0f|r3X^!-h<%91~ z_puZ9)V3!Asm{$x)!C{e3PYO`D7eHA5gDQyR~m9OYNQNu=%WO3V}miZK5}EoQQC+$ zVdON}qFLjW&gmeF&m> zq~js}IceZ%Tq5M%!j%%AdPB#xH0LE3ho z>L4+EF<>9e#|Ot#T&qmt`Z&==fg9jkw*|ly`svoy*NPc8K|dYC=}#vYUTyj$^Lk1* z7M#sDdNSLfKk;+eMVX+`TQ^ZBNlE_#xYlA(0>VaSY!9^FGC|!*dbJhPTaUe%qfZbV zw$@pAUcr(pS>m~(zE>+*^nPw(u3g+HJ#dk;F*0e~)Kz^5eedMbu-LhN6f!q+={s$& zIxVJV*GRW=3-tN!8b%}L@P%FLdX#yV_9HJ%q-j7R_sb5>Ak-P7^1KMMYG@u7^!0@{ zx0Xvh25^zvx0i|?Zhd@!{>5zNiX|foet?r*v>;?w=sK63H&$=TbL5BksbN*a zAbv(v%T`u8>w`KrvZMa)H6PonPS#Emj|HE*q6>@QNjBJgufndS1olNeq^3Mm4{Cdj zReETKpbg^DUNRak@Asj`%XVcsPYYV2#75#@&tV+PrBNkzpFch<`Ol%XrV+@bkw zNF}>KHEG)#;*1WpGMag_+^WpB-)J{>PnqKo_$af$$Wrvw8JuTNpWfLA8EzeE&X4(n zx7g&_cVr4Yi;x045wwl>uO1r|dTRYuM%+{V5UjW(mOQQ)wPSJWeUidIa!0xWug%`% znAeuR;v*g+$g@Yvi>xirq6#Fw$#5o^zcgFUiJe|u1>xO~&RMm1E>OEgy~jcJaF60X zHtKVDOz=?nTBfYh^~EF6FyTdhbH`mvkXmJuJVNWPsBSsg2964K<53$TAhvX3ffb~CiGJ)Dh zSGAhIp|%>*2ARFaEvc0&E5<>%%L&Mb!pfe))23=|B0c$tPd%O~WWNzWZdX0Uui zzN6*^Mvc3+T%vE%u9FK6KKHlQEu93c%CVG3wJY_ zaWjRjo0ppWB4!JFYVM^`jfbN`gntWVe((~*BB|RvB@>5ScXU2I2gs6f8rwx^r%(GA z|5R$3sU?wm2Pjf0OK4UvG{xY*jc%3ZDxgYI{zMZBG7hl|44^!L1_~ET+-rE}|SX-<400&mz)R2&#_Nj*EV|oaDaX z;`Gg< zNt*{Occ0<*7|>i}a)K9g){GNU?wsjwoNBV+HI%;zvx0!sn&%FjQ>mt40_E05(#vGV z{M+zCo#Dn4KkG^45${p?6nT>iqgTFuiMg<)1xIE_Eg_GVKZ&~AStbjWKGZ5cR3>SISF8jenMC&Bctcl(-ncdkGC;LQ8R6T4b}x0c4i?VFcRus`=dKJ>iF z*Zy-v8_QSyblAqWxwkj+Bm2zhj}rRn#P9cJVAnNVu`9T?%a6_T4d4~4oYsHvq%zI7 zm*)T6S>r6$w=!#DM-LrLb-cJnzFazYCz~hheq{U<9%es<2k4{T5`LTNNMKBAeY$Y< zlSRz8ps$LqT~9Scc}?a0tJ}Wt-`mDnUa9q96X9&ARCk+xW1Xwzt5)>QDu?ljt$?uW zz1lDzaqlY8Y2zkK-gYIn+B`Eac&Dw-nfLi=F-5;qL@>v*Z)OY+tF%xKqq4T+HZ35_ zA;d0&$On#RrVEKk>rorvnm{HtF_#g1;g~aZ&q7cZWP9P#0Q6;fo2=ypc6sVFvhXyn z(->Gpt~7uxM!y4RmWf8QHD(|D)W@5bY=DKodBwHT-^sl%p4<|a1W%yv2b{b8GZ18W z;&=C0&GEmeF#R`mk8{uRsLolq^L;Jh^3X6Yj;vq{CUq2yVyS_X0nxtw^B*CJ+sU~P zc|8MA*=E!DxT#+X?nlHu+WP~bE&PVl|D*yQlP)6Ysyo|%_Kl5QH~Yr>4yXrP{+0o8 z($Ds&Wn&%44g6*lw8TUt#xzpXQ|)oVd`V@7#u7|qNn};RRG?^xt&vZh_wPY%ouD3U zdbX-}Jy4Cdz5@{EFV;Gj*@FJU*V)E1$#6%)U%9VfNuIrC0>AyDNy6k@P2caDv1b48 zc^@JN{cGMw9V0vbM`5WlDD&S0lE2;hTVbhE_MpyeKDeKp%}s9*!F5_!2lSw#c_5?; zn_rmun#@U%2{n-^@o*HEC(*R>Lbd=D4A0F<5Q%z{dW^&jk-*}0kQ`sK=RiWb)_8@G z>zb(5uUzrB!#{JyQlM8}Bl^3YkI8uO0z}>?NAm((7GnhcFK;o~9OoR7t<@Ek#9&Wm z-F2r6@cK2l;gx)WSzLCZaBO_1U`l$4=**F*IET!;&*dD>6e9BKf+gcoh3i|tF3_vP z_iP8)Jo}Nzp`@zGzg=--z9imuQiM}(T1HTI$y82E8EH;-Br5T)lktL7s8)&dC!wuu z1RTYiHoML4_o??4OsH8Si`O!EIbxWD->>w|PqT;DCH|GZ87ADckQO?YRXchpplI5+ zv=A;09~Ja(w~eEVN5$Do=o@b32zDa@kNkG=u{EqV6lGpdG?#Zo{t+f=4`g9(MjKiN;LYn;Oy#YAGYx$gT8X>(y%OPFaa{gaWB6|qxH)l90r@?U zLCg4PtTxoAXQ~Bz$tErGf+GuV#t?co#+`(<#w>PUsEgyMRqeFwds?nMR+6aN!YGNLD zc@mhc8+S-ItZ%MB$m#j|IRv~q`mB6Y3-3wEp=0{=0deTeA!PVgDEdYrI z-Z)efaTu`fKo|dtuULTxqGlI(<8Z_JByaf#*nFg}W;nDv+ix~~15PD&KiITVY|=Id zqDlDgf!G9k#tZBM#%y>Up&=D>-ahW{&0c?Yl;fRcZ>-B5br`wD`HB{Ar2cX9A0gWR zqixW`xXh17P+t`)?06gZc~%F{l)1~(4?yjZ zms-u&UUbhsI@VKSIRe@+7h<{|S$phvhx;n`sv@_ugEfozg5Xu7S5K#SPs&Mq4Yt@g zDLUyMcoet5VPE9dCIL^;F96K)1(-1_Rb9N??KeM>Njdn_!j#wM!Cd$PrsHLb1bDD)e_HRvwWP+>rSJ4f>nC-U~3(Cp(b7m8o9?PcIh%hdq*j;m9)HK zSf*u|j4DnT%Ox&;edgil%6lo38R)W=Rt7#3Lv=amdND&)7 zO>k&{iZ|Oy4j~F(P&5_E3n7C>mQa#g3RkUs$jGy5ShqwWB{i+2bnZ=<+C;ei%Bo{C z$?9LKMj!JU!gZg}`u{2$u{xYDZ|=x}qo~WIo#B0JWv$NPqd3^&&YPfIwp&iszpWc} zPpt3tMk|4=7faUI6H3jPDVj_vFddzG)A9otj_k+`6%kA!U%U;35^{YH(qwGxp8CHi zxcxZ16Z(-E#|18IX(WVFD{XyH2kwJxF183chDGzG@zfu>ZsEErkF22&@%pl>~>%d zZR|`&>&F&a2RtX=Zph@1d)mLQ8j@ho>m;pjDJjr0bDKYPWZyyaa7=v&=<&2<$AH(J z7ASKtZuCcamFuXw7q^9CJ(P(g$e%VIv1^Q+4%yqU$M8cWqVK4Vej0+hIX2}P&Kq09 zo=%>smawbHz&Xy>WQ5M)qbJLH15?RMM|#=0RiKs3&OE)A&S8wI!SDXES;s$_E8|HY zm2LI9zY4^OL)zf!Q+MS48;V)su+jQ|o)ltLwHr5}?*FI=VKbQkdApTDBBQ@feZ3Fws=y zhVE0B5L8NOkJL&+>m?x8W94Z_$^%>;myM7g@On!AVIL1Q$c-7@*g9{U_; z6j^nW8HI;Z-17|jb9vXLGIUj*MF-tpcnha^5LE99g+oJxe43hKBvdbN)BhRj^?Jt( z^}hN?s8^6CX&nd)SbNtW096;o-mO=IR(B(7n4GZu$+{-j(dO=!w7H^rm90e*RL4)a zWj|C*Q@fcMgqr@oZX`StDR}TNg16L4pSLd!s|07Z&cwXB3{O8DMk+i04 zxyQUXj7SXoq$|p$;%C-((mO47l~Hz{aUOn}PN`HqPA?%U3<}Zzx@bw7eKaps(o^48 zYc#MUg}s)rSb_Gu`uhKA@4kbYO!qy2qqv~%0xGcRO0gj*O#$f=z%BwRB_d!{K&1B) zN+Kf5A_@vZAe4ww1O=29lK{bjNDsXv5J5rR>l3p2s2mt_TJQbalODub;i_wgDSs5u|CiL6NGmz0LlSzR}QfZ+i z+<)$wO>7hUD(#W&wdtYyVt9zbl#NSl88AiMdN^+8ZSO-29xutjeV9$1m|PS>b3JCC z57na+D}|dDhdQn%7x6UwyXoom{@(~D?bjrtp8_}VdM9L0uT>}Ah~fv8s2}h@y3G2e#1+&3A-L6}+ch6=-$9oE6*|Nj zqD3NA547hICFB6mCnrD5>*AH-^aCBI$DMwxR3`53-!?r79B3&JMtY?jlRMMBRqapH zlt5x%1aPP&DI)rcPkh05TM&NnXkiMdDpWu2*Ik7fRiLswiCkQ8*Ufg|B{hs+w3EW0 zEc|Jfqp;j?Krjr;O_BAx=QrR{&mj?m&XZs;T%pWZa|D)FE;_&o&qrC&n>f^&UAz`Z(mv3S7-@=UoQA?M1~-fbk|*>t;`i7Nv-G9T6p|gDeg8p-{feM z+-5H`5beo!hp;;~@Kt9wG{?YomP=K3y|0mmD-2+Vm%acf%NR4N;UWZ%h^2?g08dVE z@NJ+Q+knFnNR*;?h*$lTHV?uGMoPFCMV)~MeSqGV=>+?M|XLn!z5Xa`ps*3|F9zR$+dAx zfdXpN!cU>0QQf()_eAz~eckN6`UsNp=RBwR_5dIQE&lDO@mqKrPjalj3OHiGSN{JP zvSsyZ*Vwf+c5RJaTVvPO*tIowZH-;~54(r2v1@DW+8VpI#;&cgYyW#Fb&XwHW7mL% z`@aorTVvPO*tIowZH--9W7pQ$wKaBaja>s~58x!_8oRc}uC1|aYwX$@ySB!zt+8us z?AjW;2Art?x-b8&XDa@$vTH0K7rF?a007qVDc=%WtZiWwF9b%>msgAs#ClS?qQ|+% zOLoJfdNiu()d&hNnpzhym7bSP8o5mY%#h_oyGDH^`6MGy)n}7$mk7Feo+}*VP^C0t zz1XG!J;;J7_-^Wq$^NMF6w2khss)tZwI!k)v>P*Hi_X^Ydk!8v|E1V`_UwgDTQ_%| z$k#tj&oLElX6mt{ElT=_#IvtL#hKz%Ex&ER$ysow?RR2rf1U5|VUx(Bi_(8I-W_^2 zcIMbBCYFFQw(+K*JA!IBU~vmxS&n>t2w`wBej*2dPa5LLT}s}RAxC>Bu#oBmt#hbY z@n|(nb?MYtCpx>Ul;9_8mhv%(<`BWmX1P2|>mNd#5wBz0?HbmcqA4`@g&iJiJ}nJL zO8&UecG+`TkPmS{a-Ntl7PMbgQ!Z(^{%ojW-IWv2#M;S4kD}u#qPTtF=*eLU#eMgK z61fw;G~kEcbs|tSdSy_2M~%j-NQvAREh^x0KEN;8f2lY1V?);FOC~0; zR(*8ux5KxaN^$ioS=w2ATrcc5Vs1TM%gB9Mz_QZ`7wj?M;R_pt4N~RXPY=2$&Vfc2 z3HeGz<&d%w>XUbz_}?1L_2_E0b{Q9QCg`3Mx*o*Aum-eujRxy*Dn#tFS*I3h52%x~ zuDaUqP%iu+c|G{7Mz68?Hxu`D{AxGQ^g$;d*&fJY6imT(hjg6;P7Th@24e$MT8a-- z*w!J5Ccmd@)eu_~!nDN-*a1{3LLxAdoK~ufT|Y6ZGMaPw@xb4)YS0+7GmT?)^TaK3V}@A2*zSny|<9>o&@oB@xnQzHw|ziy>^M+~i*8wd)UnWb!`=Lc;2f^YYB<>$KTR_NdDah@C0)jR@be#VK8B(sXhIESaTToM8e zQrbD44t#tn1Nm8U-P_8xU4h%i=v`%%LnF75c<}y)rolU(o`u>W?YNEpEs9u==BKDu>5J2qBl>3?IPUCIZ>nu>I0Lbl-}{u-zfon};Nln`dc|tazM2jpp&rDiJ*G&Cs5}+GmIDcH3wy9?ucZ}}XPTqMy z=8;J~nE+AhcG@{{CS68^wti9awjo^SrC`$Jr5RJYyOqK)3>MZ{<%r$tRdcCo;ypKgUa8I(^;Z-cE^}QS_+me?Q!CB zrR)}X&iOiw{a%iprS^QSO@ao+a^ZOwc3dUfTNdXqXNq^&kVMc|zqd16Cr{fezH};9 z2@Gm--`WhE*bTqa$Etq|+y##L@+7v}zmeDs1f)OxmBbd^`j--0L|VwZ@UW*X*4(QP zd68L~vZvh+)rlP|GVQnWpv5>}Ug~K3PyZ=(LI04PRe9sFTN4cS@n6{Gir>5$@W-4q zi+h+T6_dU~7{KM9n4UN>k6%d&LE}CQ2k`@~-y7ItA9V%XWorJEnAKP8lK|S9?)?d< z?GG*IXg;Fd09aa!fnqO6R~ybGQ`df0s>BWHpgm}MdR7@>Z3NjK7?Wy?T*6(eDYlq| zxL1nJ$t%`ODKreq1OGV9cYt9@{}FF8I?wz%85y~4307zrKUhU{K=2BOgnxJkL~NCt zu4&VZAF{U{&Zt{Bn1CR9DPJxBYI%&)tyKFP9V9oh`VkQ}OkJ`xO>qj9b7ep65lkPK z?4G(hP<2vX`T_4HryByfJg@fGrb?4|$dgKK?ZrR5+FQ_n?$wI^3%uI;qDuolm8CiZ z>lY@I&V?OVf~3;@onscJ8D*t$HL%OgEzaJy8W$ch3|hIDsX36|sz)8>ZTgwYTc&-h z^h>D6YFjsT5QV%b2PR`Y(OByw6vhPi0i5^M+Cq! zeiXrKLNxh>g3vRdN4Pg36zMcJY(C)8d1mkHRo8z{=w6$Nnql9Q}xton9@Kv#9${uM-42?c4tDlJV4d;CbnYuBX%=A(!UJMY{vt^Zb0 zXuj1!UFU1mSB)3-HJg;m__!0_@xx{t);(9$$Y-UVSRwzV3`2O3O}$S?2Y4q>kHvRk zXTXE{*E;Tt)Xct@(PdJ4ysK%HbLfXGQkoM<8S`qIFfbh$m5ouE=p$q+-77k5q8&@* zUFJ7wZRoo&(09^W3NuL;3LWS<9?3+k77+Wv#=lh+wOgas{hkbF#ixi+8Gk{6@uVwEsGQ_P0;|IuwMv>B=lor!+OE3r`GcwM{rn26w|O zU&3C~=0+1fhwODmr0Dg=fKnV4=58K9pTY}wC#peV)y@8aE#m6;l&FG-qh2}Bp)Ts& zL!fD+fIOuz(uGDRk=2MT>xpjWu>-(O87unJ(y2hkwz`Y3Z2m6OpUF;C1l3#tbg*Ap4FL*?%+;8 zHUaf~bQ|$`&7losS_EQAjOjSCua*;BzgDY5f^jls1q9joa6^?-@Lp(WnMgU(p2|2( z4kl^TmbhBi7{07)K-*Ig^2>x5F^k_+wX3@5;CXq_RI=8xdwD8V>s=yDZ6M?ePVtlv)|d(ITzSrk3{MQIx^Gt>a~^+87j1SjrCe{YHm z=X-|wzYcoB3nOHq2`;AzLUKw7s9(Q^>tqdM4ddlFwjQA z{aXKtLYiws>nLZP0eZb5e#ay%W!>wb;;H$hQYk&VmlB%;gjYHhm3f_t6o5y==Z*^k zQK2}}3Q+5(5{MCiMmdX=k?M+qk4bzV9cPSIU*xvbNGc6!+4Iyr5W$Pa6PdoXiLl>$S>&`-heM2Jl+2Y4^(IPq9C zgNp!*HYhm7dS}`z_spuj?U>1%sNB-=(o&IOrXMCum?q*5G`FtgfxOc-^*%{_o0c9V z|LwFytb&E~sz%jQyN<|s_I=hgZs#KV&>cmpQ>p#<>%9k;%gO;2GViDbyQn~VDUn!o z*IxTPJl|&@>iIL2L#idwpPlsucitw4{WP;^$*<<{lVZ|I_saL{NAqr%Q*M?3>n>rQ zV!MUk81|xs|M`kyyBSby^?=Y1>`<3b#h|K$8OO>;^)%v>0CG+NaU@MSTj$KdzZ{^3 zL|whvnJc9Mty?x|I(Jq%8zd`IGy<5;v1l)um&O{_R8DtKRgKacJmO|i?{S+Ys_KIPdj zBE`5V?|{xKIz;I z)mSp&fg*ZZB*Aa#XH+?hsDexigzA2HaG^z}TUG`jIDq8#|Myu7lwZo`p|_@Y{kF1Q zltgaGcnmy!s1?h{_v|>3ysohK(o}zX3fe#8=$X{nQS`jS|7iQSg5_O8OBoJB;B|7# zZfqBxddq}9!#Q3^Z4OH@o{<(u4E1LX_2=Z{WRZTeQm@^R$WoUYnnnNMP98ZU4fHD5 z-r)^byB1f6EA{dHwBZ?P3L>#5^~?%RYa|+l+!dymK<(V!?}B|qy#AojL;~1!I-2F% z@Cx$5?Qtk?8f$Xpfw(b{03OT~d|e>pJMusIPvn2}@PivzpG`iSomH8`Kmqc5M=w+y zqfDb^Y9I}?vn}Yk^Zs<})#m2c%0Gr8s zH)7^XefQM7y1`2@VkZ5jvE3D?BS3W7@~Fa+Wh%?I?|Rsh&Oz~<9&SBPtwrFTZ~HT924Xd8c3p~BVr=8dQ=FY*)Ke(OTQB*4#L zl=?a1{C9k`jZpq!N^`yYJ{9FV6zoGK@JqNuMe>&ojm%pFfjOdMrboyrxm!y)W5ljKP1PGm96KY($KGT*!%GyO z%%RO4#;nteujP(xODXfT!5@5=b_`hUdg?NNChK#SRn#tcGt7XtZ4?88jhF9;mCgMpjWVi;?2yW+3XTdn+kY_Cw|m}miBaW zP|&^1cy^?Qor@^2^quRP@)-_=k#BTEgvD_-q-1+L2gjtLVkwGK49%u zedxJ=gw$9yDlK2OE>Am4wRHSmow*)_{nD*TLPwXuosY8W76GgBoM;`>NR{J4fFtL3 z;E%ebQ)9eXb>mAhVV=PDL~5~rQ@0&+Q#xPiIJPuV(^px2=R8qYakfs;mlE=oY-vGx zp&+3KVw=;JdOR3I&uuVl+>xUN&sGPik5^9M#IQ8j{?W5Nz8^2uW_!89th{0rq^e33o3rDugw{EGDlX{=!V(?GIX z&)0Hjd%!2NLe`?F!Iy#`zD`J@8{V7S`G9ld|Dg@iJaj1UXpLwP;H||A-Ktfa>pVP1 z7wP7CYo7+TUFVORF8Y*_V+RGr_%hlV(hz0CPD>8|PJ$Eh&HJacnIdiM=0K0qah-&L z^jC9NC+WgAy}d%I9vW)FWT8tf^zsYs@D(O$Pq>AG+E^t`tMv z+qq@IXXK zsHFHzfG|%B{0NZz3d;gN)etvycrIKrG4@pQLMc@Y8m5{y;Jx?Y6b$Q#Zb(tArscQH zGce;+oY=RDslCd$-Zup_+sbx(<`eVhmmT0u@d{=!oOlShRo}ganUN8Pt=NHt5iDA) z(}%&6Dk(k=%a>o>Ke+5lV;1T@zF;#@Sc^D*iY?nP1(xuf*>tZ~2umzSlm?!_?PFSu zh>xjEt3@tJ^X?I6fci!=v2a zDu%kY?>Gac#ztODx7eqzlWsjx?x|1E1L|Mnv-eE#-j^c0(#B5-*E}uB^{Pl-`E+fS z_otQGMyqBao^0l2y)vjE!Uao65icq(^F;o|)4aHGL-pXogH2q4-`XNh1K;FRwq6za z6TDd`BONe_*?`HP>pAP(fR}yhj3JPlease note that this is a monochrome OLED driver. -## Quick Look Video +## Quick Look Video ## [![SSD1306 Quick Look Video](image/yt_thumbnail.jpg)](https://youtu.be/0QMDpJgDQd4 "Quick Look - SparkFun Micro OLED Display - Silicon Labs") ## Required Hardware ## -- [A BGM220 Explorer Kit board.](https://www.silabs.com/development-tools/wireless/bluetooth/bgm220-explorer-kit) +- [A BGM220 Explorer Kit board](https://www.silabs.com/development-tools/wireless/bluetooth/bgm220-explorer-kit) -- [A SparkFun Micro OLED Breakout (Qwiic) board.](https://www.sparkfun.com/products/14532) +- Or [SiWx917 Wi-Fi 6 and Bluetooth LE 8 MB Flash SoC Pro Kit](https://www.silabs.com/development-tools/wireless/wi-fi/siwx917-pk6031a-wifi-6-bluetooth-le-soc-pro-kit) (BRD4002 + BRD4338A) + +- [A SparkFun Micro OLED Breakout (Qwiic) board](https://www.sparkfun.com/products/14532) ## Hardware Connection ## -You simply connect a *SparkFun Micro OLED Breakout (Qwiic) board* to a *BGM220 Explorer Kit* board using a Qwiic cable. +- If the BGM220P Explorer Kit is used: + + You simply connect a *SparkFun Micro OLED Breakout (Qwiic) board* to a *BGM220 Explorer Kit* board using a Qwiic cable. + + ![bgm220_kit_sparkfun_oled](image/bgm220_kit_sparkfun_oled.png) -![bgm220_kit_sparkfun_oled](image/bgm220_kit_sparkfun_oled.png) +- If the SiWx917 Wi-Fi 6 and Bluetooth LE 8 MB Flash SoC Pro Kit is used: + + | Description | BRD4338A GPIO | BRD4002 EXP Header | SparkFun Micro OLED Breakout | + | -------------| ------------- | ------------------ | ---------------------------- | + | I2C_SDA | ULP_GPIO_6 | EXP_16 | SDA | + | I2C_SCL | ULP_GPIO_7 | EXP_15 | SCL | **Note:** There are several jumpers on *SparkFun Micro OLED Breakout (Qwiic) board* that can be changed to facilitate several different functions. The first of which is the ADDR jumper. The ADDR jumper can be used to change the I2C address of the board. The default jumper is open by default, pulling the address pin high and giving us an I2C address of 0X3D. Closing this jumper will ground the address pin, giving us an I2C address of 0X3C. @@ -34,20 +45,26 @@ The second of which is the I2C pull-up jumper. If multiple boards are connected ## Setup ## -To test this application, you should connect the BMG220 Explorer Kit Board to the PC using a micro USB cable. +To test this application, you should connect your board to the PC using a micro USB cable. ### Create a project based on an example project ### -1. From the Launcher Home, add the BRD4314A to My Products, click on it, and click on the **EXAMPLE PROJECTS & DEMOS** tab. Find the example project with filter micro oled. +1. From the Launcher Home, add your device to My Products, click on it, and click on the **EXAMPLE PROJECTS & DEMOS** tab. Find the example project filtering by *micro oled*. + +2. Click **Create** button on the project: + + - **Third Party Hardware Drivers - SSD1306 - Micro OLED Breakout Qwiic (Sparkfun)** example if the BGM220P Explorer Kit is used. + ![create_example](image/create_example_1.png) + - **Third Party Hardware Drivers - SSD1306 - Micro OLED Breakout Qwiic (Sparkfun) - Si91x** example if the SiWx917 Wi-Fi 6 and Bluetooth LE 8 MB Flash SoC Pro Kit is used. + ![create_example](image/create_example_2.png) -2. Click **Create** button on the **Third Party Hardware Drivers - SSD1306 - Micro OLED Breakout Qwiic (Sparkfun)** example. Example project creation dialog pops up -> click Create and Finish and Project should be generated. -![create_example](image/create_example.png) + Example project creation dialog pops up -> click Create and Finish and Project should be generated. 3. Build and flash this example to the board. ### Start with an empty example project ### -1. Create a "Platform - Empty C Example" project for the "BGM220 Explorer Kit Board" using Simplicity Studio 5. Use the default project settings. Be sure to connect and select the BGM220 Explorer Kit Board from the "Debug Adapters" on the left before creating a project. +1. Create an "Empty C Project" for the your board using Simplicity Studio v5. Use the default project settings. 2. Copy the file `app/example/sparkfun_micro_oled_ssd1306/app.c` into the project root folder (overwriting existing file). @@ -55,8 +72,21 @@ To test this application, you should connect the BMG220 Explorer Kit Board to th - Open the .slcp file in the project. - Select the SOFTWARE COMPONENTS tab. - Install the following components: - - [Platform] → [Driver]→ [Button] → [Simple Button] → default instance name: **btn0**. - - [Third Party Hardware Drivers] → [Display & LED] → [SSD1306 - Micro OLED Breakout (Sparkfun) - I2C] + + **If the BGM220P Explorer Kit is used:** + + - [Services] → [Timers] → [Sleep Timer] + - [Platform] → [Driver]→ [Button] → [Simple Button] → default instance name: **btn0** + - [Platform] → [Driver] → [I2C] → [I2CSPM] → default instance name: **qwiic** + - [Third Party Hardware Drivers] → [Display & LED] → [SSD1306 - Micro OLED Breakout (Sparkfun) - I2C] → use default configuration + - [Third Party Hardware Drivers] → [Services] → [GLIB - OLED Graphics Library] + + **If the SiWx917 Wi-Fi 6 and Bluetooth LE 8 MB Flash SoC Pro Kit is used:** + + - [WiSeConnect 3 SDK] → [Device] → [Si91x] → [MCU] → [Service] → [Sleep Timer for Si91x] + - [WiSeConnect 3 SDK] → [Device] → [Si91x] → [MCU] → [Hardware] → [Button] → [btn0] + - [WiSeConnect 3 SDK] → [Device] → [Si91x] → [MCU] → [Peripheral] → [I2C] → [i2c2] + - [Third Party Hardware Drivers] → [Display & LED] → [SSD1306 - Micro OLED Breakout (Sparkfun) - I2C] → use default configuration - [Third Party Hardware Drivers] → [Services] → [GLIB - OLED Graphics Library] 4. Build and flash the project to your device. diff --git a/app/documentation/example/sparkfun_micro_oled_ssd1306/image/create_example.png b/app/documentation/example/sparkfun_micro_oled_ssd1306/image/create_example_1.png similarity index 100% rename from app/documentation/example/sparkfun_micro_oled_ssd1306/image/create_example.png rename to app/documentation/example/sparkfun_micro_oled_ssd1306/image/create_example_1.png diff --git a/app/documentation/example/sparkfun_micro_oled_ssd1306/image/create_example_2.png b/app/documentation/example/sparkfun_micro_oled_ssd1306/image/create_example_2.png new file mode 100644 index 0000000000000000000000000000000000000000..5b37c35cf282b4a677a5014d30a9e5066637eb67 GIT binary patch literal 59394 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 2020 Silicon Laboratories Inc. www.silabs.com + * Copyright 2022 Silicon Laboratories Inc. www.silabs.com ******************************************************************************* * - * The licensor of this software is Silicon Laboratories Inc. Your use of this - * software is governed by the terms of Silicon Labs Master Software License - * Agreement (MSLA) available at - * www.silabs.com/about-us/legal/master-software-license-agreement. This - * software is distributed to you in Source Code format and is governed by the - * sections of the MSLA applicable to Source Code. + * SPDX-License-Identifier: Zlib + * + * The licensor of this software is Silicon Laboratories Inc. + * + * This software is provided \'as-is\', without any express or implied + * warranty. In no event will the authors be held liable for any damages + * arising from the use of this software. + * + * Permission is granted to anyone to use this software for any purpose, + * including commercial applications, and to alter it and redistribute it + * freely, subject to the following restrictions: + * + * 1. The origin of this software must not be misrepresented; you must not + * claim that you wrote the original software. If you use this software + * in a product, an acknowledgment in the product documentation would be + * appreciated but is not required. + * 2. Altered source versions must be plainly marked as such, and must not be + * misrepresented as being the original software. + * 3. This notice may not be removed or altered from any source distribution. + * + ******************************************************************************* + * + * EVALUATION QUALITY + * This code has been minimally tested to ensure that it builds with the + * specified dependency versions and is suitable as a demonstration for + * evaluation purposes only. + * This code will be maintained at the sole discretion of Silicon Labs. * ******************************************************************************/ -#include "em_iadc.h" #include "sl_status.h" -#include "app_log.h" #include "sl_sleeptimer.h" - #include "mikroe_alcohol_mq3.h" +#if (defined(SLI_SI917)) +#include "sl_adc_instances.h" +#include "rsi_debug.h" +#else +#include "em_iadc.h" +#include "app_log.h" +#endif + +#define READING_INTERVAL_MSEC 1000 + +#if (defined(SLI_SI917)) +#define app_printf(...) DEBUGOUT(__VA_ARGS__) +static uint8_t channel = SL_ADC_CHANNEL_0; +#else +#define app_printf(...) app_log(__VA_ARGS__) +#endif static volatile bool alcohol_timer_expire = false; static sl_sleeptimer_timer_handle_t alcohol_timer; +static mikroe_adc_handle_t app_adc_handle = NULL; static void alcohol_sleeptimer_callback(sl_sleeptimer_timer_handle_t *timer, void *data); @@ -33,19 +68,36 @@ static void alcohol_sleeptimer_callback(sl_sleeptimer_timer_handle_t *timer, ******************************************************************************/ void app_init(void) { - app_log("Application Init\n"); - mikroe_mq3_setup(); + sl_status_t status; + app_printf("Application Init\n"); - if (mikroe_mq3_init(IADC0) != SL_STATUS_OK) { - app_log("Application Init Error!\n"); - app_log("Please, run program again ...\n"); +#if (defined(SLI_SI917)) + app_adc_handle = &channel; +#else + app_adc_handle = IADC0; +#endif + status = mikroe_mq3_init(app_adc_handle); +#if (defined(SLI_SI917)) + + /** + * Due to calling trim_efuse API on ADC init in driver + * it will change the clock frequency, + * if we are not initialize the debug again + * it will print the garbage data in console output. + */ + DEBUGINIT(); +#endif + if (status != SL_STATUS_OK) { + app_printf("Application Init Error!\n"); + app_printf("Please, run program again ...\n"); for (;;) {} } - app_log("Alcohol Click is initialized.\n"); + + app_printf("Alcohol Click is initialized.\n"); sl_sleeptimer_delay_millisecond(100); sl_sleeptimer_start_periodic_timer_ms(&alcohol_timer, - 1000, + READING_INTERVAL_MSEC, alcohol_sleeptimer_callback, NULL, 0, @@ -63,11 +115,11 @@ void app_process_action(void) if (alcohol_timer_expire == true) { alcohol_timer_expire = false; if (mikroe_mq3_read_an_pin_value(&alcohol_an_value) == SL_STATUS_OK) { - app_log("ADC Value: %u\r\n", alcohol_an_value); + app_printf("ADC Value: %u\r\n", alcohol_an_value); } if (mikroe_mq3_read_an_pin_voltage(&alcohol_an_voltage) == SL_STATUS_OK) { - app_log("AN Voltage: %.3f[V]\r\n", alcohol_an_voltage); + app_printf("AN Voltage: %.3f[V]\r\n", alcohol_an_voltage); } } } diff --git a/app/example/mikroe_alcohol_mq3/mikroe_alcohol_mq3.slcp b/app/example/mikroe_alcohol_mq3/mikroe_alcohol_mq3.slcp index 8477a387..2c437598 100644 --- a/app/example/mikroe_alcohol_mq3/mikroe_alcohol_mq3.slcp +++ b/app/example/mikroe_alcohol_mq3/mikroe_alcohol_mq3.slcp @@ -45,10 +45,12 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - - path: ../../documentation/example/mikroe_alcohol_mq3/image/create_project.png + - path: ../../documentation/example/mikroe_alcohol_mq3/image/create_example_1.png + directory: "image" + - path: ../../documentation/example/mikroe_alcohol_mq3/image/create_example_2.png directory: "image" - path: ../../documentation/example/mikroe_alcohol_mq3/image/console_log.png directory: "image" @@ -62,4 +64,4 @@ other_file: ui_hints: highlight: - path: README.md - focus: true \ No newline at end of file + focus: true diff --git a/app/example/mikroe_alcohol_mq3/mikroe_alcohol_mq3_si91x.slcp b/app/example/mikroe_alcohol_mq3/mikroe_alcohol_mq3_si91x.slcp new file mode 100644 index 00000000..459e8fbc --- /dev/null +++ b/app/example/mikroe_alcohol_mq3/mikroe_alcohol_mq3_si91x.slcp @@ -0,0 +1,69 @@ +project_name: mikroe_alcohol_mq3_si91x +package: platform +label: Third Party Hardware Drivers - MQ3 - Alcohol Click (Mikroe) - Si91x +description: | + This example project shows an example for Mikroe Alcohol Click board driver integration on Si91x. +category: Example|Platform +quality: evaluation + +filter: +- name: Device Type + value: [SoC] +- name: MCU + value: [32-bit MCU] +- name: Project Difficulty + value: [Beginner] + +readme: +- path: ../../documentation/example/mikroe_alcohol_mq3/README.md + +source: +- path: app.c +- path: main.c + +include: +- path: '' + file_list: + - path: app.h + +component: +- id: sl_system +- id: sleeptimer_si91x + from: wiseconnect3_sdk +- id: mikroe_alcohol_mq3 + from: third_party_hw_drivers +- id: syscalls + from: wiseconnect3_sdk +- id: si917_memory_default_config + from: wiseconnect3_sdk +- instance: [channel_0] + from: wiseconnect3_sdk + id: adc_instance + +sdk_extension: +- id: third_party_hw_drivers + version: 3.0.0 +- id: wiseconnect3_sdk + version: 3.2.0 + +other_file: + - path: ../../documentation/example/mikroe_alcohol_mq3/image/create_example_1.png + directory: "image" + - path: ../../documentation/example/mikroe_alcohol_mq3/image/create_example_2.png + directory: "image" + - path: ../../documentation/example/mikroe_alcohol_mq3/image/console_log.png + directory: "image" + - path: ../../documentation/example/mikroe_alcohol_mq3/image/install_float.png + directory: "image" + - path: ../../documentation/example/mikroe_alcohol_mq3/image/hardware_connection.png + directory: "image" + - path: ../../documentation/example/mikroe_alcohol_mq3/image/software_layer.png + directory: "image" + +ui_hints: + highlight: + - path: README.md + focus: true + +post_build: + path: ../../../utilities/postbuild_profile/wiseconnect_soc.slpb diff --git a/app/example/mikroe_barcode2_em3080w/mikroe_barcode2_em3080w.slcp b/app/example/mikroe_barcode2_em3080w/mikroe_barcode2_em3080w.slcp index 92b7b966..119f8701 100644 --- a/app/example/mikroe_barcode2_em3080w/mikroe_barcode2_em3080w.slcp +++ b/app/example/mikroe_barcode2_em3080w/mikroe_barcode2_em3080w.slcp @@ -53,7 +53,7 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/mikroe_barcode2_em3080w/image/hardware_connection.png diff --git a/app/example/mikroe_brushless16_lb11685av/mikroe_brushless16_lb11685av.slcp b/app/example/mikroe_brushless16_lb11685av/mikroe_brushless16_lb11685av.slcp index 4dc270c7..5af78901 100644 --- a/app/example/mikroe_brushless16_lb11685av/mikroe_brushless16_lb11685av.slcp +++ b/app/example/mikroe_brushless16_lb11685av/mikroe_brushless16_lb11685av.slcp @@ -42,7 +42,7 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/mikroe_brushless16_lb11685av/image/create_example.png diff --git a/app/example/mikroe_buzz2_cmt_8540s_smt/app.c b/app/example/mikroe_buzz2_cmt_8540s_smt/app.c index f31e644f..939994b5 100644 --- a/app/example/mikroe_buzz2_cmt_8540s_smt/app.c +++ b/app/example/mikroe_buzz2_cmt_8540s_smt/app.c @@ -1,38 +1,103 @@ /***************************************************************************//** - * @file - * @brief Top level application functions + * @file app.c + * @brief Example application + * @version 1.0.0 ******************************************************************************* * # License - * Copyright 2020 Silicon Laboratories Inc. www.silabs.com + * Copyright 2024 Silicon Laboratories Inc. www.silabs.com ******************************************************************************* * - * The licensor of this software is Silicon Laboratories Inc. Your use of this - * software is governed by the terms of Silicon Labs Master Software License - * Agreement (MSLA) available at - * www.silabs.com/about-us/legal/master-software-license-agreement. This - * software is distributed to you in Source Code format and is governed by the - * sections of the MSLA applicable to Source Code. + * SPDX-License-Identifier: Zlib + * + * The licensor of this software is Silicon Laboratories Inc. + * + * This software is provided \'as-is\', without any express or implied + * warranty. In no event will the authors be held liable for any damages + * arising from the use of this software. + * + * Permission is granted to anyone to use this software for any purpose, + * including commercial applications, and to alter it and redistribute it + * freely, subject to the following restrictions: + * + * 1. The origin of this software must not be misrepresented; you must not + * claim that you wrote the original software. If you use this software + * in a product, an acknowledgment in the product documentation would be + * appreciated but is not required. + * 2. Altered source versions must be plainly marked as such, and must not be + * misrepresented as being the original software. + * 3. This notice may not be removed or altered from any source distribution. + * + ******************************************************************************* + * + * EVALUATION QUALITY + * This code has been minimally tested to ensure that it builds with the + * specified dependency versions and is suitable as a demonstration for + * evaluation purposes only. + * This code will be maintained at the sole discretion of Silicon Labs. * - ******************************************************************************/ - -/***************************************************************************//** - * Initialize application. ******************************************************************************/ #include "sl_sleeptimer.h" +#include "mikroe_cmt_8540s_smt.h" #include "sl_pwm_instances.h" + +#if (defined(SLI_SI917)) +#include "rsi_debug.h" +#else #include "app_log.h" -#include "mikroe_cmt_8540s_smt.h" +#endif + +#if (defined(SLI_SI917)) +#define app_printf(...) DEBUGOUT(__VA_ARGS__) +#else +#define app_printf(...) app_log(__VA_ARGS__) +#endif + +mikroe_pwm_handle_t app_pwm_instance = NULL; -#define W 4 * Q // Whole 4/4 - 4 Beats -#define H 2 * Q // Half 2/4 - 2 Beats -#define Q 250 // Quarter 1/4 - 1 Beat -#define E Q / 2 // Eighth 1/8 - 1/2 Beat -#define S Q / 4 // Sixteenth 1/16 - 1/4 Beat +#define W 4 * Q // Whole 4/4 - 4 Beats +#define H 2 * Q // Half 2/4 - 2 Beats +#define Q 250 // Quarter 1/4 - 1 Beat +#define E Q / 2 // Eighth 1/8 - 1/2 Beat +#define S Q / 4 // Sixteenth 1/16 - 1/4 Beat -#define VOLUME 100 // goes up to 1000 +#define VOLUME 100 // goes up to 1000 -static void imperial_march( ) +static void imperial_march(void); + +void app_init(void) +{ + app_printf("- Buzzer 2 Click board driver, example application. -\n"); + +#if (defined(SLI_SI917)) + app_pwm_instance = &sl_pwm_channel_0_config; +#else + app_pwm_instance = &sl_pwm_mikroe; +#endif + + if (SL_STATUS_OK != mikroe_cmt_8540s_smt_init(app_pwm_instance)) { + app_printf( + "> Buzzer 2 Click board driver init failed, please run program again.\n"); + while (1) {} + } else { + app_printf("> Buzzer 2 Click board driver init successfully.\n"); + mikroe_cmt_8540s_smt_set_duty_cycle(0.0); + mikroe_cmt_8540s_smt_pwm_start(); + sl_sleeptimer_delay_millisecond(100); + } +} + +/***************************************************************************//** + * App ticking function. + ******************************************************************************/ +void app_process_action(void) +{ + app_printf("Playing the Imperial March melody ...\r\n"); + imperial_march( ); + sl_sleeptimer_delay_millisecond(10000); +} + +static void imperial_march(void) { mikroe_cmt_8540s_smt_play_sound(MIKROE_BUZZ2_NOTE_A6, VOLUME, Q); sl_sleeptimer_delay_millisecond(1 + Q); @@ -182,30 +247,3 @@ static void imperial_march( ) mikroe_cmt_8540s_smt_play_sound(MIKROE_BUZZ2_NOTE_Ab6, VOLUME, H); sl_sleeptimer_delay_millisecond(1 + H); } - -void app_init(void) -{ - app_log( - "- Buzzer 2 Click board driver, example application. -\n"); - - if (SL_STATUS_OK != mikroe_cmt_8540s_smt_init(&sl_pwm_mikroe)) { - app_log( - "> Buzzer 2 Click board driver init failed, please run program again.\n"); - while (1) {} - } else { - app_log("> Buzzer 2 Click board driver init successfully.\n"); - mikroe_cmt_8540s_smt_set_duty_cycle(0.0); - mikroe_cmt_8540s_smt_pwm_start(); - sl_sleeptimer_delay_millisecond(100); - } -} - -/***************************************************************************//** - * App ticking function. - ******************************************************************************/ -void app_process_action(void) -{ - app_log("Playing the Imperial March melody ...\r\n"); - imperial_march( ); - sl_sleeptimer_delay_millisecond(10000); -} diff --git a/app/example/mikroe_buzz2_cmt_8540s_smt/mikroe_buzz2_cmt_8540s_smt.slcp b/app/example/mikroe_buzz2_cmt_8540s_smt/mikroe_buzz2_cmt_8540s_smt.slcp index c2997ab5..c3f11083 100644 --- a/app/example/mikroe_buzz2_cmt_8540s_smt/mikroe_buzz2_cmt_8540s_smt.slcp +++ b/app/example/mikroe_buzz2_cmt_8540s_smt/mikroe_buzz2_cmt_8540s_smt.slcp @@ -44,11 +44,13 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/mikroe_buzz2_cmt_8540s_smt/image/create_example.png directory: "image" + - path: ../../documentation/example/mikroe_buzz2_cmt_8540s_smt/image/create_example_si91x.png + directory: "image" - path: ../../documentation/example/mikroe_buzz2_cmt_8540s_smt/image/log.png directory: "image" - path: ../../documentation/example/mikroe_buzz2_cmt_8540s_smt/image/hardware_connection.png @@ -57,4 +59,4 @@ other_file: ui_hints: highlight: - path: README.md - focus: true \ No newline at end of file + focus: true diff --git a/app/example/mikroe_buzz2_cmt_8540s_smt/mikroe_buzz2_cmt_8540s_smt_si91x.slcp b/app/example/mikroe_buzz2_cmt_8540s_smt/mikroe_buzz2_cmt_8540s_smt_si91x.slcp new file mode 100644 index 00000000..c5658820 --- /dev/null +++ b/app/example/mikroe_buzz2_cmt_8540s_smt/mikroe_buzz2_cmt_8540s_smt_si91x.slcp @@ -0,0 +1,66 @@ +project_name: mikroe_buzz2_cmt_8540s_smt_si91x +package: platform +label: Third Party Hardware Drivers - CMT-8540S-SMT - Buzz 2 Click (Mikroe) - Si91x +description: | + This example project shows an example for Mikroe Buzz 2 Click board driver integration on Si91x. +category: Example|Platform +quality: evaluation + +filter: +- name: Device Type + value: [SoC] +- name: MCU + value: [32-bit MCU] +- name: Project Difficulty + value: [Beginner] + + +readme: +- path: ../../documentation/example/mikroe_buzz2_cmt_8540s_smt/README.md + +source: +- path: app.c +- path: main.c + +include: +- path: '' + file_list: + - path: app.h + +component: +- id: sl_system +- id: sleeptimer_si91x + from: wiseconnect3_sdk +- id: mikroe_buzz2 + from: third_party_hw_drivers +- id: syscalls + from: wiseconnect3_sdk +- id: si917_memory_default_config + from: wiseconnect3_sdk +- instance: [channel_0] + from: wiseconnect3_sdk + id: pwm_instance + +sdk_extension: +- id: third_party_hw_drivers + version: 3.0.0 +- id: wiseconnect3_sdk + version: 3.2.0 + +other_file: + - path: ../../documentation/example/mikroe_buzz2_cmt_8540s_smt/image/create_example.png + directory: "image" + - path: ../../documentation/example/mikroe_buzz2_cmt_8540s_smt/image/create_example_si91x.png + directory: "image" + - path: ../../documentation/example/mikroe_buzz2_cmt_8540s_smt/image/log.png + directory: "image" + - path: ../../documentation/example/mikroe_buzz2_cmt_8540s_smt/image/hardware_connection.png + directory: "image" + +ui_hints: + highlight: + - path: README.md + focus: true + +post_build: + path: ../../../utilities/postbuild_profile/wiseconnect_soc.slpb diff --git a/app/example/mikroe_captouch2_cap1166/mikroe_captouch2_cap1166.slcp b/app/example/mikroe_captouch2_cap1166/mikroe_captouch2_cap1166.slcp index 534fcb85..a771a3c5 100644 --- a/app/example/mikroe_captouch2_cap1166/mikroe_captouch2_cap1166.slcp +++ b/app/example/mikroe_captouch2_cap1166/mikroe_captouch2_cap1166.slcp @@ -44,7 +44,7 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/mikroe_captouch2_cap1166/image/hardware_connection.png diff --git a/app/example/mikroe_co_mq7/mikroe_co_mq7.slcp b/app/example/mikroe_co_mq7/mikroe_co_mq7.slcp index 8b1a328c..3f7ff974 100644 --- a/app/example/mikroe_co_mq7/mikroe_co_mq7.slcp +++ b/app/example/mikroe_co_mq7/mikroe_co_mq7.slcp @@ -58,7 +58,7 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 ui_hints: highlight: diff --git a/app/example/mikroe_dcmotor24_l9958/mikroe_dcmotor24_l9958.slcp b/app/example/mikroe_dcmotor24_l9958/mikroe_dcmotor24_l9958.slcp index 8c82e245..8b715e80 100644 --- a/app/example/mikroe_dcmotor24_l9958/mikroe_dcmotor24_l9958.slcp +++ b/app/example/mikroe_dcmotor24_l9958/mikroe_dcmotor24_l9958.slcp @@ -47,7 +47,7 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/mikroe_dcmotor24_l9958/image/create_example.png diff --git a/app/example/mikroe_dcmotor26_tb9053ftg/mikroe_dcmotor26_tb9053ftg.slcp b/app/example/mikroe_dcmotor26_tb9053ftg/mikroe_dcmotor26_tb9053ftg.slcp index 18543776..bac25af8 100644 --- a/app/example/mikroe_dcmotor26_tb9053ftg/mikroe_dcmotor26_tb9053ftg.slcp +++ b/app/example/mikroe_dcmotor26_tb9053ftg/mikroe_dcmotor26_tb9053ftg.slcp @@ -47,7 +47,7 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/mikroe_dcmotor26_tb9053ftg/image/create_project.png diff --git a/app/example/mikroe_dcmotor3_tb6549fg/mikroe_dcmotor3_tb6549fg.slcp b/app/example/mikroe_dcmotor3_tb6549fg/mikroe_dcmotor3_tb6549fg.slcp index b65df54e..7ca0d1e2 100644 --- a/app/example/mikroe_dcmotor3_tb6549fg/mikroe_dcmotor3_tb6549fg.slcp +++ b/app/example/mikroe_dcmotor3_tb6549fg/mikroe_dcmotor3_tb6549fg.slcp @@ -44,7 +44,7 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/mikroe_dcmotor3_tb6549fg/image/create_example.png diff --git a/app/example/mikroe_e_paper_154_inch/mikroe_e_paper_154_inch.slcp b/app/example/mikroe_e_paper_154_inch/mikroe_e_paper_154_inch.slcp index ccf14950..a0c48e00 100644 --- a/app/example/mikroe_e_paper_154_inch/mikroe_e_paper_154_inch.slcp +++ b/app/example/mikroe_e_paper_154_inch/mikroe_e_paper_154_inch.slcp @@ -34,7 +34,7 @@ define: - name: DEBUG_EFM sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/mikroe_e_paper_154_inch/image/hardware_connection.png directory: image diff --git a/app/example/mikroe_emg/mikroe_emg.slcp b/app/example/mikroe_emg/mikroe_emg.slcp index 8ca4ad33..9929e8fd 100644 --- a/app/example/mikroe_emg/mikroe_emg.slcp +++ b/app/example/mikroe_emg/mikroe_emg.slcp @@ -41,7 +41,7 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/mikroe_emg/image/create_example.png diff --git a/app/example/mikroe_environment2_sht40_sgp40/mikroe_environment2_sht40_sgp40.slcp b/app/example/mikroe_environment2_sht40_sgp40/mikroe_environment2_sht40_sgp40.slcp index 75ed1a9d..769e085b 100644 --- a/app/example/mikroe_environment2_sht40_sgp40/mikroe_environment2_sht40_sgp40.slcp +++ b/app/example/mikroe_environment2_sht40_sgp40/mikroe_environment2_sht40_sgp40.slcp @@ -47,7 +47,7 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/mikroe_environment2_sht40_sgp40/image/create_example.png diff --git a/app/example/mikroe_environment3_bme688/mikroe_environment3_bme688_i2c.slcp b/app/example/mikroe_environment3_bme688/mikroe_environment3_bme688_i2c.slcp index c25b78fa..b4824758 100644 --- a/app/example/mikroe_environment3_bme688/mikroe_environment3_bme688_i2c.slcp +++ b/app/example/mikroe_environment3_bme688/mikroe_environment3_bme688_i2c.slcp @@ -48,7 +48,7 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/mikroe_environment3_bme688/image/create_example.png diff --git a/app/example/mikroe_environment3_bme688/mikroe_environment3_bme688_spi.slcp b/app/example/mikroe_environment3_bme688/mikroe_environment3_bme688_spi.slcp index a216f335..c6a23a05 100644 --- a/app/example/mikroe_environment3_bme688/mikroe_environment3_bme688_spi.slcp +++ b/app/example/mikroe_environment3_bme688/mikroe_environment3_bme688_spi.slcp @@ -48,7 +48,7 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/mikroe_environment3_bme688/image/create_example.png diff --git a/app/example/mikroe_eth_wiz_w5500/mikroe_eth_wiz_w5500.slcp b/app/example/mikroe_eth_wiz_w5500/mikroe_eth_wiz_w5500.slcp index d28c62ef..3dffa742 100644 --- a/app/example/mikroe_eth_wiz_w5500/mikroe_eth_wiz_w5500.slcp +++ b/app/example/mikroe_eth_wiz_w5500/mikroe_eth_wiz_w5500.slcp @@ -44,7 +44,7 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/mikroe_eth_wiz_w5500/image/board.png diff --git a/app/example/mikroe_fingerprint2_a172mrq/mikroe_fingerprint2_a172mrq.slcp b/app/example/mikroe_fingerprint2_a172mrq/mikroe_fingerprint2_a172mrq.slcp index 68c4b8e2..ae7be9be 100644 --- a/app/example/mikroe_fingerprint2_a172mrq/mikroe_fingerprint2_a172mrq.slcp +++ b/app/example/mikroe_fingerprint2_a172mrq/mikroe_fingerprint2_a172mrq.slcp @@ -44,7 +44,7 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/mikroe_fingerprint2_a172mrq/image/hardware_connection.png diff --git a/app/example/mikroe_force3_fsr400/mikroe_force3_fsr400.slcp b/app/example/mikroe_force3_fsr400/mikroe_force3_fsr400.slcp index b6ce3244..c9d57fde 100644 --- a/app/example/mikroe_force3_fsr400/mikroe_force3_fsr400.slcp +++ b/app/example/mikroe_force3_fsr400/mikroe_force3_fsr400.slcp @@ -47,7 +47,7 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/mikroe_force3_fsr400/image/create_example.png diff --git a/app/example/mikroe_gps_lea6s/mikroe_gps_lea6s.slcp b/app/example/mikroe_gps_lea6s/mikroe_gps_lea6s.slcp index 5d853317..6adb3989 100644 --- a/app/example/mikroe_gps_lea6s/mikroe_gps_lea6s.slcp +++ b/app/example/mikroe_gps_lea6s/mikroe_gps_lea6s.slcp @@ -49,7 +49,7 @@ toolchain_settings: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/mikroe_gps_lea6s/image/create_example.png diff --git a/app/example/mikroe_heartrate2_maxm86161/mikroe_heartrate2_maxm86161.slcp b/app/example/mikroe_heartrate2_maxm86161/mikroe_heartrate2_maxm86161.slcp index 16564d6d..375af7b4 100644 --- a/app/example/mikroe_heartrate2_maxm86161/mikroe_heartrate2_maxm86161.slcp +++ b/app/example/mikroe_heartrate2_maxm86161/mikroe_heartrate2_maxm86161.slcp @@ -43,7 +43,7 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/mikroe_heartrate2_maxm86161/image/create_example.png diff --git a/app/example/mikroe_heartrate4_max30101/mikroe_heartrate4_max30101.slcp b/app/example/mikroe_heartrate4_max30101/mikroe_heartrate4_max30101.slcp index 140cffa9..e3f0581d 100644 --- a/app/example/mikroe_heartrate4_max30101/mikroe_heartrate4_max30101.slcp +++ b/app/example/mikroe_heartrate4_max30101/mikroe_heartrate4_max30101.slcp @@ -54,7 +54,7 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 ui_hints: highlight: diff --git a/app/example/mikroe_hvac_bundle_scd41_sps30/mikroe_hvac_bundle_scd41_sps30.slcp b/app/example/mikroe_hvac_bundle_scd41_sps30/mikroe_hvac_bundle_scd41_sps30.slcp index 6e16a616..f316810d 100644 --- a/app/example/mikroe_hvac_bundle_scd41_sps30/mikroe_hvac_bundle_scd41_sps30.slcp +++ b/app/example/mikroe_hvac_bundle_scd41_sps30/mikroe_hvac_bundle_scd41_sps30.slcp @@ -58,7 +58,7 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 ui_hints: highlight: diff --git a/app/example/mikroe_hvac_scd41/mikroe_hvac_scd41.slcp b/app/example/mikroe_hvac_scd41/mikroe_hvac_scd41.slcp index 9c2f40b8..238a221b 100644 --- a/app/example/mikroe_hvac_scd41/mikroe_hvac_scd41.slcp +++ b/app/example/mikroe_hvac_scd41/mikroe_hvac_scd41.slcp @@ -46,7 +46,7 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/mikroe_hvac_scd41/image/create_example.png diff --git a/app/example/mikroe_irthermo3_mlx90632/mikroe_irthermo3_mlx90632.slcp b/app/example/mikroe_irthermo3_mlx90632/mikroe_irthermo3_mlx90632.slcp index fd95b55e..b6fc6842 100644 --- a/app/example/mikroe_irthermo3_mlx90632/mikroe_irthermo3_mlx90632.slcp +++ b/app/example/mikroe_irthermo3_mlx90632/mikroe_irthermo3_mlx90632.slcp @@ -59,7 +59,7 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 ui_hints: highlight: diff --git a/app/example/mikroe_lte_iot2_bg96/mikroe_lte_iot2_bg96.slcp b/app/example/mikroe_lte_iot2_bg96/mikroe_lte_iot2_bg96.slcp index a0eaf84d..c6fd6182 100644 --- a/app/example/mikroe_lte_iot2_bg96/mikroe_lte_iot2_bg96.slcp +++ b/app/example/mikroe_lte_iot2_bg96/mikroe_lte_iot2_bg96.slcp @@ -45,7 +45,7 @@ toolchain_settings: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/mikroe_lte_iot2_bg96/image/create_example.png diff --git a/app/example/mikroe_mic2/mikroe_mic2.slcp b/app/example/mikroe_mic2/mikroe_mic2.slcp index 6f46fbde..502a1c5c 100644 --- a/app/example/mikroe_mic2/mikroe_mic2.slcp +++ b/app/example/mikroe_mic2/mikroe_mic2.slcp @@ -45,7 +45,7 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/mikroe_mic2/image/create_example.png diff --git a/app/example/mikroe_microsd/mikroe_microsd.slcp b/app/example/mikroe_microsd/mikroe_microsd.slcp index b0b2f853..27c470bc 100644 --- a/app/example/mikroe_microsd/mikroe_microsd.slcp +++ b/app/example/mikroe_microsd/mikroe_microsd.slcp @@ -38,7 +38,7 @@ define: - name: DEBUG_EFM sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/mikroe_microsd/image/create_example.png directory: image diff --git a/app/example/mikroe_nfc2_pn7150/mikroe_nfc2_pn7150.slcp b/app/example/mikroe_nfc2_pn7150/mikroe_nfc2_pn7150.slcp index 743442ab..0fc8b525 100644 --- a/app/example/mikroe_nfc2_pn7150/mikroe_nfc2_pn7150.slcp +++ b/app/example/mikroe_nfc2_pn7150/mikroe_nfc2_pn7150.slcp @@ -36,7 +36,7 @@ define: - name: DEBUG_EFM sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/mikroe_nfc2_pn7150/image/hardware_connection.png directory: image diff --git a/app/example/mikroe_nfc2_pn7150_nci_t2t_read/pn7150_nci_t2t_read.slcp b/app/example/mikroe_nfc2_pn7150_nci_t2t_read/pn7150_nci_t2t_read.slcp index 54d11e5c..12603637 100644 --- a/app/example/mikroe_nfc2_pn7150_nci_t2t_read/pn7150_nci_t2t_read.slcp +++ b/app/example/mikroe_nfc2_pn7150_nci_t2t_read/pn7150_nci_t2t_read.slcp @@ -48,7 +48,7 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/mikroe_nfc2_pn7150_nci_t2t_read/image/hardware_connection.png diff --git a/app/example/mikroe_nfc2_pn7150_nci_t2t_write/pn7150_nci_t2t_write.slcp b/app/example/mikroe_nfc2_pn7150_nci_t2t_write/pn7150_nci_t2t_write.slcp index 3684da90..2bf58c26 100644 --- a/app/example/mikroe_nfc2_pn7150_nci_t2t_write/pn7150_nci_t2t_write.slcp +++ b/app/example/mikroe_nfc2_pn7150_nci_t2t_write/pn7150_nci_t2t_write.slcp @@ -50,7 +50,7 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/mikroe_nfc2_pn7150_nci_t2t_write/image/hardware_connection.png diff --git a/app/example/mikroe_nfctag2_nt3h2111/mikroe_nfctag2_nt3h2111.slcp b/app/example/mikroe_nfctag2_nt3h2111/mikroe_nfctag2_nt3h2111.slcp index 6fc753f2..35ce7cf0 100644 --- a/app/example/mikroe_nfctag2_nt3h2111/mikroe_nfctag2_nt3h2111.slcp +++ b/app/example/mikroe_nfctag2_nt3h2111/mikroe_nfctag2_nt3h2111.slcp @@ -35,7 +35,7 @@ define: - name: DEBUG_EFM sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/mikroe_nfctag2_nt3h2111/image/hardware_connection.png directory: image diff --git a/app/example/mikroe_obdii_stn1110/mikroe_obdii_stn1110.slcp b/app/example/mikroe_obdii_stn1110/mikroe_obdii_stn1110.slcp index 64c3e84d..179246de 100644 --- a/app/example/mikroe_obdii_stn1110/mikroe_obdii_stn1110.slcp +++ b/app/example/mikroe_obdii_stn1110/mikroe_obdii_stn1110.slcp @@ -44,7 +44,7 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/mikroe_obdii_stn1110/image/hardware_connection.png diff --git a/app/example/mikroe_oledc_ssd1351/mikroe_oledc_ssd1351.slcp b/app/example/mikroe_oledc_ssd1351/mikroe_oledc_ssd1351.slcp index c30b999c..fd132172 100644 --- a/app/example/mikroe_oledc_ssd1351/mikroe_oledc_ssd1351.slcp +++ b/app/example/mikroe_oledc_ssd1351/mikroe_oledc_ssd1351.slcp @@ -39,7 +39,7 @@ define: - name: DEBUG_EFM sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/mikroe_oledc_ssd1351/image/hardware_connection.png directory: "image" diff --git a/app/example/mikroe_oledw_ssd1306/app.c b/app/example/mikroe_oledw_ssd1306/app.c index 7ac74a64..f79cba26 100644 --- a/app/example/mikroe_oledw_ssd1306/app.c +++ b/app/example/mikroe_oledw_ssd1306/app.c @@ -3,39 +3,72 @@ * @brief Top level application functions ******************************************************************************* * # License - * Copyright 2020 Silicon Laboratories Inc. www.silabs.com + * Copyright 2022 Silicon Laboratories Inc. www.silabs.com ******************************************************************************* * - * The licensor of this software is Silicon Laboratories Inc. Your use of this - * software is governed by the terms of Silicon Labs Master Software License - * Agreement (MSLA) available at - * www.silabs.com/about-us/legal/master-software-license-agreement. This - * software is distributed to you in Source Code format and is governed by the - * sections of the MSLA applicable to Source Code. + * SPDX-License-Identifier: Zlib + * + * The licensor of this software is Silicon Laboratories Inc. + * + * This software is provided \'as-is\', without any express or implied + * warranty. In no event will the authors be held liable for any damages + * arising from the use of this software. + * + * Permission is granted to anyone to use this software for any purpose, + * including commercial applications, and to alter it and redistribute it + * freely, subject to the following restrictions: + * + * 1. The origin of this software must not be misrepresented; you must not + * claim that you wrote the original software. If you use this software + * in a product, an acknowledgment in the product documentation would be + * appreciated but is not required. + * 2. Altered source versions must be plainly marked as such, and must not be + * misrepresented as being the original software. + * 3. This notice may not be removed or altered from any source distribution. + * + ******************************************************************************* + * + * EVALUATION QUALITY + * This code has been minimally tested to ensure that it builds with the + * specified dependency versions and is suitable as a demonstration for + * evaluation purposes only. + * This code will be maintained at the sole discretion of Silicon Labs. * ******************************************************************************/ -/***************************************************************************//** - * Initialize application. - ******************************************************************************/ #include "sl_sleeptimer.h" -#include "sl_spidrv_instances.h" - #include "app_assert.h" - #include "mikroe_ssd1306.h" #include "mikroe_resources.h" +#if (defined(SLI_SI917)) +#include "sl_si91x_gspi.h" +#else +#include "sl_spidrv_instances.h" +#endif + +#if (defined(SLI_SI917)) +static sl_gspi_instance_t gspi_instance = SL_GSPI_MASTER; +#endif + +mikroe_spi_handle_t app_spi_instance = NULL; + void app_init(void) { sl_status_t ret_code; - ret_code = mikroe_ssd1306_init(sl_spidrv_mikroe_handle); +#if (defined(SLI_SI917)) + app_spi_instance = &gspi_instance; +#else + app_spi_instance = sl_spidrv_mikroe_handle; +#endif + + ret_code = mikroe_ssd1306_init(app_spi_instance); app_assert_status(ret_code); mikroe_ssd1306_default_cfg(); - /*Change segment remap for Mikroe Bitmap*/ + // Change segment remap for Mikroe Bitmap mikroe_ssd1306_send(OLEDW_SEGREMAP, MIKROE_SSD1306_COMMAND); } diff --git a/app/example/mikroe_oledw_ssd1306/mikroe_oledw_ssd1306.slcp b/app/example/mikroe_oledw_ssd1306/mikroe_oledw_ssd1306.slcp index 733c65dd..b59122cb 100644 --- a/app/example/mikroe_oledw_ssd1306/mikroe_oledw_ssd1306.slcp +++ b/app/example/mikroe_oledw_ssd1306/mikroe_oledw_ssd1306.slcp @@ -43,12 +43,14 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/mikroe_oledw_ssd1306/image/hardware_connection.png directory: "image" - - path: ../../documentation/example/mikroe_oledw_ssd1306/image/create_example.png + - path: ../../documentation/example/mikroe_oledw_ssd1306/image/create_example_1.png + directory: "image" + - path: ../../documentation/example/mikroe_oledw_ssd1306/image/create_example_2.png directory: "image" - path: ../../documentation/example/mikroe_oledw_ssd1306/image/testing_result.gif directory: "image" diff --git a/app/example/mikroe_oledw_ssd1306/mikroe_oledw_ssd1306_si91x.slcp b/app/example/mikroe_oledw_ssd1306/mikroe_oledw_ssd1306_si91x.slcp new file mode 100644 index 00000000..0e5d800e --- /dev/null +++ b/app/example/mikroe_oledw_ssd1306/mikroe_oledw_ssd1306_si91x.slcp @@ -0,0 +1,63 @@ +project_name: mikroe_oledw_ssd1306_si91x +package: platform +label: Third Party Hardware Drivers - SSD1306 - Mikroe OLEDW Click (Mikroe) - Si91x +description: | + This example project shows an example for Mikroe OLEDW Click driver integration on Si91x. +category: Example|Platform +quality: evaluation + +filter: +- name: Device Type + value: [SoC] +- name: MCU + value: [32-bit MCU] +- name: Project Difficulty + value: [Beginner] + +readme: +- path: ../../documentation/example/mikroe_oledw_ssd1306/README.md + +source: +- path: app.c +- path: main.c + +include: +- path: '' + file_list: + - path: app.h + +component: +- id: sl_system +- id: app_assert +- id: sleeptimer_si91x + from: wiseconnect3_sdk +- id: mikroe_oledw + from: third_party_hw_drivers +- id: syscalls + from: wiseconnect3_sdk +- id: si917_memory_default_config + from: wiseconnect3_sdk + +sdk_extension: +- id: third_party_hw_drivers + version: 3.0.0 +- id: wiseconnect3_sdk + version: 3.2.0 + +other_file: + - path: ../../documentation/example/mikroe_oledw_ssd1306/image/hardware_connection.png + directory: "image" + - path: ../../documentation/example/mikroe_oledw_ssd1306/image/create_example_1.png + directory: "image" + - path: ../../documentation/example/mikroe_oledw_ssd1306/image/create_example_2.png + directory: "image" + - path: ../../documentation/example/mikroe_oledw_ssd1306/image/testing_result.gif + directory: "image" + +ui_hints: + highlight: + - path: README.md + focus: true + +post_build: + path: ../../../utilities/postbuild_profile/wiseconnect_soc.slpb diff --git a/app/example/mikroe_oledw_ssd1306_glib/mikroe_oledw_ssd1306_glib.slcp b/app/example/mikroe_oledw_ssd1306_glib/mikroe_oledw_ssd1306_glib.slcp index 2b6ff5ef..90641618 100644 --- a/app/example/mikroe_oledw_ssd1306_glib/mikroe_oledw_ssd1306_glib.slcp +++ b/app/example/mikroe_oledw_ssd1306_glib/mikroe_oledw_ssd1306_glib.slcp @@ -46,7 +46,7 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/mikroe_oledw_ssd1306_glib/image/hardware_connection.png diff --git a/app/example/mikroe_ozone2_mq131/mikroe_ozone2_mq131.slcp b/app/example/mikroe_ozone2_mq131/mikroe_ozone2_mq131.slcp index 709ad12d..4bf1ca05 100644 --- a/app/example/mikroe_ozone2_mq131/mikroe_ozone2_mq131.slcp +++ b/app/example/mikroe_ozone2_mq131/mikroe_ozone2_mq131.slcp @@ -43,7 +43,7 @@ configuration: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/mikroe_ozone2_mq131/images/create_example.png diff --git a/app/example/mikroe_pir_pl_n823_01/mikroe_pir_pl_n823_01.slcp b/app/example/mikroe_pir_pl_n823_01/mikroe_pir_pl_n823_01.slcp index 62c009ba..3b573ada 100644 --- a/app/example/mikroe_pir_pl_n823_01/mikroe_pir_pl_n823_01.slcp +++ b/app/example/mikroe_pir_pl_n823_01/mikroe_pir_pl_n823_01.slcp @@ -45,7 +45,7 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/mikroe_pir_pl_n823_01/image/create_project.png diff --git a/app/example/mikroe_pressure3_dps310/mikroe_pressure3_dps310_i2c.slcp b/app/example/mikroe_pressure3_dps310/mikroe_pressure3_dps310_i2c.slcp index c5973536..0b68703b 100644 --- a/app/example/mikroe_pressure3_dps310/mikroe_pressure3_dps310_i2c.slcp +++ b/app/example/mikroe_pressure3_dps310/mikroe_pressure3_dps310_i2c.slcp @@ -41,7 +41,7 @@ define: - name: DEBUG_EFM sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/mikroe_pressure3_dps310/image/create_example.png directory: "image" diff --git a/app/example/mikroe_pressure3_dps310/mikroe_pressure3_dps310_spi.slcp b/app/example/mikroe_pressure3_dps310/mikroe_pressure3_dps310_spi.slcp index fc27b03e..1f20cb26 100644 --- a/app/example/mikroe_pressure3_dps310/mikroe_pressure3_dps310_spi.slcp +++ b/app/example/mikroe_pressure3_dps310/mikroe_pressure3_dps310_spi.slcp @@ -41,7 +41,7 @@ define: - name: DEBUG_EFM sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 configuration: - name: SL_SPIDRV_MIKROE_CS_CONTROL value: "spidrvCsControlApplication" diff --git a/app/example/mikroe_pwm_driver_si8711cc/mikroe_pwm_driver_si8711cc.slcp b/app/example/mikroe_pwm_driver_si8711cc/mikroe_pwm_driver_si8711cc.slcp index c1377399..6bbea1eb 100644 --- a/app/example/mikroe_pwm_driver_si8711cc/mikroe_pwm_driver_si8711cc.slcp +++ b/app/example/mikroe_pwm_driver_si8711cc/mikroe_pwm_driver_si8711cc.slcp @@ -34,7 +34,7 @@ component: from: third_party_hw_drivers sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/mikroe_pwm_driver_si8711cc/image/create_example.png directory: "image" diff --git a/app/example/mikroe_radar_mm5d91_00/mikroe_radar_mm5d91_00.slcp b/app/example/mikroe_radar_mm5d91_00/mikroe_radar_mm5d91_00.slcp index b0d27397..cbe9eff4 100644 --- a/app/example/mikroe_radar_mm5d91_00/mikroe_radar_mm5d91_00.slcp +++ b/app/example/mikroe_radar_mm5d91_00/mikroe_radar_mm5d91_00.slcp @@ -48,7 +48,7 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/mikroe_radar_mm5d91_00/image/hardware_connection.png diff --git a/app/example/mikroe_relay2_lca717/mikroe_relay2_lca717.slcp b/app/example/mikroe_relay2_lca717/mikroe_relay2_lca717.slcp index ba0de9cd..8c19ce54 100644 --- a/app/example/mikroe_relay2_lca717/mikroe_relay2_lca717.slcp +++ b/app/example/mikroe_relay2_lca717/mikroe_relay2_lca717.slcp @@ -38,7 +38,7 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/mikroe_relay2_lca717/image/hardware_connection.png diff --git a/app/example/mikroe_rf_meter_ad8318/mikroe_rf_meter_ad8318.slcp b/app/example/mikroe_rf_meter_ad8318/mikroe_rf_meter_ad8318.slcp index 96caf4f8..1788a13d 100644 --- a/app/example/mikroe_rf_meter_ad8318/mikroe_rf_meter_ad8318.slcp +++ b/app/example/mikroe_rf_meter_ad8318/mikroe_rf_meter_ad8318.slcp @@ -47,7 +47,7 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/mikroe_rf_meter_ad8318/image/create_example.png diff --git a/app/example/mikroe_rng/mikroe_rng.slcp b/app/example/mikroe_rng/mikroe_rng.slcp index cb3515e3..7d4d6529 100644 --- a/app/example/mikroe_rng/mikroe_rng.slcp +++ b/app/example/mikroe_rng/mikroe_rng.slcp @@ -47,7 +47,7 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/mikroe_rng/image/create_example.png diff --git a/app/example/mikroe_rtc10_ds3231m/mikroe_rtc10_ds3231m.slcp b/app/example/mikroe_rtc10_ds3231m/mikroe_rtc10_ds3231m.slcp index 0c0f2b28..9b0f1bd7 100644 --- a/app/example/mikroe_rtc10_ds3231m/mikroe_rtc10_ds3231m.slcp +++ b/app/example/mikroe_rtc10_ds3231m/mikroe_rtc10_ds3231m.slcp @@ -47,7 +47,7 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/mikroe_rtc10_ds3231m/image/create_project.png diff --git a/app/example/mikroe_servo_pca9685/mikroe_servo_pca9685.slcp b/app/example/mikroe_servo_pca9685/mikroe_servo_pca9685.slcp index 58413851..9a0aadc7 100644 --- a/app/example/mikroe_servo_pca9685/mikroe_servo_pca9685.slcp +++ b/app/example/mikroe_servo_pca9685/mikroe_servo_pca9685.slcp @@ -43,7 +43,7 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/mikroe_servo_pca9685/image/create_project.png diff --git a/app/example/mikroe_smoke2_adpd188bi/mikroe_smoke2_adpd188bi_i2c.slcp b/app/example/mikroe_smoke2_adpd188bi/mikroe_smoke2_adpd188bi_i2c.slcp index 787e8f9f..abf621fe 100644 --- a/app/example/mikroe_smoke2_adpd188bi/mikroe_smoke2_adpd188bi_i2c.slcp +++ b/app/example/mikroe_smoke2_adpd188bi/mikroe_smoke2_adpd188bi_i2c.slcp @@ -44,7 +44,7 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/mikroe_smoke2_adpd188bi/image/create_example.png diff --git a/app/example/mikroe_smoke2_adpd188bi/mikroe_smoke2_adpd188bi_spi.slcp b/app/example/mikroe_smoke2_adpd188bi/mikroe_smoke2_adpd188bi_spi.slcp index faecdb7c..ae1f1c17 100644 --- a/app/example/mikroe_smoke2_adpd188bi/mikroe_smoke2_adpd188bi_spi.slcp +++ b/app/example/mikroe_smoke2_adpd188bi/mikroe_smoke2_adpd188bi_spi.slcp @@ -44,7 +44,7 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/mikroe_smoke2_adpd188bi/image/create_example.png diff --git a/app/example/mikroe_stepper2_a4988/mikroe_stepper2_a4988.slcp b/app/example/mikroe_stepper2_a4988/mikroe_stepper2_a4988.slcp index c7014355..dd244efa 100644 --- a/app/example/mikroe_stepper2_a4988/mikroe_stepper2_a4988.slcp +++ b/app/example/mikroe_stepper2_a4988/mikroe_stepper2_a4988.slcp @@ -42,7 +42,7 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/mikroe_stepper2_a4988/image/create_example.png diff --git a/app/example/mikroe_stepper_a3967/mikroe_stepper_a3967.slcp b/app/example/mikroe_stepper_a3967/mikroe_stepper_a3967.slcp index d543526a..d5f78c05 100644 --- a/app/example/mikroe_stepper_a3967/mikroe_stepper_a3967.slcp +++ b/app/example/mikroe_stepper_a3967/mikroe_stepper_a3967.slcp @@ -40,7 +40,7 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/mikroe_stepper_a3967/image/create_example.png diff --git a/app/example/mikroe_stretch/mikroe_stretch.slcp b/app/example/mikroe_stretch/mikroe_stretch.slcp index 398f60bf..7a060c83 100644 --- a/app/example/mikroe_stretch/mikroe_stretch.slcp +++ b/app/example/mikroe_stretch/mikroe_stretch.slcp @@ -41,7 +41,7 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/mikroe_stretch/image/console_log.png diff --git a/app/example/mikroe_temphum15_sht40/mikroe_temphum15_sht40.slcp b/app/example/mikroe_temphum15_sht40/mikroe_temphum15_sht40.slcp index f298a5d9..356e5043 100644 --- a/app/example/mikroe_temphum15_sht40/mikroe_temphum15_sht40.slcp +++ b/app/example/mikroe_temphum15_sht40/mikroe_temphum15_sht40.slcp @@ -47,7 +47,7 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/mikroe_temphum15_sht40/image/create_example.png diff --git a/app/example/mikroe_temphum9_shtc3/app.c b/app/example/mikroe_temphum9_shtc3/app.c index 1f84a7b3..8691c485 100644 --- a/app/example/mikroe_temphum9_shtc3/app.c +++ b/app/example/mikroe_temphum9_shtc3/app.c @@ -37,37 +37,65 @@ * ******************************************************************************/ -/***************************************************************************//** - * Initialize application. - ******************************************************************************/ - #include "sl_sleeptimer.h" +#include "mikroe_shtc3.h" + +#if (defined(SLI_SI917)) +#include "sl_i2c_instances.h" +#include "rsi_debug.h" +#else #include "sl_i2cspm_instances.h" #include "app_log.h" -#include "mikroe_shtc3.h" +#endif + +#define READING_INTERVAL_MSEC 1000 + +#if (defined(SLI_SI917)) +#define app_printf(...) DEBUGOUT(__VA_ARGS__) +#else +#define app_printf(...) app_log(__VA_ARGS__) +#endif -static bool sensor_init_ok = false; +#if (defined(SLI_SI917)) +#define I2C_INSTANCE_USED SL_I2C2 +static sl_i2c_instance_t i2c_instance = I2C_INSTANCE_USED; +#endif + +static sl_sleeptimer_timer_handle_t app_timer_handle; +static volatile bool trigger_process = false; +static mikroe_i2c_handle_t app_i2c_instance = NULL; + +void app_timer_callback(sl_sleeptimer_timer_handle_t *handle, void *data); void app_init(void) { - app_log( + app_printf( "-- SHTC3 - Temp&Hum 9 Click board driver, example application. --\n"); - if (SL_STATUS_OK != mikroe_shtc3_init(sl_i2cspm_mikroe)) { - app_log("> SHTC3 - Temp&Hum 9 Click board driver init failed.\n"); - } else { - sensor_init_ok = true; +#if (defined(SLI_SI917)) + app_i2c_instance = &i2c_instance; +#else + app_i2c_instance = sl_i2cspm_mikroe; +#endif + + if (SL_STATUS_OK != mikroe_shtc3_init(app_i2c_instance)) { + app_printf("> SHTC3 - Temp&Hum 9 Click board driver init failed.\n"); + return; } - if (sensor_init_ok) { - mikroe_shtc3_send_command(MIKROE_SHTC3_CMD_SLEEP); - sl_sleeptimer_delay_millisecond(500); - mikroe_shtc3_send_command(MIKROE_SHTC3_CMD_WAKEUP); - sl_sleeptimer_delay_millisecond(100); + mikroe_shtc3_send_command(MIKROE_SHTC3_CMD_SLEEP); + sl_sleeptimer_delay_millisecond(500); + mikroe_shtc3_send_command(MIKROE_SHTC3_CMD_WAKEUP); + sl_sleeptimer_delay_millisecond(100); - app_log("> App init done.\n"); - app_log("> Starting periodic measurement.\n"); - } + app_printf("> App init done.\n"); + app_printf("> Starting periodic measurement.\n"); + sl_sleeptimer_start_periodic_timer_ms(&app_timer_handle, + READING_INTERVAL_MSEC, + app_timer_callback, + NULL, + 0, + 0); } /***************************************************************************//** @@ -77,12 +105,20 @@ void app_process_action(void) { mikroe_shtc3_measurement_data_t measurement_data; - if (sensor_init_ok) { + if (trigger_process) { + trigger_process = false; mikroe_shtc3_get_temperature_and_humidity(SHTC3_DATA_MODE_NORMAL, &measurement_data); - app_log(">> Temp: %.2f °C RH: %.2f %%\n", measurement_data.temperature, - measurement_data.humidity); - sl_sleeptimer_delay_millisecond(1000); + app_printf(">> Temp: %.2f °C RH: %.2f %%\n", measurement_data.temperature, + measurement_data.humidity); } } + +void app_timer_callback(sl_sleeptimer_timer_handle_t *handle, void *data) +{ + (void) data; + (void) handle; + + trigger_process = true; +} diff --git a/app/example/mikroe_temphum9_shtc3/mikroe_temphum9_shtc3.slcp b/app/example/mikroe_temphum9_shtc3/mikroe_temphum9_shtc3.slcp index 02c1f421..95085f94 100644 --- a/app/example/mikroe_temphum9_shtc3/mikroe_temphum9_shtc3.slcp +++ b/app/example/mikroe_temphum9_shtc3/mikroe_temphum9_shtc3.slcp @@ -47,10 +47,12 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - - path: ../../documentation/example/mikroe_temphum9_shtc3/image/create_example.png + - path: ../../documentation/example/mikroe_temphum9_shtc3/image/create_example_1.png + directory: "image" + - path: ../../documentation/example/mikroe_temphum9_shtc3/image/create_example_2.png directory: "image" - path: ../../documentation/example/mikroe_temphum9_shtc3/image/hardware_connection.png directory: "image" @@ -62,4 +64,4 @@ other_file: ui_hints: highlight: - path: README.md - focus: true \ No newline at end of file + focus: true diff --git a/app/example/mikroe_temphum9_shtc3/mikroe_temphum9_shtc3_si91x.slcp b/app/example/mikroe_temphum9_shtc3/mikroe_temphum9_shtc3_si91x.slcp new file mode 100644 index 00000000..90b2b082 --- /dev/null +++ b/app/example/mikroe_temphum9_shtc3/mikroe_temphum9_shtc3_si91x.slcp @@ -0,0 +1,67 @@ +project_name: mikroe_temphum9_shtc3_si91x +package: platform +label: Third Party Hardware Drivers - SHTC3 - Temp&Hum 9 Click (Mikroe) - Si91x +description: | + This example project shows an example for Mikroe Temp&Hum 9 Click board driver integration on Si91x. +category: Example|Platform +quality: evaluation + +filter: +- name: Device Type + value: [SoC] +- name: MCU + value: [32-bit MCU] +- name: Project Difficulty + value: [Beginner] + +readme: +- path: ../../documentation/example/mikroe_temphum9_shtc3/README.md + +source: +- path: app.c +- path: main.c + +include: +- path: '' + file_list: + - path: app.h + +component: +- id: sl_system +- id: sleeptimer_si91x + from: wiseconnect3_sdk +- id: mikroe_temphum9 + from: third_party_hw_drivers +- id: syscalls + from: wiseconnect3_sdk +- id: si917_memory_default_config + from: wiseconnect3_sdk +- instance: [i2c2] + from: wiseconnect3_sdk + id: i2c_instance + +sdk_extension: +- id: third_party_hw_drivers + version: 3.0.0 +- id: wiseconnect3_sdk + version: 3.2.0 + +other_file: + - path: ../../documentation/example/mikroe_temphum9_shtc3/image/create_example_1.png + directory: "image" + - path: ../../documentation/example/mikroe_temphum9_shtc3/image/create_example_2.png + directory: "image" + - path: ../../documentation/example/mikroe_temphum9_shtc3/image/hardware_connection.png + directory: "image" + - path: ../../documentation/example/mikroe_temphum9_shtc3/image/float.png + directory: "image" + - path: ../../documentation/example/mikroe_temphum9_shtc3/image/log.png + directory: "image" + +ui_hints: + highlight: + - path: README.md + focus: true + +post_build: + path: ../../../utilities/postbuild_profile/wiseconnect_soc.slpb diff --git a/app/example/mikroe_thunder_as3935/mikroe_thunder_as3935.slcp b/app/example/mikroe_thunder_as3935/mikroe_thunder_as3935.slcp index bed75201..95969723 100644 --- a/app/example/mikroe_thunder_as3935/mikroe_thunder_as3935.slcp +++ b/app/example/mikroe_thunder_as3935/mikroe_thunder_as3935.slcp @@ -43,7 +43,7 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/mikroe_thunder_as3935/image/create_example.png diff --git a/app/example/mikroe_turbidity_tsd10/mikroe_turbidity_tsd10.slcp b/app/example/mikroe_turbidity_tsd10/mikroe_turbidity_tsd10.slcp index 2652fa57..a3f21881 100644 --- a/app/example/mikroe_turbidity_tsd10/mikroe_turbidity_tsd10.slcp +++ b/app/example/mikroe_turbidity_tsd10/mikroe_turbidity_tsd10.slcp @@ -47,7 +47,7 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/mikroe_turbidity_tsd10/image/create_example.png diff --git a/app/example/mikroe_utm7segr_max6969/mikroe_utm7segr_max6969.slcp b/app/example/mikroe_utm7segr_max6969/mikroe_utm7segr_max6969.slcp index 45b55f6d..436ee2a2 100644 --- a/app/example/mikroe_utm7segr_max6969/mikroe_utm7segr_max6969.slcp +++ b/app/example/mikroe_utm7segr_max6969/mikroe_utm7segr_max6969.slcp @@ -42,7 +42,7 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/mikroe_utm7segr_max6969/image/create_example.png diff --git a/app/example/mikroe_uv_ml8511a/mikroe_uv_ml8511a.slcp b/app/example/mikroe_uv_ml8511a/mikroe_uv_ml8511a.slcp index dae19a69..fe2b5576 100644 --- a/app/example/mikroe_uv_ml8511a/mikroe_uv_ml8511a.slcp +++ b/app/example/mikroe_uv_ml8511a/mikroe_uv_ml8511a.slcp @@ -39,7 +39,7 @@ define: - name: DEBUG_EFM sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/mikroe_uv_ml8511a/image/hardware_connection.png directory: image diff --git a/app/example/mikroe_uwb2_dwm3000/SimplicityStudio/mikroe_uwb2_dwm3000.slcp b/app/example/mikroe_uwb2_dwm3000/SimplicityStudio/mikroe_uwb2_dwm3000.slcp index fbafb3ba..a8e71563 100644 --- a/app/example/mikroe_uwb2_dwm3000/SimplicityStudio/mikroe_uwb2_dwm3000.slcp +++ b/app/example/mikroe_uwb2_dwm3000/SimplicityStudio/mikroe_uwb2_dwm3000.slcp @@ -54,7 +54,7 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../linker_files/brd2703a/linkerfile.ld diff --git a/app/example/mikroe_water_detect/app.c b/app/example/mikroe_water_detect/app.c index 92ec4777..cc4221cb 100644 --- a/app/example/mikroe_water_detect/app.c +++ b/app/example/mikroe_water_detect/app.c @@ -3,25 +3,60 @@ * @brief Top level application functions ******************************************************************************* * # License - * Copyright 2020 Silicon Laboratories Inc. www.silabs.com + * Copyright 2022 Silicon Laboratories Inc. www.silabs.com ******************************************************************************* * - * The licensor of this software is Silicon Laboratories Inc. Your use of this - * software is governed by the terms of Silicon Labs Master Software License - * Agreement (MSLA) available at - * www.silabs.com/about-us/legal/master-software-license-agreement. This - * software is distributed to you in Source Code format and is governed by the - * sections of the MSLA applicable to Source Code. + * SPDX-License-Identifier: Zlib + * + * The licensor of this software is Silicon Laboratories Inc. + * + * This software is provided \'as-is\', without any express or implied + * warranty. In no event will the authors be held liable for any damages + * arising from the use of this software. + * + * Permission is granted to anyone to use this software for any purpose, + * including commercial applications, and to alter it and redistribute it + * freely, subject to the following restrictions: + * + * 1. The origin of this software must not be misrepresented; you must not + * claim that you wrote the original software. If you use this software + * in a product, an acknowledgment in the product documentation would be + * appreciated but is not required. + * 2. Altered source versions must be plainly marked as such, and must not be + * misrepresented as being the original software. + * 3. This notice may not be removed or altered from any source distribution. + * + ******************************************************************************* + * + * EVALUATION QUALITY + * This code has been minimally tested to ensure that it builds with the + * specified dependency versions and is suitable as a demonstration for + * evaluation purposes only. + * This code will be maintained at the sole discretion of Silicon Labs. * ******************************************************************************/ -#include "gpiointerrupt.h" -#include "sl_sleeptimer.h" -#include "app_log.h" +#include "sl_sleeptimer.h" #include "mikroe_water_detect.h" #include "mikroe_water_detect_config.h" -#define READING_INTERVAL_MSEC 200 +#if (defined(SLI_SI917)) +#include "sl_driver_gpio.h" +#include "rsi_debug.h" +#else +#include "gpiointerrupt.h" +#include "app_log.h" +#endif + +#if (defined(SLI_SI917)) +#define GPIO_M4_INTR 7 // M4 Pin interrupt number +#define AVL_INTR_NO 0 // available interrupt number +#define app_printf(...) DEBUGOUT(__VA_ARGS__) +#else +#define app_printf(...) app_log(__VA_ARGS__) +#endif + +#define READING_INTERVAL_MSEC 200 #define MIKROE_WATER_DETECT_MODE_INTERRUPT // #define MIKROE_WATER_DETECT_MODE_POLLING @@ -63,7 +98,19 @@ void app_init(void) 0, 0); #endif + #ifdef MIKROE_WATER_DETECT_MODE_INTERRUPT +#if (defined(SLI_SI917)) + sl_gpio_t gpio_port_pin = { + WATER_DETECT_INT_PIN / 16, + WATER_DETECT_INT_PIN % 16 + }; + sl_gpio_driver_configure_interrupt(&gpio_port_pin, + GPIO_M4_INTR, + SL_GPIO_INTERRUPT_RISING_EDGE | SL_GPIO_INTERRUPT_FALLING_EDGE, + (void *)&wd_int_callback, + AVL_INTR_NO); +#else GPIO_ExtIntConfig(WATER_DETECT_INT_PORT, WATER_DETECT_INT_PIN, WATER_DETECT_INT_PIN, @@ -73,10 +120,11 @@ void app_init(void) GPIOINT_CallbackRegister(WATER_DETECT_INT_PIN, wd_int_callback); GPIO_IntEnable(WATER_DETECT_INT_PIN); #endif - app_log(" Initialization Driver \r\n"); - app_log("------------------------- \r\n"); - app_log(" Wait to detect water... \r\n"); - app_log("------------------------- \r\n"); +#endif + app_printf(" Initialization Driver \r\n"); + app_printf("------------------------- \r\n"); + app_printf(" Wait to detect water... \r\n"); + app_printf("------------------------- \r\n"); } /***************************************************************************//** @@ -85,14 +133,14 @@ void app_init(void) void app_process_action(void) { if (wd_state > wd_state_old) { - app_log(" > Water is detected < \r\n"); - app_log("------------------------- \r\n"); + app_printf(" > Water is detected < \r\n"); + app_printf("------------------------- \r\n"); wd_state_old = 1; } if (wd_state < wd_state_old) { - app_log(" There is no water \r\n"); - app_log("------------------- \r\n"); + app_printf(" There is no water \r\n"); + app_printf("------------------- \r\n"); wd_state_old = 0; } } diff --git a/app/example/mikroe_water_detect/mikroe_water_detect.slcp b/app/example/mikroe_water_detect/mikroe_water_detect.slcp index e34ca039..28442669 100644 --- a/app/example/mikroe_water_detect/mikroe_water_detect.slcp +++ b/app/example/mikroe_water_detect/mikroe_water_detect.slcp @@ -42,17 +42,17 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - - path: ../../documentation/example/mikroe_water_detect/image/create_example.png + - path: ../../documentation/example/mikroe_water_detect/image/create_example_1.png + directory: "image" + - path: ../../documentation/example/mikroe_water_detect/image/create_example_2.png directory: "image" - path: ../../documentation/example/mikroe_water_detect/image/hardware_connection.png directory: "image" - path: ../../documentation/example/mikroe_water_detect/image/log.png directory: "image" - - path: ../../documentation/example/mikroe_water_detect/image/water_detect_config.png - directory: "image" - path: ../../documentation/example/mikroe_water_detect/image/sw_layer.png directory: "image" @@ -60,5 +60,3 @@ ui_hints: highlight: - path: README.md focus: true - - diff --git a/app/example/mikroe_water_detect/mikroe_water_detect_si91x.slcp b/app/example/mikroe_water_detect/mikroe_water_detect_si91x.slcp new file mode 100644 index 00000000..0ef3751d --- /dev/null +++ b/app/example/mikroe_water_detect/mikroe_water_detect_si91x.slcp @@ -0,0 +1,64 @@ +project_name: mikroe_water_detect_si91x +package: platform +label: Third Party Hardware Drivers - MCP606 - Water Detect Click (Mikroe) - Si91x +description: | + This example project shows an example for Mikroe Water Detect Click board driver integration on Si91x. +category: Example|Platform +quality: evaluation + +filter: +- name: Device Type + value: [SoC] +- name: MCU + value: [32-bit MCU] +- name: Project Difficulty + value: [Beginner] + +readme: +- path: ../../documentation/example/mikroe_water_detect/README.md + +source: +- path: app.c +- path: main.c + +include: +- path: '' + file_list: + - path: app.h + +component: +- id: sl_system +- id: sleeptimer_si91x + from: wiseconnect3_sdk +- id: mikroe_water_detect + from: third_party_hw_drivers +- id: syscalls + from: wiseconnect3_sdk +- id: si917_memory_default_config + from: wiseconnect3_sdk + +sdk_extension: +- id: third_party_hw_drivers + version: 3.0.0 +- id: wiseconnect3_sdk + version: 3.2.0 + +other_file: + - path: ../../documentation/example/mikroe_water_detect/image/create_example_1.png + directory: "image" + - path: ../../documentation/example/mikroe_water_detect/image/create_example_2.png + directory: "image" + - path: ../../documentation/example/mikroe_water_detect/image/hardware_connection.png + directory: "image" + - path: ../../documentation/example/mikroe_water_detect/image/log.png + directory: "image" + - path: ../../documentation/example/mikroe_water_detect/image/sw_layer.png + directory: "image" + +ui_hints: + highlight: + - path: README.md + focus: true + +post_build: + path: ../../../utilities/postbuild_profile/wiseconnect_soc.slpb diff --git a/app/example/silabs_ir_generate/silabs_ir_generate.slcp b/app/example/silabs_ir_generate/silabs_ir_generate.slcp index 0dd5a62b..7f1a2c13 100644 --- a/app/example/silabs_ir_generate/silabs_ir_generate.slcp +++ b/app/example/silabs_ir_generate/silabs_ir_generate.slcp @@ -33,7 +33,7 @@ define: - name: DEBUG_EFM sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/silabs_ir_generate/image/create_example.png directory: "image" diff --git a/app/example/silabs_lin_bus/slave/silabs_lin_slave1.slcp b/app/example/silabs_lin_bus/slave/silabs_lin_slave1.slcp index bc5bc501..a4947a7d 100644 --- a/app/example/silabs_lin_bus/slave/silabs_lin_slave1.slcp +++ b/app/example/silabs_lin_bus/slave/silabs_lin_slave1.slcp @@ -86,7 +86,7 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../../documentation/example/silabs_lin_bus/images/hardware_connection.jpg diff --git a/app/example/silabs_lin_bus/slave/silabs_lin_slave2.slcp b/app/example/silabs_lin_bus/slave/silabs_lin_slave2.slcp index 34a5ef31..cb6f93e8 100644 --- a/app/example/silabs_lin_bus/slave/silabs_lin_slave2.slcp +++ b/app/example/silabs_lin_bus/slave/silabs_lin_slave2.slcp @@ -85,7 +85,7 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../../documentation/example/silabs_lin_bus/images/hardware_connection.jpg diff --git a/app/example/silabs_pir_ira_s210st01/silabs_pir_ira_s210st01.slcp b/app/example/silabs_pir_ira_s210st01/silabs_pir_ira_s210st01.slcp index 57bfdf25..5504749c 100644 --- a/app/example/silabs_pir_ira_s210st01/silabs_pir_ira_s210st01.slcp +++ b/app/example/silabs_pir_ira_s210st01/silabs_pir_ira_s210st01.slcp @@ -43,7 +43,7 @@ define: - name: DEBUG_EFM sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 ui_hints: highlight: - path: README.md diff --git a/app/example/silabs_triac/silabs_triac.slcp b/app/example/silabs_triac/silabs_triac.slcp index 5ef0b569..3cf8635b 100644 --- a/app/example/silabs_triac/silabs_triac.slcp +++ b/app/example/silabs_triac/silabs_triac.slcp @@ -33,7 +33,7 @@ define: - name: DEBUG_EFM sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/silabs_triac/image/create_example.png directory: "image" diff --git a/app/example/sparkfun_6dof_imu_bmi270/app.c b/app/example/sparkfun_6dof_imu_bmi270/app.c new file mode 100644 index 00000000..6cb1a5a2 --- /dev/null +++ b/app/example/sparkfun_6dof_imu_bmi270/app.c @@ -0,0 +1,194 @@ +/******************************************************************************* + * @file app.c + * @brief Example application + * @version 1.0.0 + ******************************************************************************* + * # License + * Copyright 2022 Silicon Laboratories Inc. www.silabs.com + ******************************************************************************* + * + * SPDX-License-Identifier: Zlib + * + * The licensor of this software is Silicon Laboratories Inc. + * + * This software is provided \'as-is\', without any express or implied + * warranty. In no event will the authors be held liable for any damages + * arising from the use of this software. + * + * Permission is granted to anyone to use this software for any purpose, + * including commercial applications, and to alter it and redistribute it + * freely, subject to the following restrictions: + * + * 1. The origin of this software must not be misrepresented; you must not + * claim that you wrote the original software. If you use this software + * in a product, an acknowledgment in the product documentation would be + * appreciated but is not required. + * 2. Altered source versions must be plainly marked as such, and must not be + * misrepresented as being the original software. + * 3. This notice may not be removed or altered from any source distribution. + * + ******************************************************************************* + * + * EVALUATION QUALITY + * This code has been minimally tested to ensure that it builds with the + * specified dependency versions and is suitable as a demonstration for + * evaluation purposes only. + * This code will be maintained at the sole discretion of Silicon Labs. + * + ******************************************************************************/ + +#include "sl_sleeptimer.h" +#include "sparkfun_bmi270.h" +#include "app_assert.h" + +#if (defined(SLI_SI917)) +#include "sl_i2c_instances.h" +#include "rsi_debug.h" + +#define app_printf(...) DEBUGOUT(__VA_ARGS__) + +#define I2C_INSTANCE_USED SL_I2C2 +static sl_i2c_instance_t i2c_instance = I2C_INSTANCE_USED; + +#else /* None Si91x device */ +#include "sl_i2cspm_instances.h" +#include "app_log.h" + +#define app_printf(...) app_log(__VA_ARGS__) +#endif + +typedef struct { + double accelerometer[3]; ///< accelerometer values: (x, y, z) axis + double gyroscope[3]; ///< gyroscope values: (x, y, z) axis + double temperature; +} bmi270_data_t; + +#define READING_INTERVAL_MSEC 500 + +///< To store BMI270 configuration. +static bmi270_cfg_data_t bmi_cfg_data; +static sl_sleeptimer_timer_handle_t app_timer_handle; +static volatile bool app_timer_expire = false; +static mikroe_i2c_handle_t app_i2c_instance = NULL; + +static void app_timer_cb(sl_sleeptimer_timer_handle_t *handle, void *data); +static sl_status_t app_bmi270_init(void); + +// ***************************************************************************** +// * Initialize application. +// ***************************************************************************** +void app_init(void) +{ + app_printf("-----------------------\r\n"); + app_printf("Sparkfun BMI270 - 6DOF IMU Sensor\r\n"); + app_printf("Application Task\r\n"); + app_printf("-----------------------\r\n"); + + if (app_bmi270_init() != SL_STATUS_OK) { + app_printf("BMI270 inits failed\r\n"); + app_printf("-----------------------\r\n"); + } else { + app_printf("BMI270 inits successfully\r\n"); + app_printf("-----------------------\r\n"); + app_printf("Start measure\r\n"); + app_printf("-----------------------\r\n"); + } +} + +// ***************************************************************************** +// * App ticking function. +// ***************************************************************************** +void app_process_action(void) +{ + if (app_timer_expire == false) { + return; + } + app_timer_expire = false; + + bmi270_data_t bmi270_data; + sl_status_t ret; + + ret = sparkfun_bmi270_read_acc_reading(&bmi_cfg_data, + bmi270_data.accelerometer); + if (SL_STATUS_OK == ret) { + app_printf("Acc value: x[%0.4f] - y[%0.4f] - z[%0.4f]\r\n", + bmi270_data.accelerometer[0], + bmi270_data.accelerometer[1], + bmi270_data.accelerometer[2]); + } + + ret = sparkfun_bmi270_read_gyro_reading(&bmi_cfg_data, bmi270_data.gyroscope); + if (SL_STATUS_OK == ret) { + app_printf("Gyr value: x[%0.4f] - y[%0.4f] - z[%0.4f]\r\n", + bmi270_data.gyroscope[0], + bmi270_data.gyroscope[1], + bmi270_data.gyroscope[2]); + } + + ret = sparkfun_bmi270_read_temp_reading(&bmi_cfg_data, + &bmi270_data.temperature); + if (SL_STATUS_OK == ret) { + app_printf("Temp value: %0.4f%cC\r\n", bmi270_data.temperature, 176); + } + app_printf("-----------------------------------------\r\n"); +} + +static void app_timer_cb(sl_sleeptimer_timer_handle_t *handle, void *data) +{ + (void) handle; + (void) data; + + app_timer_expire = true; +} + +static sl_status_t app_bmi270_init(void) +{ + sl_status_t ret = SL_STATUS_OK; + +#if (defined(SLI_SI917)) + app_i2c_instance = &i2c_instance; +#else + app_i2c_instance = sl_i2cspm_qwiic; +#endif + + /// Initializing I2C instance and slave address + bmi_cfg_data.i2c_instance = app_i2c_instance; + bmi_cfg_data.bmi270_slave_address = BMI270_ADDR; + + /// Initializing IMU sensor configuration + + /// append ORing of all the needed features of bmi270 + bmi_cfg_data.enable_features.features = BMI270_FEATURE_ACC + | BMI270_FEATURE_GYRO + | BMI270_FEATURE_TEMP; + + /// append the various configuration of accelerometer + bmi_cfg_data.acc_config.bw = BMI270_ACCEL_NORM_AVG4; + bmi_cfg_data.acc_config.odr = BMI270_ACCEL_ODR_100HZ; + bmi_cfg_data.acc_config.filter = BMI270_ACCEL_PERFO_OPT; + bmi_cfg_data.acc_config.range = BMI270_ACCEL_RANGE_2G; + + /// append the various configuration of gyroscope + bmi_cfg_data.gyro_config.bw = BMI270_GYRO_BWP_NORMAL; + bmi_cfg_data.gyro_config.odr = BMI270_GYRO_ODR_200HZ; + bmi_cfg_data.gyro_config.filter = BMI270_GYRO_F_PERFO_OPT; + bmi_cfg_data.gyro_config.range = BMI270_GYRO_RANGE_2000DPS; + bmi_cfg_data.gyro_config.noise = BMI270_GYRO_N_POWER_OPT; + + ret = sparkfun_bmi270_init(&bmi_cfg_data); + app_assert_status(ret); + + ret = sparkfun_bmi270_enable_and_config_features(&bmi_cfg_data); + app_assert_status(ret); + + // Start a periodic timer READING_INTERVAL_MSEC ms to read data from the + // sensor + ret = sl_sleeptimer_start_periodic_timer_ms(&app_timer_handle, + READING_INTERVAL_MSEC, + app_timer_cb, + (void *) NULL, + 0, + 0); + app_assert_status(ret); + return ret; +} diff --git a/app/example/sparkfun_6dof_imu_bmi270/app.h b/app/example/sparkfun_6dof_imu_bmi270/app.h new file mode 100644 index 00000000..02bedf57 --- /dev/null +++ b/app/example/sparkfun_6dof_imu_bmi270/app.h @@ -0,0 +1,31 @@ +/***************************************************************************//** + * @file + * @brief Top level application functions + ******************************************************************************* + * # License + * Copyright 2020 Silicon Laboratories Inc. www.silabs.com + ******************************************************************************* + * + * The licensor of this software is Silicon Laboratories Inc. Your use of this + * software is governed by the terms of Silicon Labs Master Software License + * Agreement (MSLA) available at + * www.silabs.com/about-us/legal/master-software-license-agreement. This + * software is distributed to you in Source Code format and is governed by the + * sections of the MSLA applicable to Source Code. + * + ******************************************************************************/ + +#ifndef APP_H +#define APP_H + +/***************************************************************************//** + * Initialize application. + ******************************************************************************/ +void app_init(void); + +/***************************************************************************//** + * App ticking function. + ******************************************************************************/ +void app_process_action(void); + +#endif // APP_H diff --git a/app/example/sparkfun_6dof_imu_bmi270/main.c b/app/example/sparkfun_6dof_imu_bmi270/main.c new file mode 100644 index 00000000..2da253ba --- /dev/null +++ b/app/example/sparkfun_6dof_imu_bmi270/main.c @@ -0,0 +1,58 @@ +/***************************************************************************//** + * @file main.c + * @brief main() function. + ******************************************************************************* + * # License + * Copyright 2020 Silicon Laboratories Inc. www.silabs.com + ******************************************************************************* + * + * The licensor of this software is Silicon Laboratories Inc. Your use of this + * software is governed by the terms of Silicon Labs Master Software License + * Agreement (MSLA) available at + * www.silabs.com/about-us/legal/master-software-license-agreement. This + * software is distributed to you in Source Code format and is governed by the + * sections of the MSLA applicable to Source Code. + * + ******************************************************************************/ +#include "sl_component_catalog.h" +#include "sl_system_init.h" +#include "app.h" +#if defined(SL_CATALOG_POWER_MANAGER_PRESENT) +#include "sl_power_manager.h" +#endif +#if defined(SL_CATALOG_KERNEL_PRESENT) +#include "sl_system_kernel.h" +#else // SL_CATALOG_KERNEL_PRESENT +#include "sl_system_process_action.h" +#endif // SL_CATALOG_KERNEL_PRESENT + +int main(void) +{ + // Initialize Silicon Labs device, system, service(s) and protocol stack(s). + // Note that if the kernel is present, processing task(s) will be created by + // this call. + sl_system_init(); + + // Initialize the application. For example, create periodic timer(s) or + // task(s) if the kernel is present. + app_init(); + +#if defined(SL_CATALOG_KERNEL_PRESENT) + // Start the kernel. Task(s) created in app_init() will start running. + sl_system_kernel_start(); +#else // SL_CATALOG_KERNEL_PRESENT + while (1) { + // Do not remove this call: Silicon Labs components process action routine + // must be called from the super loop. + sl_system_process_action(); + + // Application process. + app_process_action(); + +#if defined(SL_CATALOG_POWER_MANAGER_PRESENT) + // Let the CPU go to sleep if the system allows it. + sl_power_manager_sleep(); +#endif + } +#endif // SL_CATALOG_KERNEL_PRESENT +} diff --git a/app/example/sparkfun_6dof_imu_bmi270/sparkfun_6dof_imu_bmi270.slcp b/app/example/sparkfun_6dof_imu_bmi270/sparkfun_6dof_imu_bmi270.slcp new file mode 100644 index 00000000..cf84149b --- /dev/null +++ b/app/example/sparkfun_6dof_imu_bmi270/sparkfun_6dof_imu_bmi270.slcp @@ -0,0 +1,65 @@ +project_name: sparkfun_6dof_imu_bmi270 +label: Third Party Hardware Drivers - BMI270 - 6DOF IMU Breakout (Sparkfun). +package: platform +description: | + This example project shows an example for the Sparkfun BMI270 6DOF IMU Sensor board. +category: Example|Platform +quality: evaluation + +filter: +- name: Device Type + value: [SoC] +- name: MCU + value: [32-bit MCU] +- name: Project Difficulty + value: [Beginner] + +readme: +- path: ../../documentation/example/sparkfun_6dof_imu_bmi270/README.md + +source: +- path: app.c +- path: main.c + +include: +- path: '' + file_list: + - path: app.h + +component: +- id: sl_system +- id: device_init +- id: i2cspm + instance: [qwiic] +- id: iostream_usart + instance: [vcom] +- id: app_log +- id: app_assert +- id: sparkfun_6dof_imu_bmi270 + from: third_party_hw_drivers +define: +- name: DEBUG_EFM + +sdk_extension: +- id: third_party_hw_drivers + version: 3.0.0 + +toolchain_settings: + - option: gcc_linker_option + value: "-u _printf_float" + +other_file: + - path: ../../documentation/example/sparkfun_6dof_imu_bmi270/image/create_example.png + directory: "image" + - path: ../../documentation/example/sparkfun_6dof_imu_bmi270/image/create_example_si91x.png + directory: "image" + - path: ../../documentation/example/sparkfun_6dof_imu_bmi270/image/hardware_connection.png + directory: "image" + - path: ../../documentation/example/sparkfun_6dof_imu_bmi270/image/log.png + directory: "image" + +ui_hints: + highlight: + - path: README.md + focus: true + diff --git a/app/example/sparkfun_6dof_imu_bmi270/sparkfun_6dof_imu_bmi270_si91x.slcp b/app/example/sparkfun_6dof_imu_bmi270/sparkfun_6dof_imu_bmi270_si91x.slcp new file mode 100644 index 00000000..97b939a3 --- /dev/null +++ b/app/example/sparkfun_6dof_imu_bmi270/sparkfun_6dof_imu_bmi270_si91x.slcp @@ -0,0 +1,70 @@ +project_name: sparkfun_6dof_imu_bmi270 +label: Third Party Hardware Drivers - BMI270 - 6DOF IMU Breakout (Sparkfun). +package: platform +description: | + This example project shows an example for the Sparkfun BMI270 6DOF IMU Sensor board. +category: Example|Platform +quality: evaluation + +filter: +- name: Device Type + value: [SoC] +- name: MCU + value: [32-bit MCU] +- name: Project Difficulty + value: [Beginner] + +readme: +- path: ../../documentation/example/sparkfun_6dof_imu_bmi270/README.md + +source: +- path: app.c +- path: main.c + +include: +- path: '' + file_list: + - path: app.h + +component: +- id: sl_system +- id: app_assert +- id: syscalls + from: wiseconnect3_sdk +- id: si917_memory_default_config + from: wiseconnect3_sdk +- instance: [i2c2] + from: wiseconnect3_sdk + id: i2c_instance +- id: sparkfun_6dof_imu_bmi270 + from: third_party_hw_drivers +define: +- name: DEBUG_EFM + +sdk_extension: +- id: third_party_hw_drivers + version: 3.0.0 +- id: wiseconnect3_sdk + version: 3.2.0 + +toolchain_settings: + - option: gcc_linker_option + value: "-u _printf_float" + +other_file: + - path: ../../documentation/example/sparkfun_6dof_imu_bmi270/image/create_example.png + directory: "image" + - path: ../../documentation/example/sparkfun_6dof_imu_bmi270/image/create_example_si91x.png + directory: "image" + - path: ../../documentation/example/sparkfun_6dof_imu_bmi270/image/hardware_connection.png + directory: "image" + - path: ../../documentation/example/sparkfun_6dof_imu_bmi270/image/log.png + directory: "image" + +ui_hints: + highlight: + - path: README.md + focus: true + +post_build: + path: ../../../utilities/postbuild_profile/wiseconnect_soc.slpb \ No newline at end of file diff --git a/app/example/sparkfun_accelerometer_mma8452q/sparkfun_accelerometer_mma8452q.slcp b/app/example/sparkfun_accelerometer_mma8452q/sparkfun_accelerometer_mma8452q.slcp index 97e6b91d..8ae38817 100644 --- a/app/example/sparkfun_accelerometer_mma8452q/sparkfun_accelerometer_mma8452q.slcp +++ b/app/example/sparkfun_accelerometer_mma8452q/sparkfun_accelerometer_mma8452q.slcp @@ -52,7 +52,7 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/sparkfun_accelerometer_mma8452q/image/api_overview.png diff --git a/app/example/sparkfun_air_quality_sgp40/sparkfun_air_quality_sgp40.slcp b/app/example/sparkfun_air_quality_sgp40/sparkfun_air_quality_sgp40.slcp index 7b6ee651..39dfe83f 100644 --- a/app/example/sparkfun_air_quality_sgp40/sparkfun_air_quality_sgp40.slcp +++ b/app/example/sparkfun_air_quality_sgp40/sparkfun_air_quality_sgp40.slcp @@ -51,7 +51,7 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/sparkfun_air_quality_sgp40/image/create_example.png diff --git a/app/example/sparkfun_distance_vl53l1x/sparkfun_distance_vl53l1x.slcp b/app/example/sparkfun_distance_vl53l1x/sparkfun_distance_vl53l1x.slcp index b593ff45..c0068072 100644 --- a/app/example/sparkfun_distance_vl53l1x/sparkfun_distance_vl53l1x.slcp +++ b/app/example/sparkfun_distance_vl53l1x/sparkfun_distance_vl53l1x.slcp @@ -52,7 +52,7 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/sparkfun_distance_vl53l1x/image/create_example.png diff --git a/app/example/sparkfun_dosimeter_type5/sparkfun_dosimeter_type5.slcp b/app/example/sparkfun_dosimeter_type5/sparkfun_dosimeter_type5.slcp index 6c68d12a..aca40995 100644 --- a/app/example/sparkfun_dosimeter_type5/sparkfun_dosimeter_type5.slcp +++ b/app/example/sparkfun_dosimeter_type5/sparkfun_dosimeter_type5.slcp @@ -44,7 +44,7 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/sparkfun_dosimeter_type5/image/connection.png diff --git a/app/example/sparkfun_environmental_bme280_ccs811/sparkfun_environmental_bme280_ccs811.slcp b/app/example/sparkfun_environmental_bme280_ccs811/sparkfun_environmental_bme280_ccs811.slcp index 77b2ac4a..2d33a533 100644 --- a/app/example/sparkfun_environmental_bme280_ccs811/sparkfun_environmental_bme280_ccs811.slcp +++ b/app/example/sparkfun_environmental_bme280_ccs811/sparkfun_environmental_bme280_ccs811.slcp @@ -53,7 +53,7 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/sparkfun_environmental_bme280_ccs811/image/console_log.png diff --git a/app/example/sparkfun_gnss_max_m10s/app.c b/app/example/sparkfun_gnss_max_m10s/app.c new file mode 100644 index 00000000..29f38093 --- /dev/null +++ b/app/example/sparkfun_gnss_max_m10s/app.c @@ -0,0 +1,193 @@ +/***************************************************************************//** + * @file app.c + * @brief Example application + * @version 1.0.0 + ******************************************************************************* + * # License + * Copyright 2022 Silicon Laboratories Inc. www.silabs.com + ******************************************************************************* + * + * SPDX-License-Identifier: Zlib + * + * The licensor of this software is Silicon Laboratories Inc. + * + * This software is provided \'as-is\', without any express or implied + * warranty. In no event will the authors be held liable for any damages + * arising from the use of this software. + * + * Permission is granted to anyone to use this software for any purpose, + * including commercial applications, and to alter it and redistribute it + * freely, subject to the following restrictions: + * + * 1. The origin of this software must not be misrepresented; you must not + * claim that you wrote the original software. If you use this software + * in a product, an acknowledgment in the product documentation would be + * appreciated but is not required. + * 2. Altered source versions must be plainly marked as such, and must not be + * misrepresented as being the original software. + * 3. This notice may not be removed or altered from any source distribution. + * + ******************************************************************************* + * + * EVALUATION QUALITY + * This code has been minimally tested to ensure that it builds with the + * specified dependency versions and is suitable as a demonstration for + * evaluation purposes only. + * This code will be maintained at the sole discretion of Silicon Labs. + * + ******************************************************************************/ +#include "gnss_max_m10s_driver.h" + +#if (defined(SLI_SI917)) +#include "sl_i2c_instances.h" +#include "rsi_debug.h" +#else +#include "sl_i2cspm_instances.h" +#include "app_log.h" +#endif + +#if (defined(SLI_SI917)) +#define I2C_INSTANCE_USED SL_I2C2 +static sl_i2c_instance_t i2c_instance = I2C_INSTANCE_USED; +#endif + +#if (defined(SLI_SI917)) +#define app_printf(...) DEBUGOUT(__VA_ARGS__) +#else +#define app_printf(...) app_log(__VA_ARGS__) +#endif + +///< Divisor value for latitude and longitude using UBX protocol +#define LAT_LONG_DIVISOR_UBX 10000000 +///< Divisor value for latitude and longitude using NMEA protocol +#define LAT_LONG_DIVISOR_NMEA 1000000 + +///< Retry count for GNSS receiver +#define GNSS_RETRY_COUNT 10 +///< Retry count to receive data from +#define GNSS_DATA_RETRY_COUNT 5 +#define GNSS_DATA_TIMEOUT_RETRY_DELAY 200 ///< In ms +#define GNSS_PER_RETRY_DELAY 500 ///< In ms +#define GNSS_TASK_DELAY 2000 ///< In ms + +/// @brief Structure for MAX-M10s GNSS receiver data +typedef struct { + int32_t no_of_satellites; ///< no of satellites + double latitude; ///< latitude value + double longitude; ///< longitude value + double altitude; ///< altitude value +} sl_gnss_data_t; + +sl_max_m10s_cfg_data_t gnss_cfg_data; ///< To store GNSS receiver configuration. +static mikroe_i2c_handle_t app_i2c_instance = NULL; + +/**************************************************************************//** + * Initialize application. + *****************************************************************************/ +void app_init(void) +{ + sl_status_t status; + +#if (defined(SLI_SI917)) + app_i2c_instance = &i2c_instance; +#else + app_i2c_instance = sl_i2cspm_qwiic; +#endif + + gnss_cfg_data.i2c_instance = app_i2c_instance; + gnss_cfg_data.device_address = GNSS_ADDRESS; + gnss_cfg_data.protocol_type = SL_MAX_M10S_PROTOCOL_UBX; + + status = gnss_max_m10s_begin(GNSS_POLL_MAX_TIMEOUT, &gnss_cfg_data); + if (status != SL_STATUS_OK) { + app_printf("\r\nmax m10s init failed, reason: 0x%lx\r\n", status); + return; + } +} + +/***************************************************************************//** + * App ticking function. + ******************************************************************************/ +void app_process_action(void) +{ + sl_status_t status; + sl_gnss_data_t gnss_data; ///< MAX-M10s GNSS receiver data + uint8_t fix_type = 0; + bool is_sensor_data_available; + uint8_t retry_count = 0, data_retry_count = 0; + + is_sensor_data_available = false; + + while (GNSS_RETRY_COUNT > retry_count) { + status = gnss_max_m10s_get_fix_type(&gnss_cfg_data, + GNSS_POLL_MAX_TIMEOUT, + &fix_type); + if (status != SL_STATUS_OK) { + fix_type = 0; + } + + app_printf("\r\ngnss_receiver_task : fix type is: %d\r\n", fix_type); + if (((SL_MAX_M10S_PROTOCOL_UBX == gnss_cfg_data.protocol_type) + && ((3 == fix_type) || (2 == fix_type))) + || ((SL_MAX_M10S_PROTOCOL_NMEA == gnss_cfg_data.protocol_type) + && (1 == fix_type))) { + for (data_retry_count = 0; data_retry_count < GNSS_DATA_RETRY_COUNT; + ++data_retry_count) { + status = + gnss_max_m10s_get_nav_pvt(&gnss_cfg_data, GNSS_POLL_MAX_TIMEOUT); + + if (status == SL_STATUS_OK) { + gnss_data.latitude = (double)gnss_cfg_data.packetUBXNAVPVT->data.lat; + + if (SL_MAX_M10S_PROTOCOL_UBX == gnss_cfg_data.protocol_type) { + gnss_data.latitude /= LAT_LONG_DIVISOR_UBX; + } else if (SL_MAX_M10S_PROTOCOL_NMEA == gnss_cfg_data.protocol_type) { + gnss_data.latitude /= LAT_LONG_DIVISOR_NMEA; + } + app_printf("\r\ngnss_receiver_task : latitude is : %.7lf\r\n", + gnss_data.latitude); + gnss_data.longitude = (double)gnss_cfg_data.packetUBXNAVPVT->data.lon; + + if (SL_MAX_M10S_PROTOCOL_UBX == gnss_cfg_data.protocol_type) { + gnss_data.longitude /= LAT_LONG_DIVISOR_UBX; + } else if (SL_MAX_M10S_PROTOCOL_NMEA == gnss_cfg_data.protocol_type) { + gnss_data.longitude /= LAT_LONG_DIVISOR_NMEA; + } + app_printf("\r\ngnss_receiver_task : longitude is : %.7lf\r\n", + gnss_data.longitude); + gnss_data.altitude = (double)gnss_cfg_data.packetUBXNAVPVT->data.hMSL; + app_printf("\r\ngnss_receiver_task : altitude is : %lf\r\n", + gnss_data.altitude); + gnss_data.no_of_satellites = + (int32_t)gnss_cfg_data.packetUBXNAVPVT->data.numSV; + app_printf("\r\ngnss_receiver_task : satellite is : %ld\r\n", + gnss_data.no_of_satellites); + is_sensor_data_available = true; + break; + } else { + gnss_max_m10s_delay(GNSS_DATA_TIMEOUT_RETRY_DELAY); + app_printf("\r\ngnss_receiver_task :" + " Data is not received, retry-count: %d\r\n", + data_retry_count); + continue; + } + } + } + if (true == is_sensor_data_available) { + app_printf("\r\ngnss_receiver_task :" + " Data is received, break the fix-type retry loop\r\n"); + break; + } + retry_count++; + gnss_max_m10s_delay(GNSS_PER_RETRY_DELAY); + } + /// If retry count reached to maximum value then send data as null + if (GNSS_RETRY_COUNT == retry_count) { + retry_count = 0; + is_sensor_data_available = false; + app_printf("\r\ngnss_receiver_task :" + " GNSS receiver read failed due to fix type not found," + " fix_type:%u\n", fix_type); + } + gnss_max_m10s_delay(GNSS_TASK_DELAY); +} diff --git a/app/example/sparkfun_gnss_max_m10s/app.h b/app/example/sparkfun_gnss_max_m10s/app.h new file mode 100644 index 00000000..02bedf57 --- /dev/null +++ b/app/example/sparkfun_gnss_max_m10s/app.h @@ -0,0 +1,31 @@ +/***************************************************************************//** + * @file + * @brief Top level application functions + ******************************************************************************* + * # License + * Copyright 2020 Silicon Laboratories Inc. www.silabs.com + ******************************************************************************* + * + * The licensor of this software is Silicon Laboratories Inc. Your use of this + * software is governed by the terms of Silicon Labs Master Software License + * Agreement (MSLA) available at + * www.silabs.com/about-us/legal/master-software-license-agreement. This + * software is distributed to you in Source Code format and is governed by the + * sections of the MSLA applicable to Source Code. + * + ******************************************************************************/ + +#ifndef APP_H +#define APP_H + +/***************************************************************************//** + * Initialize application. + ******************************************************************************/ +void app_init(void); + +/***************************************************************************//** + * App ticking function. + ******************************************************************************/ +void app_process_action(void); + +#endif // APP_H diff --git a/app/example/sparkfun_gnss_max_m10s/main.c b/app/example/sparkfun_gnss_max_m10s/main.c new file mode 100644 index 00000000..2da253ba --- /dev/null +++ b/app/example/sparkfun_gnss_max_m10s/main.c @@ -0,0 +1,58 @@ +/***************************************************************************//** + * @file main.c + * @brief main() function. + ******************************************************************************* + * # License + * Copyright 2020 Silicon Laboratories Inc. www.silabs.com + ******************************************************************************* + * + * The licensor of this software is Silicon Laboratories Inc. Your use of this + * software is governed by the terms of Silicon Labs Master Software License + * Agreement (MSLA) available at + * www.silabs.com/about-us/legal/master-software-license-agreement. This + * software is distributed to you in Source Code format and is governed by the + * sections of the MSLA applicable to Source Code. + * + ******************************************************************************/ +#include "sl_component_catalog.h" +#include "sl_system_init.h" +#include "app.h" +#if defined(SL_CATALOG_POWER_MANAGER_PRESENT) +#include "sl_power_manager.h" +#endif +#if defined(SL_CATALOG_KERNEL_PRESENT) +#include "sl_system_kernel.h" +#else // SL_CATALOG_KERNEL_PRESENT +#include "sl_system_process_action.h" +#endif // SL_CATALOG_KERNEL_PRESENT + +int main(void) +{ + // Initialize Silicon Labs device, system, service(s) and protocol stack(s). + // Note that if the kernel is present, processing task(s) will be created by + // this call. + sl_system_init(); + + // Initialize the application. For example, create periodic timer(s) or + // task(s) if the kernel is present. + app_init(); + +#if defined(SL_CATALOG_KERNEL_PRESENT) + // Start the kernel. Task(s) created in app_init() will start running. + sl_system_kernel_start(); +#else // SL_CATALOG_KERNEL_PRESENT + while (1) { + // Do not remove this call: Silicon Labs components process action routine + // must be called from the super loop. + sl_system_process_action(); + + // Application process. + app_process_action(); + +#if defined(SL_CATALOG_POWER_MANAGER_PRESENT) + // Let the CPU go to sleep if the system allows it. + sl_power_manager_sleep(); +#endif + } +#endif // SL_CATALOG_KERNEL_PRESENT +} diff --git a/app/example/sparkfun_gnss_max_m10s/sparkfun_gnss_max_m10s.slcp b/app/example/sparkfun_gnss_max_m10s/sparkfun_gnss_max_m10s.slcp new file mode 100644 index 00000000..193b64a7 --- /dev/null +++ b/app/example/sparkfun_gnss_max_m10s/sparkfun_gnss_max_m10s.slcp @@ -0,0 +1,65 @@ +project_name: sparkfun_gnss_max_m10s +package: platform +label: Third Party Hardware Drivers - MAX-M10S - GNSS Receiver Breakout (Sparkfun) +description: | + This example project shows an example for Sparkfun MAX-M10S - GNSS Receiver Breakout board driver integration. +category: Example|Platform +quality: evaluation + +filter: +- name: Device Type + value: [SoC] +- name: MCU + value: [32-bit MCU] +- name: Project Difficulty + value: [Beginner] + +readme: +- path: ../../documentation/example/sparkfun_gnss_max_m10s/README.md + +source: +- path: app.c +- path: main.c + +include: +- path: '' + file_list: + - path: app.h + +component: +- id: sl_system +- id: device_init +- id: sleeptimer +- id: iostream_usart + instance: [vcom] +- id: app_log +- id: sparkfun_gnss_max_m10s + from: third_party_hw_drivers +- id: i2cspm + instance: [qwiic] + +define: +- name: DEBUG_EFM + +toolchain_settings: + - option: gcc_linker_option + value: "-u _printf_float" + +sdk_extension: +- id: third_party_hw_drivers + version: 3.0.0 + +other_file: + - path: ../../documentation/example/sparkfun_gnss_max_m10s/image/hw_connection.png + directory: "image" + - path: ../../documentation/example/sparkfun_gnss_max_m10s/image/create_example_1.png + directory: "image" + - path: ../../documentation/example/sparkfun_gnss_max_m10s/image/create_example_2.png + directory: "image" + - path: ../../documentation/example/sparkfun_gnss_max_m10s/image/log.png + directory: "image" + +ui_hints: + highlight: + - path: README.md + focus: true diff --git a/app/example/sparkfun_gnss_max_m10s/sparkfun_gnss_max_m10s_si91x.slcp b/app/example/sparkfun_gnss_max_m10s/sparkfun_gnss_max_m10s_si91x.slcp new file mode 100644 index 00000000..51cc8a6a --- /dev/null +++ b/app/example/sparkfun_gnss_max_m10s/sparkfun_gnss_max_m10s_si91x.slcp @@ -0,0 +1,65 @@ +project_name: sparkfun_gnss_max_m10s_si91x +package: platform +label: Third Party Hardware Drivers - MAX-M10S - GNSS Receiver Breakout (Sparkfun) - Si91x +description: | + This example project shows an example for Sparkfun MAX-M10S - GNSS Receiver Breakout board driver integration on Si91x. +category: Example|Platform +quality: evaluation + +filter: +- name: Device Type + value: [SoC] +- name: MCU + value: [32-bit MCU] +- name: Project Difficulty + value: [Beginner] + +readme: +- path: ../../documentation/example/sparkfun_gnss_max_m10s/README.md + +source: +- path: app.c +- path: main.c + +include: +- path: '' + file_list: + - path: app.h + +component: +- id: sl_system +- id: sleeptimer_si91x + from: wiseconnect3_sdk +- id: sparkfun_gnss_max_m10s + from: third_party_hw_drivers +- id: syscalls + from: wiseconnect3_sdk +- id: si917_memory_default_config + from: wiseconnect3_sdk +- instance: [i2c2] + from: wiseconnect3_sdk + id: i2c_instance + +sdk_extension: +- id: third_party_hw_drivers + version: 3.0.0 +- id: wiseconnect3_sdk + version: 3.2.0 + +other_file: + - path: ../../documentation/example/sparkfun_gnss_max_m10s/image/hw_connection.png + directory: "image" + - path: ../../documentation/example/sparkfun_gnss_max_m10s/image/create_example_1.png + directory: "image" + - path: ../../documentation/example/sparkfun_gnss_max_m10s/image/create_example_2.png + directory: "image" + - path: ../../documentation/example/sparkfun_gnss_max_m10s/image/log.png + directory: "image" + +ui_hints: + highlight: + - path: README.md + focus: true + +post_build: + path: ../../../utilities/postbuild_profile/wiseconnect_soc.slpb diff --git a/app/example/sparkfun_hr_po_max30101_max32664/sparkfun_hr_po_max30101_max32664.slcp b/app/example/sparkfun_hr_po_max30101_max32664/sparkfun_hr_po_max30101_max32664.slcp index 352626d1..38b3357f 100644 --- a/app/example/sparkfun_hr_po_max30101_max32664/sparkfun_hr_po_max30101_max32664.slcp +++ b/app/example/sparkfun_hr_po_max30101_max32664/sparkfun_hr_po_max30101_max32664.slcp @@ -51,7 +51,7 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/sparkfun_hr_po_max30101_max32664/image/create_example.png diff --git a/app/example/sparkfun_human_presence_ak9753/sparkfun_human_presence_ak9753.slcp b/app/example/sparkfun_human_presence_ak9753/sparkfun_human_presence_ak9753.slcp index 35a8f894..fa07f2d6 100644 --- a/app/example/sparkfun_human_presence_ak9753/sparkfun_human_presence_ak9753.slcp +++ b/app/example/sparkfun_human_presence_ak9753/sparkfun_human_presence_ak9753.slcp @@ -54,7 +54,7 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/sparkfun_human_presence_ak9753/image/create_example.png diff --git a/app/example/sparkfun_ir_array_amg88xx/sparkfun_ir_array_amg88xx.slcp b/app/example/sparkfun_ir_array_amg88xx/sparkfun_ir_array_amg88xx.slcp index 86190c8b..43809311 100644 --- a/app/example/sparkfun_ir_array_amg88xx/sparkfun_ir_array_amg88xx.slcp +++ b/app/example/sparkfun_ir_array_amg88xx/sparkfun_ir_array_amg88xx.slcp @@ -53,7 +53,7 @@ configuration: value: "6144" sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/sparkfun_ir_array_amg88xx/image/create_example.png directory: image diff --git a/app/example/sparkfun_ir_array_mlx90640/sparkfun_ir_array_mlx90640.slcp b/app/example/sparkfun_ir_array_mlx90640/sparkfun_ir_array_mlx90640.slcp index bca1e540..b124c2a7 100644 --- a/app/example/sparkfun_ir_array_mlx90640/sparkfun_ir_array_mlx90640.slcp +++ b/app/example/sparkfun_ir_array_mlx90640/sparkfun_ir_array_mlx90640.slcp @@ -62,7 +62,7 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/sparkfun_ir_array_mlx90640/image/connection.png diff --git a/app/example/sparkfun_micro_oled_ssd1306/app.c b/app/example/sparkfun_micro_oled_ssd1306/app.c index 2bff66c6..78dfe349 100644 --- a/app/example/sparkfun_micro_oled_ssd1306/app.c +++ b/app/example/sparkfun_micro_oled_ssd1306/app.c @@ -3,30 +3,62 @@ * @brief Top level application functions ******************************************************************************* * # License - * Copyright 2020 Silicon Laboratories Inc. www.silabs.com + * Copyright 2024 Silicon Laboratories Inc. www.silabs.com ******************************************************************************* * - * The licensor of this software is Silicon Laboratories Inc. Your use of this - * software is governed by the terms of Silicon Labs Master Software License - * Agreement (MSLA) available at - * www.silabs.com/about-us/legal/master-software-license-agreement. This - * software is distributed to you in Source Code format and is governed by the - * sections of the MSLA applicable to Source Code. + * SPDX-License-Identifier: Zlib + * + * The licensor of this software is Silicon Laboratories Inc. + * + * This software is provided 'as-is', without any express or implied + * warranty. In no event will the authors be held liable for any damages + * arising from the use of this software. + * + * Permission is granted to anyone to use this software for any purpose, + * including commercial applications, and to alter it and redistribute it + * freely, subject to the following restrictions: + * + * 1. The origin of this software must not be misrepresented; you must not + * claim that you wrote the original software. If you use this software + * in a product, an acknowledgment in the product documentation would be + * appreciated but is not required. + * 2. Altered source versions must be plainly marked as such, and must not be + * misrepresented as being the original software. + * 3. This notice may not be removed or altered from any source distribution. + * + ******************************************************************************* + * + * EVALUATION QUALITY + * This code has been minimally tested to ensure that it builds with the + * specified dependency versions and is suitable as a demonstration for + * evaluation purposes only. + * This code will be maintained at the sole discretion of Silicon Labs. * ******************************************************************************/ -#include "sl_simple_button_instances.h" -#include "sl_i2cspm_instances.h" #include "glib.h" #include "glib_font.h" #include "micro_oled_ssd1306.h" -#include "sl_udelay.h" +#include "sl_sleeptimer.h" + +#if (defined(SLI_SI917)) +#include "sl_i2c_instances.h" +#include "sl_si91x_button_instances.h" +#else +#include "sl_simple_button_instances.h" +#include "sl_i2cspm_instances.h" +#endif + +#if (defined(SLI_SI917)) +#define I2C_INSTANCE_USED SL_I2C2 +static sl_i2c_instance_t i2c_instance = I2C_INSTANCE_USED; +#endif -static void oled_app_init(void); +#define DISPLAY_MODE_COUNT (12) static glib_context_t glib_context; -#define DISPLAY_MODE_COUNT (12) -static uint8_t display_mode = 0; +static volatile uint8_t display_mode; +static mikroe_i2c_handle_t app_i2c_instance = NULL; static const unsigned char silicon_labs_logo_64x23[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, @@ -52,8 +84,19 @@ static const unsigned char silicon_labs_logo_64x23[] = { ******************************************************************************/ void app_init(void) { - /* Initialize the oled. */ - oled_app_init(); +#if (defined(SLI_SI917)) + app_i2c_instance = &i2c_instance; +#else + app_i2c_instance = sl_i2cspm_qwiic; +#endif + // Initialize the display + ssd1306_init(app_i2c_instance); + glib_init(&glib_context); + + // Fill lcd with background color + glib_clear(&glib_context); + + display_mode = 0; } /***************************************************************************//** @@ -197,27 +240,27 @@ void app_process_action(void) glib_draw_string(&glib_context, "XBITMAP", 10, 30); glib_update_display(); - sl_udelay_wait(500000); + sl_sleeptimer_delay_millisecond(500); glib_set_invert_color(); - sl_udelay_wait(500000); + sl_sleeptimer_delay_millisecond(500); glib_set_normal_color(); - sl_udelay_wait(500000); + sl_sleeptimer_delay_millisecond(500); glib_set_invert_color(); - sl_udelay_wait(500000); + sl_sleeptimer_delay_millisecond(500); glib_set_normal_color(); for (i = 0x8F; i > 0x00; i--) { glib_set_contrast(i); - sl_udelay_wait(5000); + sl_sleeptimer_delay_millisecond(5); } for (i = 0x00; i < 0x8F; i++) { glib_set_contrast(i); - sl_udelay_wait(5000); + sl_sleeptimer_delay_millisecond(5); } glib_scroll_right(0x00, 0x06); - sl_udelay_wait(1000000); + sl_sleeptimer_delay_millisecond(1000); glib_stop_scroll(); glib_draw_xbitmap(&glib_context, 0, 0, silicon_labs_logo_64x23, @@ -226,7 +269,7 @@ void app_process_action(void) glib_update_display(); glib_scroll_left(0x00, 0x06); - sl_udelay_wait(1000000); + sl_sleeptimer_delay_millisecond(1000); glib_stop_scroll(); glib_draw_xbitmap(&glib_context, 0, 0, silicon_labs_logo_64x23, @@ -235,7 +278,7 @@ void app_process_action(void) glib_update_display(); glib_scroll_diag_right(0x00, 0x06); - sl_udelay_wait(1000000); + sl_sleeptimer_delay_millisecond(1000); glib_stop_scroll(); glib_draw_xbitmap(&glib_context, 0, 0, silicon_labs_logo_64x23, @@ -244,7 +287,7 @@ void app_process_action(void) glib_update_display(); glib_scroll_diag_left(0x00, 0x06); - sl_udelay_wait(1000000); + sl_sleeptimer_delay_millisecond(1000); glib_stop_scroll(); break; } @@ -257,10 +300,17 @@ void app_process_action(void) * module. It is triggered when the user activates one of the buttons. * ******************************************************************************/ +#if (defined(SLI_SI917)) +void sl_si91x_button_isr(uint8_t pin, int8_t state) +{ + if (pin == button_btn0.pin) { + if (state == BUTTON_PRESSED) { +#else void sl_button_on_change(const sl_button_t *handle) { if (sl_button_get_state(handle) == SL_SIMPLE_BUTTON_PRESSED) { if (&sl_button_btn0 == handle) { +#endif if (display_mode < DISPLAY_MODE_COUNT) { display_mode++; } else { @@ -269,16 +319,3 @@ void sl_button_on_change(const sl_button_t *handle) } } } - -/***************************************************************************//** - * Initialize example. - ******************************************************************************/ -static void oled_app_init(void) -{ - /* Initialize the display */ - ssd1306_init(sl_i2cspm_qwiic); - glib_init(&glib_context); - - /* Fill lcd with background color */ - glib_clear(&glib_context); -} diff --git a/app/example/sparkfun_micro_oled_ssd1306/brd2601b/sl_i2cspm_qwiic_config.h b/app/example/sparkfun_micro_oled_ssd1306/brd2601b/sl_i2cspm_qwiic_config.h deleted file mode 100644 index aea9b367..00000000 --- a/app/example/sparkfun_micro_oled_ssd1306/brd2601b/sl_i2cspm_qwiic_config.h +++ /dev/null @@ -1,57 +0,0 @@ -/***************************************************************************//** - * @file - * @brief I2CSPM Config - ******************************************************************************* - * # License - * Copyright 2019 Silicon Laboratories Inc. www.silabs.com - ******************************************************************************* - * - * The licensor of this software is Silicon Laboratories Inc. Your use of this - * software is governed by the terms of Silicon Labs Master Software License - * Agreement (MSLA) available at - * www.silabs.com/about-us/legal/master-software-license-agreement. This - * software is distributed to you in Source Code format and is governed by the - * sections of the MSLA applicable to Source Code. - * - ******************************************************************************/ - -#ifndef SL_I2CSPM_QWIIC_CONFIG_H -#define SL_I2CSPM_QWIIC_CONFIG_H - -// <<< Use Configuration Wizard in Context Menu - -// I2CSPM settings - -// Reference clock frequency -// Frequency in Hz of the reference clock. -// Select 0 to use the frequency of the currently selected clock. -// Default: 0 -#define SL_I2CSPM_QWIIC_REFERENCE_CLOCK 0 - -// Speed mode -// <0=> Standard mode (100kbit/s) -// <1=> Fast mode (400kbit/s) -// <2=> Fast mode plus (1Mbit/s) -// Default: 0 -#define SL_I2CSPM_QWIIC_SPEED_MODE 0 -// end I2CSPM config - -// <<< end of configuration section >>> - -// <<< sl:start pin_tool >>> -// SL_I2CSPM_QWIIC -// $[I2C_SL_I2CSPM_QWIIC] -#define SL_I2CSPM_QWIIC_PERIPHERAL I2C0 -#define SL_I2CSPM_QWIIC_PERIPHERAL_NO 0 - -// I2C0 SCL on PC04 -#define SL_I2CSPM_QWIIC_SCL_PORT gpioPortC -#define SL_I2CSPM_QWIIC_SCL_PIN 4 - -// I2C0 SDA on PC05 -#define SL_I2CSPM_QWIIC_SDA_PORT gpioPortC -#define SL_I2CSPM_QWIIC_SDA_PIN 5 -// [I2C_SL_I2CSPM_QWIIC]$ -// <<< sl:end pin_tool >>> - -#endif // SL_I2CSPM_QWIIC_CONFIG_H diff --git a/app/example/sparkfun_micro_oled_ssd1306/sparkfun_micro_oled_ssd1306.slcp b/app/example/sparkfun_micro_oled_ssd1306/sparkfun_micro_oled_ssd1306.slcp index 0fff6649..fd78f34d 100644 --- a/app/example/sparkfun_micro_oled_ssd1306/sparkfun_micro_oled_ssd1306.slcp +++ b/app/example/sparkfun_micro_oled_ssd1306/sparkfun_micro_oled_ssd1306.slcp @@ -29,6 +29,7 @@ include: component: - id: sl_system - id: device_init +- id: sleeptimer - id: sparkfun_micro_oled_ssd1306 from: third_party_hw_drivers - id: services_oled_glib @@ -39,12 +40,6 @@ component: instance: [btn0] config_file: - - override: - component: i2cspm - file_id: i2cspm_config - instance: qwiic - path: brd2601b/sl_i2cspm_qwiic_config.h - condition: [brd2601b] - override: component: simple_button file_id: simple_button_config @@ -57,19 +52,23 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/sparkfun_micro_oled_ssd1306/image/bgm220_kit_sparkfun_oled.png directory: "image" - - path: ../../documentation/example/sparkfun_micro_oled_ssd1306/image/create_example.png + - path: ../../documentation/example/sparkfun_micro_oled_ssd1306/image/create_example_1.png + directory: "image" + - path: ../../documentation/example/sparkfun_micro_oled_ssd1306/image/create_example_2.png directory: "image" - path: ../../documentation/example/sparkfun_micro_oled_ssd1306/image/sparkfun_oled_board.png directory: "image" - path: ../../documentation/example/sparkfun_micro_oled_ssd1306/image/testing_result.gif directory: "image" + - path: ../../documentation/example/sparkfun_micro_oled_ssd1306/image/yt_thumbnail.jpg + directory: "image" ui_hints: highlight: - path: README.md - focus: true \ No newline at end of file + focus: true diff --git a/app/example/sparkfun_micro_oled_ssd1306/sparkfun_micro_oled_ssd1306_si91x.slcp b/app/example/sparkfun_micro_oled_ssd1306/sparkfun_micro_oled_ssd1306_si91x.slcp new file mode 100644 index 00000000..050dd4ef --- /dev/null +++ b/app/example/sparkfun_micro_oled_ssd1306/sparkfun_micro_oled_ssd1306_si91x.slcp @@ -0,0 +1,75 @@ +project_name: sparkfun_micro_oled_ssd1306_si91x +package: platform +label: Third Party Hardware Drivers - SSD1306 - Micro OLED Breakout Qwiic (Sparkfun) - Si91x +description: | + This example project shows an example for Sparkfun SSD1306 - Micro OLED Breakout board driver integration on Si91x. +category: Example|Platform +quality: evaluation + +filter: +- name: Device Type + value: [SoC] +- name: MCU + value: [32-bit MCU] +- name: Project Difficulty + value: [Beginner] + +readme: +- path: ../../documentation/example/sparkfun_micro_oled_ssd1306/README.md + +source: +- path: app.c +- path: main.c + +include: +- path: '' + file_list: + - path: app.h + +component: +- id: sl_system +- id: sleeptimer_si91x + from: wiseconnect3_sdk +- id: sparkfun_micro_oled_ssd1306 + from: third_party_hw_drivers +- id: services_oled_glib + from: third_party_hw_drivers +- id: syscalls + from: wiseconnect3_sdk +- id: si917_memory_default_config + from: wiseconnect3_sdk +- instance: [i2c2] + from: wiseconnect3_sdk + id: i2c_instance +- id: sl_si91x_button_917 + instance: + - btn0 + from: wiseconnect3_sdk + +sdk_extension: +- id: third_party_hw_drivers + version: 3.0.0 +- id: wiseconnect3_sdk + version: 3.2.0 + +other_file: + - path: ../../documentation/example/sparkfun_micro_oled_ssd1306/image/bgm220_kit_sparkfun_oled.png + directory: "image" + - path: ../../documentation/example/sparkfun_micro_oled_ssd1306/image/create_example_1.png + directory: "image" + - path: ../../documentation/example/sparkfun_micro_oled_ssd1306/image/create_example_2.png + directory: "image" + - path: ../../documentation/example/sparkfun_micro_oled_ssd1306/image/sparkfun_oled_board.png + directory: "image" + - path: ../../documentation/example/sparkfun_micro_oled_ssd1306/image/testing_result.gif + directory: "image" + - path: ../../documentation/example/sparkfun_micro_oled_ssd1306/image/yt_thumbnail.jpg + directory: "image" + +ui_hints: + highlight: + - path: README.md + focus: true + +post_build: + path: ../../../utilities/postbuild_profile/wiseconnect_soc.slpb diff --git a/app/example/sparkfun_particulate_matter_sensor_sps30/sparkfun_particulate_matter_sensor_sps30_i2c.slcp b/app/example/sparkfun_particulate_matter_sensor_sps30/sparkfun_particulate_matter_sensor_sps30_i2c.slcp index 290a237d..71e3c180 100644 --- a/app/example/sparkfun_particulate_matter_sensor_sps30/sparkfun_particulate_matter_sensor_sps30_i2c.slcp +++ b/app/example/sparkfun_particulate_matter_sensor_sps30/sparkfun_particulate_matter_sensor_sps30_i2c.slcp @@ -46,7 +46,7 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/sparkfun_particulate_matter_sensor_sps30/image/hw_connection_1.png diff --git a/app/example/sparkfun_particulate_matter_sensor_sps30/sparkfun_particulate_matter_sensor_sps30_uart.slcp b/app/example/sparkfun_particulate_matter_sensor_sps30/sparkfun_particulate_matter_sensor_sps30_uart.slcp index da33554d..62ed8035 100644 --- a/app/example/sparkfun_particulate_matter_sensor_sps30/sparkfun_particulate_matter_sensor_sps30_uart.slcp +++ b/app/example/sparkfun_particulate_matter_sensor_sps30/sparkfun_particulate_matter_sensor_sps30_uart.slcp @@ -46,7 +46,7 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/sparkfun_particulate_matter_sensor_sps30/image/hw_connection_1.png diff --git a/app/example/sparkfun_proximity_vcnl4040/sparkfun_proximity_vcnl4040.slcp b/app/example/sparkfun_proximity_vcnl4040/sparkfun_proximity_vcnl4040.slcp index c7681276..08d39918 100644 --- a/app/example/sparkfun_proximity_vcnl4040/sparkfun_proximity_vcnl4040.slcp +++ b/app/example/sparkfun_proximity_vcnl4040/sparkfun_proximity_vcnl4040.slcp @@ -52,7 +52,7 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/sparkfun_proximity_vcnl4040/image/connection.png diff --git a/app/example/sparkfun_qwiic_joystick/sparkfun_qwiic_joystick.slcp b/app/example/sparkfun_qwiic_joystick/sparkfun_qwiic_joystick.slcp index e27e02fe..6a52bd69 100644 --- a/app/example/sparkfun_qwiic_joystick/sparkfun_qwiic_joystick.slcp +++ b/app/example/sparkfun_qwiic_joystick/sparkfun_qwiic_joystick.slcp @@ -51,7 +51,7 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/sparkfun_qwiic_joystick/image/logs.png diff --git a/app/example/sparkfun_qwiic_keypad/sparkfun_qwiic_keypad.slcp b/app/example/sparkfun_qwiic_keypad/sparkfun_qwiic_keypad.slcp index c9292bcc..6776c894 100644 --- a/app/example/sparkfun_qwiic_keypad/sparkfun_qwiic_keypad.slcp +++ b/app/example/sparkfun_qwiic_keypad/sparkfun_qwiic_keypad.slcp @@ -52,7 +52,7 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/sparkfun_qwiic_keypad/image/logs.png diff --git a/app/example/sparkfun_rfid_id12la/sparkfun_rfid_id12la.slcp b/app/example/sparkfun_rfid_id12la/sparkfun_rfid_id12la.slcp index 16cbdd90..dfb95fbe 100644 --- a/app/example/sparkfun_rfid_id12la/sparkfun_rfid_id12la.slcp +++ b/app/example/sparkfun_rfid_id12la/sparkfun_rfid_id12la.slcp @@ -43,7 +43,7 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/sparkfun_rfid_id12la/image/api_overview.png diff --git a/app/example/sparkfun_soil_moisture/sparkfun_soil_moisture.slcp b/app/example/sparkfun_soil_moisture/sparkfun_soil_moisture.slcp index 932d4a28..29543a6e 100644 --- a/app/example/sparkfun_soil_moisture/sparkfun_soil_moisture.slcp +++ b/app/example/sparkfun_soil_moisture/sparkfun_soil_moisture.slcp @@ -49,7 +49,7 @@ config_file: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 define: - name: DEBUG_EFM diff --git a/app/example/sparkfun_spectroscopy_as7265x/sparkfun_spectroscopy_as7265x.slcp b/app/example/sparkfun_spectroscopy_as7265x/sparkfun_spectroscopy_as7265x.slcp index 33a0719d..58305090 100644 --- a/app/example/sparkfun_spectroscopy_as7265x/sparkfun_spectroscopy_as7265x.slcp +++ b/app/example/sparkfun_spectroscopy_as7265x/sparkfun_spectroscopy_as7265x.slcp @@ -56,7 +56,7 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/sparkfun_spectroscopy_as7265x/image/basic_reading.png diff --git a/app/example/sparkfun_weatherstation/sparkfun_weatherstation.slcp b/app/example/sparkfun_weatherstation/sparkfun_weatherstation.slcp index bd301f41..d4c45876 100644 --- a/app/example/sparkfun_weatherstation/sparkfun_weatherstation.slcp +++ b/app/example/sparkfun_weatherstation/sparkfun_weatherstation.slcp @@ -45,7 +45,7 @@ define: sdk_extension: - id: third_party_hw_drivers - version: 2.0.2 + version: 3.0.0 other_file: - path: ../../documentation/example/sparkfun_weatherstation/image/create_example.png diff --git a/driver/component/drivers/mikroe/alcohol_mq3.slcc b/driver/component/drivers/mikroe/alcohol_mq3.slcc index 0af57270..ffb85996 100644 --- a/driver/component/drivers/mikroe/alcohol_mq3.slcc +++ b/driver/component/drivers/mikroe/alcohol_mq3.slcc @@ -22,9 +22,12 @@ config_file: - path: public/mikroe/alcohol_mq3/config/brd4314a/mikroe_alcohol_mq3_config.h file_id: driver_config_alcohol condition: [brd4314a] + - path: public/mikroe/alcohol_mq3/config/brd4338a/mikroe_alcohol_mq3_config.h + file_id: driver_config_alcohol + condition: [device_si91x] - path: public/mikroe/alcohol_mq3/config/other/mikroe_alcohol_mq3_config.h file_id: driver_config_alcohol - unless: [brd4314a, brd4108a, brd2703a] + unless: [brd4314a, brd4108a, brd2703a, device_si91x] provides: - name: mikroe_alcohol_mq3 allow_multiple: false @@ -43,4 +46,4 @@ include: - path: mikroe_alcohol_mq3.h source: - path: thirdparty/mikrosdk_click_v2/clicks/alcohol/lib/src/alcohol.c - - path: public/mikroe/alcohol_mq3/src/mikroe_alcohol_mq3.c \ No newline at end of file + - path: public/mikroe/alcohol_mq3/src/mikroe_alcohol_mq3.c diff --git a/driver/component/drivers/mikroe/oledw_ssd1306.slcc b/driver/component/drivers/mikroe/oledw_ssd1306.slcc index 550c4a74..71bcd553 100644 --- a/driver/component/drivers/mikroe/oledw_ssd1306.slcc +++ b/driver/component/drivers/mikroe/oledw_ssd1306.slcc @@ -22,9 +22,12 @@ config_file: - path: public/mikroe/oledw_ssd1306/config/brd4314a/mikroe_ssd1306_config.h file_id: driver_config_oledw condition: [brd4314a] + - path: public/mikroe/oledw_ssd1306/config/brd4338a/mikroe_ssd1306_config.h + file_id: driver_config_oledw + condition: [brd4338a] - path: public/mikroe/oledw_ssd1306/config/other/mikroe_ssd1306_config.h file_id: driver_config_oledw - unless: [brd4314a, brd4108a, brd2703a] + unless: [brd4314a, brd4108a, brd2703a, brd4338a] template_contribution: - name: component_catalog value: mikroe_oledw diff --git a/driver/component/drivers/mikroe/temphum9_shtc3.slcc b/driver/component/drivers/mikroe/temphum9_shtc3.slcc index dfe924f0..1a57963d 100644 --- a/driver/component/drivers/mikroe/temphum9_shtc3.slcc +++ b/driver/component/drivers/mikroe/temphum9_shtc3.slcc @@ -18,6 +18,9 @@ provides: template_contribution: - name: component_catalog value: mikroe_temphum9 +config_file: + - path: public/mikroe/temphum9_shtc3/config/mikroe_shtc3_config.h + file_id: driver_config_shtc3 include: - path: inc file_list: diff --git a/driver/component/drivers/mikroe/water_detect.slcc b/driver/component/drivers/mikroe/water_detect.slcc index 09769f00..518fe5fc 100644 --- a/driver/component/drivers/mikroe/water_detect.slcc +++ b/driver/component/drivers/mikroe/water_detect.slcc @@ -21,9 +21,12 @@ config_file: - path: public/mikroe/water_detect/config/brd4108a/mikroe_water_detect_config.h file_id: driver_config_waterdetect condition: [brd4108a] + - path: public/mikroe/water_detect/config/brd4338a/mikroe_water_detect_config.h + file_id: driver_config_waterdetect + condition: [brd4338a] - path: public/mikroe/water_detect/config/other/mikroe_water_detect_config.h file_id: driver_config_waterdetect - unless: [brd4314a, brd2703a, brd4108a] + unless: [brd4314a, brd2703a, brd4108a, brd4338a] provides: - name: mikroe_water_detect allow_multiple: false diff --git a/driver/component/drivers/silabs/sparkfun_6dof_imu_bmi270.slcc b/driver/component/drivers/silabs/sparkfun_6dof_imu_bmi270.slcc new file mode 100644 index 00000000..326dafe2 --- /dev/null +++ b/driver/component/drivers/silabs/sparkfun_6dof_imu_bmi270.slcc @@ -0,0 +1,29 @@ +id: sparkfun_6dof_imu_bmi270 +package: third_party_hw_drivers +label: BMI270 - 6DOF IMU Breakout (Sparkfun) +description: > + Driver for the BMI270 6DOF IMU breakout board. +category: Sensors +quality: evaluation +root_path: driver +requires: + - name: status + - name: sleeptimer + - name: sleeptimer_si91x + condition: [device_si91x] + - name: mikroe_peripheral_driver_i2c +config_file: + - path: public/silabs/sparkfun_6dof_imu_bmi270/config/sparkfun_bmi270_config.h + file_id: sparkfun_bmi270_config +provides: + - name: sparkfun_6dof_imu_bmi270 + allow_multiple: false +template_contribution: + - name: component_catalog + value: sparkfun_6dof_imu_bmi270 +include: + - path: public/silabs/sparkfun_6dof_imu_bmi270/inc + file_list: + - path: sparkfun_bmi270.h +source: + - path: public/silabs/sparkfun_6dof_imu_bmi270/src/sparkfun_bmi270.c diff --git a/driver/component/drivers/silabs/sparkfun_gnss_max_m10s.slcc b/driver/component/drivers/silabs/sparkfun_gnss_max_m10s.slcc new file mode 100644 index 00000000..2a3a1c1a --- /dev/null +++ b/driver/component/drivers/silabs/sparkfun_gnss_max_m10s.slcc @@ -0,0 +1,33 @@ +id: sparkfun_gnss_max_m10s +package: third_party_hw_drivers +label: MAX-M10S - GNSS Receiver Breakout - I2C +description: > + Driver for the Sparkfun GNSS Receiver Breakout board, this board relies on the MAX-M10S IC using I2C interface. +category: Wireless Connectivity +quality: evaluation +root_path: driver +requires: + - name: status + - name: mikroe_peripheral_driver_i2c + - name: sleeptimer + - name: sleeptimer_si91x + condition: [device_si91x] +provides: + - name: sparkfun_gnss_max_m10s +template_contribution: + - name: component_catalog + value: sparkfun_gnss_max_m10s +include: + - path: public/silabs/gnss_max_m10s/inc + file_list: + - path: gnss_max_m10s_driver.h + - path: gnss_max_m10s_micro_nmea.h + - path: gnss_max_m10s_nmea_struct.h + - path: gnss_max_m10s_nmea.h + - path: gnss_max_m10s_ubx_struct.h + - path: gnss_max_m10s_ubx.h +source: + - path: public/silabs/gnss_max_m10s/src/gnss_max_m10s_driver.c + - path: public/silabs/gnss_max_m10s/src/gnss_max_m10s_micro_nmea.c + - path: public/silabs/gnss_max_m10s/src/gnss_max_m10s_nmea.c + - path: public/silabs/gnss_max_m10s/src/gnss_max_m10s_ubx.c diff --git a/driver/component/drivers/silabs/sparkfun_micro_oled_ssd1306.slcc b/driver/component/drivers/silabs/sparkfun_micro_oled_ssd1306.slcc index b4e6a161..77a53f24 100644 --- a/driver/component/drivers/silabs/sparkfun_micro_oled_ssd1306.slcc +++ b/driver/component/drivers/silabs/sparkfun_micro_oled_ssd1306.slcc @@ -8,10 +8,7 @@ quality: evaluation root_path: driver requires: - name: status - - name: i2cspm -recommends: - - id: i2cspm - instance: [qwiic] + - name: mikroe_peripheral_driver_i2c provides: - name: oled_display config_file: @@ -23,10 +20,8 @@ template_contribution: include: - path: public/silabs/micro_oled_ssd1306/inc file_list: - - path: micro_oled_ssd1306_i2c.h - path: micro_oled_ssd1306.h - path: oled_display.h source: - path: public/silabs/micro_oled_ssd1306/src/micro_oled_ssd1306.c - - path: public/silabs/micro_oled_ssd1306/src/micro_oled_ssd1306_i2c.c - path: public/silabs/micro_oled_ssd1306/src/oled_display.c diff --git a/driver/component/services/mikroe_peripheral_drv_adc.slcc b/driver/component/services/mikroe_peripheral_drv_adc.slcc index d4eb2707..21b22eeb 100644 --- a/driver/component/services/mikroe_peripheral_drv_adc.slcc +++ b/driver/component/services/mikroe_peripheral_drv_adc.slcc @@ -11,6 +11,8 @@ requires: condition: [device_series_1] - name: emlib_iadc condition: [device_series_2] + - name: sl_adc + condition: [device_si91x] provides: - name: mikroe_peripheral_driver_adc allow_multiple: false @@ -26,3 +28,8 @@ include: - path: hal_target.h source: - path: peripheral_drivers/mikroe/src/drv_analog_in.c + condition: [device_series_1] + - path: peripheral_drivers/mikroe/src/drv_analog_in.c + condition: [device_series_2] + - path: peripheral_drivers/mikroe/src/drv_analog_in_si91x.c + condition: [device_si91x] diff --git a/driver/component/services/mikroe_peripheral_drv_digital_io.slcc b/driver/component/services/mikroe_peripheral_drv_digital_io.slcc index adadb3dd..45461ec6 100644 --- a/driver/component/services/mikroe_peripheral_drv_digital_io.slcc +++ b/driver/component/services/mikroe_peripheral_drv_digital_io.slcc @@ -12,6 +12,9 @@ provides: template_contribution: - name: component_catalog value: services_mikroe_peripheral_drivers_digital_io +requires: + - name: sl_gpio + condition: [device_si91x] include: - path: peripheral_drivers/mikroe/inc file_list: @@ -23,4 +26,14 @@ include: - path: hal_gpio.h source: - path: peripheral_drivers/mikroe/src/drv_digital_in.c + condition: [device_series_1] + - path: peripheral_drivers/mikroe/src/drv_digital_in.c + condition: [device_series_2] + - path: peripheral_drivers/mikroe/src/drv_digital_in_si91x.c + condition: [device_si91x] + - path: peripheral_drivers/mikroe/src/drv_digital_out.c + condition: [device_series_1] - path: peripheral_drivers/mikroe/src/drv_digital_out.c + condition: [device_series_2] + - path: peripheral_drivers/mikroe/src/drv_digital_out_si91x.c + condition: [device_si91x] diff --git a/driver/component/services/mikroe_peripheral_drv_i2c.slcc b/driver/component/services/mikroe_peripheral_drv_i2c.slcc index 044b9fbe..eb5c1cef 100644 --- a/driver/component/services/mikroe_peripheral_drv_i2c.slcc +++ b/driver/component/services/mikroe_peripheral_drv_i2c.slcc @@ -8,6 +8,11 @@ quality: evaluation root_path: driver requires: - name: i2cspm + condition: [device_series_1] + - name: i2cspm + condition: [device_series_2] + - name: sl_i2c + condition: [device_si91x] recommends: - id: i2cspm instance: [mikroe] @@ -25,3 +30,9 @@ include: - path: drv_i2c_master.h source: - path: peripheral_drivers/mikroe/src/drv_i2c_master.c + condition: [device_series_1] + - path: peripheral_drivers/mikroe/src/drv_i2c_master.c + condition: [device_series_2] + - path: peripheral_drivers/mikroe/src/drv_i2c_master_si91x.c + condition: [device_si91x] + diff --git a/driver/component/services/mikroe_peripheral_drv_pwm.slcc b/driver/component/services/mikroe_peripheral_drv_pwm.slcc index c1488982..721bbde6 100644 --- a/driver/component/services/mikroe_peripheral_drv_pwm.slcc +++ b/driver/component/services/mikroe_peripheral_drv_pwm.slcc @@ -8,6 +8,11 @@ quality: evaluation root_path: driver requires: - name: pwm + condition: [device_series_1] + - name: pwm + condition: [device_series_2] + - name: sl_pwm + condition: [device_si91x] - name: mikroe_peripheral_driver_digital_io recommends: - id: pwm @@ -24,3 +29,8 @@ include: - path: drv_pwm.h source: - path: peripheral_drivers/mikroe/src/drv_pwm.c + condition: [device_series_1] + - path: peripheral_drivers/mikroe/src/drv_pwm.c + condition: [device_series_2] + - path: peripheral_drivers/mikroe/src/drv_pwm_si91x.c + condition: [device_si91x] diff --git a/driver/component/services/mikroe_peripheral_drv_spi.slcc b/driver/component/services/mikroe_peripheral_drv_spi.slcc index e201526c..70d0e62c 100644 --- a/driver/component/services/mikroe_peripheral_drv_spi.slcc +++ b/driver/component/services/mikroe_peripheral_drv_spi.slcc @@ -8,6 +8,11 @@ quality: evaluation root_path: driver requires: - name: spidrv + condition: [device_series_1] + - name: spidrv + condition: [device_series_2] + - name: sl_gspi + condition: [device_si91x] - name: mikroe_peripheral_driver_digital_io recommends: - id: spidrv @@ -24,3 +29,8 @@ include: - path: drv_spi_master.h source: - path: peripheral_drivers/mikroe/src/drv_spi_master.c + condition: [device_series_1] + - path: peripheral_drivers/mikroe/src/drv_spi_master.c + condition: [device_series_2] + - path: peripheral_drivers/mikroe/src/drv_spi_master_si91x.c + condition: [device_si91x] diff --git a/driver/peripheral_drivers/mikroe/inc/drv_analog_in.h b/driver/peripheral_drivers/mikroe/inc/drv_analog_in.h index 82a72b35..27c8bea2 100644 --- a/driver/peripheral_drivers/mikroe/inc/drv_analog_in.h +++ b/driver/peripheral_drivers/mikroe/inc/drv_analog_in.h @@ -44,18 +44,12 @@ extern "C" { #endif -#include "em_cmu.h" -#include "em_gpio.h" - -#if defined(_SILICON_LABS_32B_SERIES_1) -#include "em_adc.h" -#elif defined(_SILICON_LABS_32B_SERIES_2) -#include "em_iadc.h" -#endif - +#include #include "hal_gpio.h" #include "drv_name.h" +typedef const void *mikroe_adc_handle_t; ///< Created ADC handle type + typedef enum { ADC_SUCCESS = 0, @@ -78,7 +72,7 @@ typedef enum ANALOG_IN_RESOLUTION_14_BIT, ANALOG_IN_RESOLUTION_16_BIT, - /*!< Default resolution. */ + ///< Default resolution ANALOG_IN_RESOLUTION_DEFAULT = ANALOG_IN_RESOLUTION_12_BIT } analog_in_resolution_t; @@ -89,13 +83,10 @@ typedef struct analog_in_vref_t vref_input; float vref_value; } analog_in_config_t; + typedef struct { -#if defined(_SILICON_LABS_32B_SERIES_1) - ADC_TypeDef *handle; -#elif defined(_SILICON_LABS_32B_SERIES_2) - IADC_TypeDef *handle; -#endif + mikroe_adc_handle_t handle; analog_in_config_t config; } analog_in_t; diff --git a/driver/peripheral_drivers/mikroe/inc/drv_digital_in.h b/driver/peripheral_drivers/mikroe/inc/drv_digital_in.h index 2a5b19eb..4560e480 100644 --- a/driver/peripheral_drivers/mikroe/inc/drv_digital_in.h +++ b/driver/peripheral_drivers/mikroe/inc/drv_digital_in.h @@ -56,6 +56,8 @@ typedef struct { } digital_in_t; err_t digital_in_init(digital_in_t *in, pin_name_t name); +err_t digital_in_pullup_init(digital_in_t *in, pin_name_t name); +err_t digital_in_pulldown_init(digital_in_t *in, pin_name_t name); uint8_t digital_in_read(digital_in_t *in); #ifdef __cplusplus diff --git a/driver/peripheral_drivers/mikroe/inc/drv_i2c_master.h b/driver/peripheral_drivers/mikroe/inc/drv_i2c_master.h index e894e54b..de9c6127 100644 --- a/driver/peripheral_drivers/mikroe/inc/drv_i2c_master.h +++ b/driver/peripheral_drivers/mikroe/inc/drv_i2c_master.h @@ -4,7 +4,7 @@ * @version 1.0.0 ******************************************************************************* * # License - * Copyright 2022 Silicon Laboratories Inc. www.silabs.com + * Copyright 2024 Silicon Laboratories Inc. www.silabs.com ******************************************************************************* * * SPDX-License-Identifier: Zlib @@ -48,7 +48,8 @@ extern "C" { #include #include #include "drv_name.h" -#include "sl_i2cspm.h" + +typedef const void *mikroe_i2c_handle_t; ///< Created I2C handle type typedef enum { I2C_MASTER_SUCCESS = 0, I2C_MASTER_ERROR = (-1) @@ -67,7 +68,7 @@ typedef struct { } i2c_master_config_t; typedef struct { - sl_i2cspm_t *handle; + mikroe_i2c_handle_t handle; i2c_master_config_t config; } i2c_master_t; diff --git a/driver/peripheral_drivers/mikroe/inc/drv_pwm.h b/driver/peripheral_drivers/mikroe/inc/drv_pwm.h index d4450402..768d3a09 100644 --- a/driver/peripheral_drivers/mikroe/inc/drv_pwm.h +++ b/driver/peripheral_drivers/mikroe/inc/drv_pwm.h @@ -46,7 +46,8 @@ extern "C" { #include "drv_name.h" #include "hal_gpio.h" -#include "sl_pwm.h" + +typedef const void *mikroe_pwm_handle_t; ///< Created PWM handle type typedef enum { PWM_SUCCESS = 0, PWM_ERROR = (-1) @@ -58,7 +59,7 @@ typedef struct { } pwm_config_t; typedef struct { - sl_pwm_instance_t *handle; + mikroe_pwm_handle_t handle; hal_gpio_t pin; pwm_config_t config; } pwm_t; diff --git a/driver/peripheral_drivers/mikroe/inc/drv_spi_master.h b/driver/peripheral_drivers/mikroe/inc/drv_spi_master.h index 6d194fed..016a8d0b 100644 --- a/driver/peripheral_drivers/mikroe/inc/drv_spi_master.h +++ b/driver/peripheral_drivers/mikroe/inc/drv_spi_master.h @@ -48,7 +48,8 @@ extern "C" { #include #include #include "drv_name.h" -#include "spidrv.h" + +typedef const void *mikroe_spi_handle_t; ///< Created SPI handle type typedef enum { SPI_MASTER_SUCCESS = 0, SPI_MASTER_ERROR = (-1) @@ -81,7 +82,7 @@ typedef struct { } spi_master_config_t; typedef struct { - SPIDRV_Handle_t handle; + mikroe_spi_handle_t handle; spi_master_config_t config; } spi_master_t; @@ -101,6 +102,10 @@ err_t spi_master_write(spi_master_t *obj, err_t spi_master_read(spi_master_t *obj, uint8_t *read_data_buffer, size_t read_data_length); +err_t spi_master_exchange(spi_master_t *obj, + uint8_t *write_data_buffer, + uint8_t *read_data_buffer, + size_t exchange_data_length); err_t spi_master_write_then_read(spi_master_t *obj, uint8_t *write_data_buffer, size_t length_write_data, diff --git a/driver/peripheral_drivers/mikroe/inc/hal_gpio.h b/driver/peripheral_drivers/mikroe/inc/hal_gpio.h index 3e235656..f72d04cc 100644 --- a/driver/peripheral_drivers/mikroe/inc/hal_gpio.h +++ b/driver/peripheral_drivers/mikroe/inc/hal_gpio.h @@ -44,22 +44,35 @@ extern "C" { #endif -#define HAL_PIN_NC 0xffffffff -#define HAL_PORT_NC 0xffffffff +#define HAL_PIN_NC 0xffffffff +#define HAL_PORT_NC 0xffffffff -#define PORT_SIZE (16) +#define PORT_SIZE (16) + +#ifndef SL_SI91X_ULP_GPIO_PORT +#define SL_SI91X_ULP_GPIO_PORT 4 ///< ULP GPIO port number +#endif #define hal_gpio_pin_index(pin_name) \ - ((pin_name) % PORT_SIZE) + ((pin_name) % PORT_SIZE) + #define hal_gpio_port_index(pin_name) \ - ((pin_name) / PORT_SIZE) + ((pin_name) / PORT_SIZE) #define hal_gpio_pin_mask(pin_name) \ - (0x01 << gpio_pin_index(pin_name)) + (0x01 << gpio_pin_index(pin_name)) + +#if (defined(SLI_SI917)) +#define hal_gpio_pin_name(port_index, pin_index) \ + ((port_index) == SL_SI91X_ULP_GPIO_PORT) \ + ? ((pin_name_t)(port_index) * PORT_SIZE + (pin_index)) \ + : ((pin_name_t)(pin_index)) +#else #define hal_gpio_pin_name(port_index, pin_index) \ - ((pin_name_t)(port_index) * PORT_SIZE + (pin_index)) + ((pin_name_t)(port_index) * PORT_SIZE + (pin_index)) +#endif #define hal_gpio_port_name(port_index) \ - ((port_name_t)(port_index) * PORT_SIZE) + ((port_name_t)(port_index) * PORT_SIZE) typedef struct { uint32_t base; diff --git a/driver/peripheral_drivers/mikroe/src/drv_analog_in.c b/driver/peripheral_drivers/mikroe/src/drv_analog_in.c index 93ba3b2f..57f8de9c 100644 --- a/driver/peripheral_drivers/mikroe/src/drv_analog_in.c +++ b/driver/peripheral_drivers/mikroe/src/drv_analog_in.c @@ -37,10 +37,18 @@ * ******************************************************************************/ +#include #include #include +#include "em_cmu.h" #include "drv_analog_in.h" +#if defined(_SILICON_LABS_32B_SERIES_1) +#include "em_adc.h" +#elif defined(_SILICON_LABS_32B_SERIES_2) +#include "em_iadc.h" +#endif + #if defined(_SILICON_LABS_32B_SERIES_1) #define CLK_ADC_FREQ 16000000 #elif defined(_SILICON_LABS_32B_SERIES_2) @@ -57,10 +65,10 @@ #if defined(_SILICON_LABS_32B_SERIES_2) #define calc_adc_pos(port, pin) \ - ((((port) * 16) + pin) + (unsigned int)iadcNegInputPortAPin0) + ((((port) * 16) + pin) + (unsigned int)iadcNegInputPortAPin0) #define adc_mux_even(ref, adc, bus, index) \ - GPIO->bus ## BUSALLOC |= \ - GPIO_ ## bus ## BUSALLOC_ ## bus ## EVEN ## index ## _ ## adc; + GPIO->bus ## BUSALLOC |= \ + GPIO_ ## bus ## BUSALLOC_ ## bus ## EVEN ## index ## _ ## adc; #endif #if defined(_SILICON_LABS_32B_SERIES_1) @@ -103,10 +111,11 @@ err_t analog_in_open(analog_in_t *obj, analog_in_config_t *config) analog_in_config_t *p_config = &obj->config; memcpy(p_config, config, sizeof(analog_in_config_t)); - if (ADC_SUCCESS != hal_adc_init(obj)) { + if (_acquire(obj, true) == ACQUIRE_FAIL) { return ADC_ERROR; } - return _acquire(obj, true); + + return hal_adc_init(obj); } err_t analog_in_set_resolution(analog_in_t *obj, @@ -409,27 +418,28 @@ static err_t hal_adc_init(analog_in_t *obj) return ADC_ERROR; } - ADC_Init(obj->handle, &init); - ADC_InitSingle(obj->handle, &initSingle); + ADC_Init((ADC_TypeDef *)obj->handle, &init); + ADC_InitSingle((ADC_TypeDef *)obj->handle, &initSingle); return ADC_SUCCESS; } static void hal_adc_deinit(analog_in_t *obj) { - ADC_Reset(obj->handle); + ADC_Reset((ADC_TypeDef *)obj->handle); } uint16_t hal_adc_read(analog_in_t *obj) { + ADC_TypeDef *ptr = (ADC_TypeDef *)obj->handle; // Start ADC conversion - ADC_Start(obj->handle, adcStartSingle); + ADC_Start(ptr, adcStartSingle); // Wait for conversion to be complete - while (!(obj->handle->STATUS & _ADC_STATUS_SINGLEDV_MASK)) {} + while (!(ptr->STATUS & _ADC_STATUS_SINGLEDV_MASK)) {} // Get ADC result - return (uint16_t)ADC_DataSingleGet(obj->handle); + return (uint16_t)ADC_DataSingleGet((ADC_TypeDef *)obj->handle); } #elif defined(_SILICON_LABS_32B_SERIES_2) @@ -442,9 +452,9 @@ static err_t allocate_analog_bus_even0(analog_in_t *obj) adc_mux_even(obj->handle, ADC0, A, 0); return ADC_SUCCESS; #elif (IADC_COUNT == 2) - } else if (obj->handle == IADC1) { - adc_mux_even(obj->handle, ADC1, A, 0); - return ADC_SUCCESS; + } else if (obj->handle == IADC1) { + adc_mux_even(obj->handle, ADC1, A, 0); + return ADC_SUCCESS; #endif } else { return ADC_ERROR; @@ -456,9 +466,9 @@ static err_t allocate_analog_bus_even0(analog_in_t *obj) adc_mux_even(obj->handle, ADC0, B, 0); return ADC_SUCCESS; #elif (IADC_COUNT == 2) - } else if (obj->handle == IADC1) { - adc_mux_even(obj->handle, ADC1, B, 0); - return ADC_SUCCESS; + } else if (obj->handle == IADC1) { + adc_mux_even(obj->handle, ADC1, B, 0); + return ADC_SUCCESS; #endif } else { return ADC_ERROR; @@ -471,9 +481,9 @@ static err_t allocate_analog_bus_even0(analog_in_t *obj) adc_mux_even(obj->handle, ADC0, CD, 0); return ADC_SUCCESS; #elif (IADC_COUNT == 2) - } else if (obj->handle == IADC1) { - adc_mux_even(obj->handle, ADC1, CD, 0); - return ADC_SUCCESS; + } else if (obj->handle == IADC1) { + adc_mux_even(obj->handle, ADC1, CD, 0); + return ADC_SUCCESS; #endif } else { return ADC_ERROR; @@ -499,8 +509,8 @@ static err_t hal_adc_init(analog_in_t *obj) if (obj->handle == IADC0) { CMU_ClockEnable(cmuClock_IADC0, true); #elif (IADC_COUNT == 2) - } else if (obj->handle == IADC0) { - CMU_ClockEnable(cmuClock_IADC0, true); +} else if (obj->handle == IADC0) { + CMU_ClockEnable(cmuClock_IADC0, true); #endif } else { return ADC_ERROR; @@ -513,12 +523,12 @@ static err_t hal_adc_init(analog_in_t *obj) // Set the prescaler needed for the intended IADC clock frequency init.srcClkPrescale = - IADC_calcSrcClkPrescale(obj->handle, CLK_SRC_ADC_FREQ, 0); + IADC_calcSrcClkPrescale((IADC_TypeDef *)obj->handle, CLK_SRC_ADC_FREQ, 0); // Shutdown between conversions to reduce current init.warmup = iadcWarmupNormal; - /* + /** * Configuration 0 is used by both scan and single conversions by * default. Use internal bandgap as the reference and specify the * reference voltage in mV. @@ -544,8 +554,8 @@ static err_t hal_adc_init(analog_in_t *obj) initAllConfigs.configs[0].vRef = reference_voltage; #if defined(_IADC_CFG_REFSEL_VREF2P5) } else if (reference_voltage <= 2500) { - initAllConfigs.configs[0].reference = iadcCfgReferenceExt2V5; - initAllConfigs.configs[0].vRef = reference_voltage; + initAllConfigs.configs[0].reference = iadcCfgReferenceExt2V5; + initAllConfigs.configs[0].vRef = reference_voltage; #endif #if defined(_IADC_CFG_REFSEL_VREFBUF) } else if (reference_voltage < (MIKROE_CONFIG_ADC_AVDD - 300)) { @@ -607,7 +617,7 @@ static err_t hal_adc_init(analog_in_t *obj) return ADC_ERROR; } - /* + /** * Resolution is not configurable directly but is based on the * selected oversampling ratio (osrHighSpeed), which defaults to * 2x and generates 12-bit results. @@ -620,7 +630,7 @@ static err_t hal_adc_init(analog_in_t *obj) initAllConfigs.configs[0].osrHighSpeed = iadcCfgOsrHighSpeed2x; initAllConfigs.configs[0].analogGain = iadcCfgAnalogGain1x; - /* + /** * CLK_SRC_ADC must be prescaled by some value greater than 1 to * derive the intended CLK_ADC frequency. * @@ -632,13 +642,13 @@ static err_t hal_adc_init(analog_in_t *obj) * 2-clock input multiplexer switching time is included. */ initAllConfigs.configs[0].adcClkPrescale = - IADC_calcAdcClkPrescale(obj->handle, + IADC_calcAdcClkPrescale((IADC_TypeDef *)obj->handle, CLK_ADC_FREQ, 0, iadcCfgModeNormal, init.srcClkPrescale); - /* + /** * Specify the input channel. When negInput = iadcNegInputGnd, the * conversion is single-ended. */ @@ -654,27 +664,27 @@ static err_t hal_adc_init(analog_in_t *obj) } // Initialize IADC - IADC_init(obj->handle, &init, &initAllConfigs); + IADC_init((IADC_TypeDef *)obj->handle, &init, &initAllConfigs); // Initialize a single-channel conversion - IADC_initSingle(obj->handle, &initSingle, &singleInput); + IADC_initSingle((IADC_TypeDef *)obj->handle, &initSingle, &singleInput); return ADC_SUCCESS; } static void hal_adc_deinit(analog_in_t *obj) { - IADC_reset(obj->handle); + IADC_reset((IADC_TypeDef *)obj->handle); } uint16_t hal_adc_read(analog_in_t *obj) { - IADC_command(obj->handle, iadcCmdStartSingle); + IADC_command((IADC_TypeDef *)obj->handle, iadcCmdStartSingle); // while combined status bits 8 & 6 don't equal 1 and 0 respectively) - while ((IADC_getStatus(obj->handle) & (_IADC_STATUS_CONVERTING_MASK - | _IADC_STATUS_SINGLEFIFODV_MASK)) + while ((IADC_getStatus((IADC_TypeDef *)obj->handle) + & (_IADC_STATUS_CONVERTING_MASK | _IADC_STATUS_SINGLEFIFODV_MASK)) != IADC_STATUS_SINGLEFIFODV) {} - return IADC_pullSingleFifoResult(obj->handle).data; + return IADC_pullSingleFifoResult((IADC_TypeDef *)obj->handle).data; } #endif diff --git a/driver/peripheral_drivers/mikroe/src/drv_analog_in_si91x.c b/driver/peripheral_drivers/mikroe/src/drv_analog_in_si91x.c new file mode 100644 index 00000000..cba6e400 --- /dev/null +++ b/driver/peripheral_drivers/mikroe/src/drv_analog_in_si91x.c @@ -0,0 +1,258 @@ +/***************************************************************************//** + * @file drv_analog_in_si91x.c + * @brief mikroSDK 2.0 Click Peripheral Drivers - Analog IN for Si91x + * @version 1.0.0 + ******************************************************************************* + * # License + * Copyright 2024 Silicon Laboratories Inc. www.silabs.com + ******************************************************************************* + * + * SPDX-License-Identifier: Zlib + * + * The licensor of this software is Silicon Laboratories Inc. + * + * This software is provided \'as-is\', without any express or implied + * warranty. In no event will the authors be held liable for any damages + * arising from the use of this software. + * + * Permission is granted to anyone to use this software for any purpose, + * including commercial applications, and to alter it and redistribute it + * freely, subject to the following restrictions: + * + * 1. The origin of this software must not be misrepresented; you must not + * claim that you wrote the original software. If you use this software + * in a product, an acknowledgment in the product documentation would be + * appreciated but is not required. + * 2. Altered source versions must be plainly marked as such, and must not be + * misrepresented as being the original software. + * 3. This notice may not be removed or altered from any source distribution. + * + ******************************************************************************* + * + * EVALUATION QUALITY + * This code has been minimally tested to ensure that it builds with the + * specified dependency versions and is suitable as a demonstration for + * evaluation purposes only. + * This code will be maintained at the sole discretion of Silicon Labs. + * + ******************************************************************************/ + +#include "sl_status.h" +#include "drv_analog_in.h" +#include "sl_si91x_adc.h" +#include "sl_adc_instances.h" + +#define ADC_MAX_OP_VALUE 4096 // Maximum output value get from adc +#define AUXADC_DATA_TWELFTH BIT(11) // Reading twelfth bit of AUXADC_DATA reg + +static analog_in_t *_owner = NULL; +static sl_adc_config_t drv_adc_config; +static volatile boolean_t data_sample_complete_flag = false; + +static void callback_event(uint8_t channel_no, uint8_t event); +static err_t _acquire(analog_in_t *obj, bool obj_open_state); +static err_t hal_adc_read(analog_in_t *obj, uint16_t *data); + +void analog_in_configure_default(analog_in_config_t *config) +{ + config->input_pin = 0xFFFFFFFF; + config->resolution = ANALOG_IN_RESOLUTION_DEFAULT; + config->vref_input = ANALOG_IN_VREF_EXTERNAL; + config->vref_value = 3.3; +} + +err_t analog_in_open(analog_in_t *obj, analog_in_config_t *config) +{ + sl_status_t status; + analog_in_config_t *p_config = &obj->config; + + memcpy(p_config, config, sizeof(analog_in_config_t)); + + if (_acquire(obj, true) == ACQUIRE_FAIL) { + return ADC_ERROR; + } + + drv_adc_config.num_of_channel_enable = 1; + drv_adc_config.operation_mode = SL_ADC_STATIC_MODE; + sl_adc_channel_config.channel = *(uint8_t *)obj->handle; + sl_adc_channel_config.num_of_samples[sl_adc_channel_config.channel] = 1; + + // Initialize ADC + status = sl_si91x_adc_init(sl_adc_channel_config, + drv_adc_config, + obj->config.vref_value); + if (status != SL_STATUS_OK) { + return ADC_ERROR; + } + // Configure ADC channel. + status = sl_si91x_adc_set_channel_configuration(sl_adc_channel_config, + drv_adc_config); + if (status != SL_STATUS_OK) { + return ADC_ERROR; + } + // Register user callback function + status = sl_si91x_adc_register_event_callback(callback_event); + if (status != SL_STATUS_OK) { + return ADC_ERROR; + } + + return ADC_SUCCESS; +} + +err_t analog_in_set_resolution(analog_in_t *obj, + analog_in_resolution_t resolution) +{ + if (_acquire(obj, false) != ACQUIRE_FAIL) { + obj->config.resolution = resolution; + return ADC_SUCCESS; + } + + return ADC_ERROR; +} + +err_t analog_in_set_vref_input(analog_in_t *obj, analog_in_vref_t vref) +{ + (void) vref; + if (_acquire(obj, false) == ACQUIRE_FAIL) { + return ADC_ERROR; + } + // TODO + return ADC_SUCCESS; +} + +err_t analog_in_set_vref_value(analog_in_t *obj, float vref_value) +{ + if (_acquire(obj, false) == ACQUIRE_FAIL) { + return ADC_ERROR; + } + + obj->config.vref_value = vref_value; + if (sl_si91x_adc_init(sl_adc_channel_config, + drv_adc_config, + vref_value) != SL_STATUS_OK) { + return ADC_ERROR; + } + + return ADC_SUCCESS; +} + +err_t analog_in_read(analog_in_t *obj, uint16_t *readDatabuf) +{ + uint16_t adc_value; + + if (_acquire(obj, false) == ACQUIRE_FAIL) { + return ADC_ERROR; + } + + if (hal_adc_read(obj, &adc_value) != SL_STATUS_OK) { + return ADC_ERROR; + } + + switch (obj->config.resolution) { + case ANALOG_IN_RESOLUTION_6_BIT: + *readDatabuf = adc_value >> 6; + break; + case ANALOG_IN_RESOLUTION_8_BIT: + *readDatabuf = adc_value >> 4; + break; + case ANALOG_IN_RESOLUTION_10_BIT: + *readDatabuf = adc_value >> 2; + break; + case ANALOG_IN_RESOLUTION_12_BIT: + *readDatabuf = adc_value; + break; + default: + return ADC_ERROR; + } + + return ADC_SUCCESS; +} + +err_t analog_in_read_voltage(analog_in_t *obj, float *readDatabuf) +{ + uint16_t adc_value; + + if (_acquire(obj, false) == ACQUIRE_FAIL) { + return ADC_ERROR; + } + + if (hal_adc_read(obj, &adc_value) != SL_STATUS_OK) { + return ADC_ERROR; + } + + *readDatabuf = (float)adc_value * obj->config.vref_value / ADC_MAX_OP_VALUE; + return ADC_SUCCESS; +} + +void analog_in_close(analog_in_t *obj) +{ + sl_si91x_adc_deinit(drv_adc_config); + obj->handle = NULL; + _owner = NULL; +} + +static err_t _acquire(analog_in_t *obj, bool obj_open_state) +{ + err_t status = ACQUIRE_SUCCESS; + + if ((obj_open_state == true) && (_owner == obj)) { + return ACQUIRE_FAIL; + } + if (_owner != obj) { + _owner = obj; + } + return status; +} + +static err_t hal_adc_read(analog_in_t *obj, uint16_t *data) +{ + (void)obj; + uint16_t adc_value; + + // Start the ADC operation + if (sl_si91x_adc_start(drv_adc_config) != SL_STATUS_OK) { + return ADC_ERROR; + } + // Wait until ADC data acquisition done + while (data_sample_complete_flag != true) {} + data_sample_complete_flag = false; + if (sl_si91x_adc_stop(drv_adc_config) != SL_STATUS_OK) { + return ADC_ERROR; + } + if (sl_si91x_adc_read_data_static(sl_adc_channel_config, + drv_adc_config, + &adc_value) != SL_STATUS_OK) { + return ADC_ERROR; + } + + if (adc_value & AUXADC_DATA_TWELFTH) { + adc_value = (int16_t)(adc_value & (ADC_MASK_VALUE)); + } else { + adc_value = adc_value | AUXADC_DATA_TWELFTH; + } + + *data = adc_value; + return ADC_SUCCESS; +} + +/******************************************************************************* + * Callback event function + * It is responsible for the event which are triggered by ADC interface + * @param event : INTERNAL_DMA => Single channel data acquisition done. + * ADC_STATIC_MODE_CALLBACK => Static mode adc data + * acquisition done. + ******************************************************************************/ +static void callback_event(uint8_t channel_no, uint8_t event) +{ + (void) channel_no; + + switch (event) { + case SL_INTERNAL_DMA: + break; + case SL_ADC_STATIC_MODE_EVENT: + data_sample_complete_flag = true; + break; + } +} + +// ------------------------------------------------------------------------- END diff --git a/driver/peripheral_drivers/mikroe/src/drv_digital_in.c b/driver/peripheral_drivers/mikroe/src/drv_digital_in.c index e167965e..f57eec9f 100644 --- a/driver/peripheral_drivers/mikroe/src/drv_digital_in.c +++ b/driver/peripheral_drivers/mikroe/src/drv_digital_in.c @@ -40,7 +40,38 @@ #include "drv_digital_in.h" #include "em_gpio.h" +static err_t drv_digital_in_init(digital_in_t *in, + pin_name_t name, + GPIO_Mode_TypeDef mode, + unsigned int out); + err_t digital_in_init(digital_in_t *in, pin_name_t name) +{ + return drv_digital_in_init(in, name, gpioModeInput, 0); +} + +err_t digital_in_pullup_init(digital_in_t *in, pin_name_t name) +{ + return drv_digital_in_init(in, name, gpioModeInputPull, 1); +} + +err_t digital_in_pulldown_init(digital_in_t *in, pin_name_t name) +{ + return drv_digital_in_init(in, name, gpioModeInputPull, 0); +} + +uint8_t digital_in_read(digital_in_t *in) +{ + if (GPIO_PORT_VALID(in->pin.base)) { + return (uint8_t) ((GPIO_PortInGet(in->pin.base) & in->pin.mask) != 0); + } + return 0; +} + +static err_t drv_digital_in_init(digital_in_t *in, + pin_name_t name, + GPIO_Mode_TypeDef mode, + unsigned int out) { GPIO_Port_TypeDef port_index; unsigned int pin_index; @@ -57,18 +88,10 @@ err_t digital_in_init(digital_in_t *in, pin_name_t name) if (!GPIO_PORT_PIN_VALID(port_index, pin_index)) { return DIGITAL_IN_UNSUPPORTED_PIN; } - GPIO_PinModeSet(port_index, pin_index, gpioModeInput, 0); + GPIO_PinModeSet(port_index, pin_index, mode, out); in->pin.base = port_index; in->pin.mask = 1 << pin_index; return DIGITAL_IN_SUCCESS; } -uint8_t digital_in_read(digital_in_t *in) -{ - if (GPIO_PORT_VALID(in->pin.base)) { - return (uint8_t) ((GPIO_PortInGet(in->pin.base) & in->pin.mask) != 0); - } - return 0; -} - // ------------------------------------------------------------------------- END diff --git a/driver/peripheral_drivers/mikroe/src/drv_digital_in_si91x.c b/driver/peripheral_drivers/mikroe/src/drv_digital_in_si91x.c new file mode 100644 index 00000000..bb105010 --- /dev/null +++ b/driver/peripheral_drivers/mikroe/src/drv_digital_in_si91x.c @@ -0,0 +1,174 @@ +/***************************************************************************//** + * @file drv_digital_in_si91x.c + * @brief mikroSDK 2.0 Click Peripheral Drivers - Digital IN for Si91x + * @version 1.0.0 + ******************************************************************************* + * # License + * Copyright 2022 Silicon Laboratories Inc. www.silabs.com + ******************************************************************************* + * + * SPDX-License-Identifier: Zlib + * + * The licensor of this software is Silicon Laboratories Inc. + * + * This software is provided \'as-is\', without any express or implied + * warranty. In no event will the authors be held liable for any damages + * arising from the use of this software. + * + * Permission is granted to anyone to use this software for any purpose, + * including commercial applications, and to alter it and redistribute it + * freely, subject to the following restrictions: + * + * 1. The origin of this software must not be misrepresented; you must not + * claim that you wrote the original software. If you use this software + * in a product, an acknowledgment in the product documentation would be + * appreciated but is not required. + * 2. Altered source versions must be plainly marked as such, and must not be + * misrepresented as being the original software. + * 3. This notice may not be removed or altered from any source distribution. + * + ******************************************************************************* + * + * EVALUATION QUALITY + * This code has been minimally tested to ensure that it builds with the + * specified dependency versions and is suitable as a demonstration for + * evaluation purposes only. + * This code will be maintained at the sole discretion of Silicon Labs. + * + ******************************************************************************/ + +#include "drv_digital_in.h" +#include "sl_si91x_peripheral_gpio.h" + +static err_t drv_digital_in_init(digital_in_t *in, + pin_name_t name, + sl_gpio_mode_t mode, + uint32_t out); + +static uint8_t sl_si91x_gpio_pad_mapping(unsigned int pin) +{ + switch (pin) { + case 6: + return 1; + case 7: + return 2; + case 8: + return 3; + case 9: + return 4; + case 10: + return 5; + case 11: + return 6; + case 12: + return 7; + case 15: + return 8; + case 31: + case 32: + case 33: + case 34: + return 9; + case 46: + return 10; + case 47: + return 11; + case 48: + return 12; + case 49: + return 13; + case 50: + return 14; + case 51: + return 15; + case 52: + return 16; + case 53: + return 17; + case 54: + return 18; + case 55: + return 19; + case 56: + return 20; + case 57: + return 21; + default: + return 0; + } +} + +err_t digital_in_init(digital_in_t *in, pin_name_t name) +{ + return drv_digital_in_init(in, name, SL_GPIO_MODE_0, 0); +} + +err_t digital_in_pullup_init(digital_in_t *in, pin_name_t name) +{ + return drv_digital_in_init(in, name, SL_GPIO_MODE_0, 1); +} + +err_t digital_in_pulldown_init(digital_in_t *in, pin_name_t name) +{ + return drv_digital_in_init(in, name, SL_GPIO_MODE_0, 0); +} + +uint8_t digital_in_read(digital_in_t *in) +{ + return sl_gpio_get_pin_input(in->pin.base, in->pin.mask); +} + +static err_t drv_digital_in_init(digital_in_t *in, + pin_name_t name, + sl_gpio_mode_t mode, + uint32_t out) +{ + sl_gpio_port_t port_index; + unsigned int pin_index; + uint8_t pad_number; + + in->pin.base = (uint32_t) -1; + in->pin.mask = 0; + if (HAL_PIN_NC == name) { + return DIGITAL_IN_UNSUPPORTED_PIN; + } + + port_index = (sl_gpio_port_t) hal_gpio_port_index(name); + pin_index = hal_gpio_pin_index(name); + + if (!SL_GPIO_VALIDATE_PORT(port_index)) { + return DIGITAL_IN_UNSUPPORTED_PIN; + } + if (port_index == SL_ULP_GPIO_PORT) { + if (!SL_GPIO_VALIDATE_ULP_PORT_PIN(port_index, pin_index)) { + return DIGITAL_IN_UNSUPPORTED_PIN; + } + } else { + if (!SL_GPIO_NDEBUG_PORT_PIN(port_index, pin_index)) { + return DIGITAL_IN_UNSUPPORTED_PIN; + } + } + + if (port_index == SL_ULP_GPIO_PORT) { + sl_si91x_gpio_enable_clock((sl_si91x_gpio_select_clock_t)ULPCLK_GPIO); + sl_si91x_gpio_enable_ulp_pad_receiver(pin_index); + } else { + sl_si91x_gpio_enable_clock((sl_si91x_gpio_select_clock_t)M4CLK_GPIO); + sl_si91x_gpio_enable_pad_receiver(name); + pad_number = sl_si91x_gpio_pad_mapping(name); + if (pad_number) { + sl_si91x_gpio_enable_pad_selection(pad_number); + } + } + + sl_gpio_set_pin_mode(port_index, pin_index, mode, out); + sl_si91x_gpio_set_pin_direction(port_index, + pin_index, + (sl_si91x_gpio_direction_t)GPIO_INPUT); + + in->pin.base = port_index; + in->pin.mask = pin_index; + return DIGITAL_IN_SUCCESS; +} + +// ------------------------------------------------------------------------- END diff --git a/driver/peripheral_drivers/mikroe/src/drv_digital_out.c b/driver/peripheral_drivers/mikroe/src/drv_digital_out.c index 735605ca..e702ecc1 100644 --- a/driver/peripheral_drivers/mikroe/src/drv_digital_out.c +++ b/driver/peripheral_drivers/mikroe/src/drv_digital_out.c @@ -1,6 +1,6 @@ /***************************************************************************//** * @file drv_digital_out.h - * @brief mikroSDK 2.0 Click Peripheral Drivers + * @brief mikroSDK 2.0 Click Peripheral Drivers - Digital OUT * @version 1.0.0 ******************************************************************************* * # License diff --git a/driver/peripheral_drivers/mikroe/src/drv_digital_out_si91x.c b/driver/peripheral_drivers/mikroe/src/drv_digital_out_si91x.c new file mode 100644 index 00000000..d753cfd1 --- /dev/null +++ b/driver/peripheral_drivers/mikroe/src/drv_digital_out_si91x.c @@ -0,0 +1,171 @@ +/***************************************************************************//** + * @file drv_digital_out_si91x.c + * @brief mikroSDK 2.0 Click Peripheral Drivers - Digital OUT for Si91x + * @version 1.0.0 + ******************************************************************************* + * # License + * Copyright 2022 Silicon Laboratories Inc. www.silabs.com + ******************************************************************************* + * + * SPDX-License-Identifier: Zlib + * + * The licensor of this software is Silicon Laboratories Inc. + * + * This software is provided \'as-is\', without any express or implied + * warranty. In no event will the authors be held liable for any damages + * arising from the use of this software. + * + * Permission is granted to anyone to use this software for any purpose, + * including commercial applications, and to alter it and redistribute it + * freely, subject to the following restrictions: + * + * 1. The origin of this software must not be misrepresented; you must not + * claim that you wrote the original software. If you use this software + * in a product, an acknowledgment in the product documentation would be + * appreciated but is not required. + * 2. Altered source versions must be plainly marked as such, and must not be + * misrepresented as being the original software. + * 3. This notice may not be removed or altered from any source distribution. + * + ******************************************************************************* + * + * EVALUATION QUALITY + * This code has been minimally tested to ensure that it builds with the + * specified dependency versions and is suitable as a demonstration for + * evaluation purposes only. + * This code will be maintained at the sole discretion of Silicon Labs. + * + ******************************************************************************/ + +#include "drv_digital_out.h" +#include "sl_si91x_peripheral_gpio.h" + +static uint8_t sl_si91x_gpio_pad_mapping(unsigned int pin) +{ + switch (pin) { + case 6: + return 1; + case 7: + return 2; + case 8: + return 3; + case 9: + return 4; + case 10: + return 5; + case 11: + return 6; + case 12: + return 7; + case 15: + return 8; + case 31: + case 32: + case 33: + case 34: + return 9; + case 46: + return 10; + case 47: + return 11; + case 48: + return 12; + case 49: + return 13; + case 50: + return 14; + case 51: + return 15; + case 52: + return 16; + case 53: + return 17; + case 54: + return 18; + case 55: + return 19; + case 56: + return 20; + case 57: + return 21; + default: + return 0; + } +} + +err_t digital_out_init(digital_out_t *out, pin_name_t name) +{ + sl_gpio_port_t port_index; + unsigned int pin_index; + uint8_t pad_number; + + out->pin.base = (uint32_t) -1; + out->pin.mask = 0; + if (HAL_PIN_NC == name) { + return DIGITAL_OUT_UNSUPPORTED_PIN; + } + + port_index = (sl_gpio_port_t) hal_gpio_port_index(name); + pin_index = hal_gpio_pin_index(name); + + if (!SL_GPIO_VALIDATE_PORT(port_index)) { + return DIGITAL_OUT_UNSUPPORTED_PIN; + } + + if (port_index == SL_ULP_GPIO_PORT) { + if (!SL_GPIO_VALIDATE_ULP_PORT_PIN(port_index, pin_index)) { + return DIGITAL_OUT_UNSUPPORTED_PIN; + } + } else { + if (!SL_GPIO_NDEBUG_PORT_PIN(port_index, pin_index)) { + return DIGITAL_OUT_UNSUPPORTED_PIN; + } + } + + if (port_index == SL_ULP_GPIO_PORT) { + sl_si91x_gpio_enable_clock((sl_si91x_gpio_select_clock_t)ULPCLK_GPIO); + sl_si91x_gpio_enable_ulp_pad_receiver(pin_index); + } else { + sl_si91x_gpio_enable_clock((sl_si91x_gpio_select_clock_t)M4CLK_GPIO); + sl_si91x_gpio_enable_pad_receiver(name); + pad_number = sl_si91x_gpio_pad_mapping(name); + if (pad_number) { + sl_si91x_gpio_enable_pad_selection(pad_number); + } + } + + sl_gpio_set_pin_mode(port_index, pin_index, SL_GPIO_MODE_0, 0); + sl_si91x_gpio_set_pin_direction(port_index, + pin_index, + (sl_si91x_gpio_direction_t)GPIO_OUTPUT); + + out->pin.base = port_index; + out->pin.mask = pin_index; + return DIGITAL_OUT_SUCCESS; +} + +void digital_out_high(digital_out_t *out) +{ + sl_gpio_set_pin_output(out->pin.base, out->pin.mask); +} + +void digital_out_low(digital_out_t *out) +{ + sl_gpio_clear_pin_output(out->pin.base, out->pin.mask); +} + +void digital_out_toggle(digital_out_t *out) +{ + sl_gpio_toggle_pin_output(out->pin.base, out->pin.mask); +} + +void digital_out_write(digital_out_t *out, uint8_t value) +{ + if (value) { + sl_gpio_set_pin_output(out->pin.base, out->pin.mask); + } else { + sl_gpio_clear_pin_output(out->pin.base, out->pin.mask); + } +} + +// ------------------------------------------------------------------------- END diff --git a/driver/peripheral_drivers/mikroe/src/drv_i2c_master.c b/driver/peripheral_drivers/mikroe/src/drv_i2c_master.c index 0041914b..18c2f025 100644 --- a/driver/peripheral_drivers/mikroe/src/drv_i2c_master.c +++ b/driver/peripheral_drivers/mikroe/src/drv_i2c_master.c @@ -1,10 +1,10 @@ /***************************************************************************//** * @file drv_i2c_master.h - * @brief mikroSDK 2.0 Click Peripheral Drivers + * @brief mikroSDK 2.0 Click Peripheral Drivers - I2C Master * @version 1.0.0 ******************************************************************************* * # License - * Copyright 2022 Silicon Laboratories Inc. www.silabs.com + * Copyright 2024 Silicon Laboratories Inc. www.silabs.com ******************************************************************************* * * SPDX-License-Identifier: Zlib @@ -37,27 +37,15 @@ * ******************************************************************************/ +#include "sl_i2cspm.h" #include "drv_i2c_master.h" #include "sl_status.h" -static void i2c_master_config_speed(i2c_master_t *obj); - static i2c_master_t *_owner = NULL; +static uint32_t last_i2c_speed_used; -static err_t _acquire(i2c_master_t *obj, bool obj_open_state) -{ - err_t status = ACQUIRE_SUCCESS; - - if ((obj_open_state == true) && (_owner == obj)) { - return ACQUIRE_FAIL; - } - - if (_owner != obj) { - _owner = obj; - } - - return status; -} +static void i2c_master_config_speed(i2c_master_t *obj); +static err_t _acquire(i2c_master_t *obj, bool obj_open_state); void i2c_master_configure_default(i2c_master_config_t *config) { @@ -80,82 +68,90 @@ err_t i2c_master_open(i2c_master_t *obj, i2c_master_config_t *config) err_t i2c_master_set_speed(i2c_master_t *obj, uint32_t speed) { - if (_acquire(obj, false) != ACQUIRE_FAIL) { - obj->config.speed = speed; - - // Configure i2c speed - i2c_master_config_speed(obj); - return I2C_MASTER_SUCCESS; - } else { + if (_acquire(obj, false) == ACQUIRE_FAIL) { return I2C_MASTER_ERROR; } + + obj->config.speed = speed; + // Configure i2c speed + i2c_master_config_speed(obj); + + return I2C_MASTER_SUCCESS; } err_t i2c_master_set_timeout(i2c_master_t *obj, uint16_t timeout_pass_count) { - if (_acquire(obj, false) != ACQUIRE_FAIL) { - obj->config.timeout_pass_count = timeout_pass_count; - // TODO Set timeout - return I2C_MASTER_SUCCESS; - } else { + if (_acquire(obj, false) == ACQUIRE_FAIL) { return I2C_MASTER_ERROR; } + + obj->config.timeout_pass_count = timeout_pass_count; + // TODO Set timeout + return I2C_MASTER_SUCCESS; } err_t i2c_master_set_slave_address(i2c_master_t *obj, uint8_t address) { - if (_acquire(obj, false) != ACQUIRE_FAIL) { - obj->config.addr = address; - return I2C_MASTER_SUCCESS; - } else { + if (_acquire(obj, false) == ACQUIRE_FAIL) { return I2C_MASTER_ERROR; } + + obj->config.addr = address; + return I2C_MASTER_SUCCESS; } err_t i2c_master_write(i2c_master_t *obj, uint8_t *write_data_buf, size_t len_write_data) { - if (_acquire(obj, false) != ACQUIRE_FAIL) { - I2C_TransferSeq_TypeDef seq; + if (_acquire(obj, false) == ACQUIRE_FAIL) { + return I2C_MASTER_ERROR; + } + + I2C_TransferSeq_TypeDef seq; + + if (last_i2c_speed_used != obj->config.speed) { + i2c_master_config_speed(obj); + } - seq.addr = obj->config.addr << 1; - seq.flags = I2C_FLAG_WRITE; + seq.addr = obj->config.addr << 1; + seq.flags = I2C_FLAG_WRITE; - /*Write buffer*/ - seq.buf[0].data = write_data_buf; - seq.buf[0].len = len_write_data; + // Write buffer + seq.buf[0].data = write_data_buf; + seq.buf[0].len = len_write_data; - if (I2CSPM_Transfer(obj->handle, &seq) != i2cTransferDone) { - return I2C_MASTER_ERROR; - } - return I2C_MASTER_SUCCESS; - } else { + if (I2CSPM_Transfer((sl_i2cspm_t *)obj->handle, &seq) != i2cTransferDone) { return I2C_MASTER_ERROR; } + return I2C_MASTER_SUCCESS; } err_t i2c_master_read(i2c_master_t *obj, uint8_t *read_data_buf, size_t len_read_data) { - if (_acquire(obj, false) != ACQUIRE_FAIL) { - I2C_TransferSeq_TypeDef seq; + if (_acquire(obj, false) == ACQUIRE_FAIL) { + return I2C_MASTER_ERROR; + } - seq.addr = obj->config.addr << 1; - seq.flags = I2C_FLAG_READ; + I2C_TransferSeq_TypeDef seq; - /*Read buffer*/ - seq.buf[0].data = read_data_buf; - seq.buf[0].len = len_read_data; + if (last_i2c_speed_used != obj->config.speed) { + i2c_master_config_speed(obj); + } - if (I2CSPM_Transfer(obj->handle, &seq) != i2cTransferDone) { - return I2C_MASTER_ERROR; - } - return I2C_MASTER_SUCCESS; - } else { + seq.addr = obj->config.addr << 1; + seq.flags = I2C_FLAG_READ; + + // Read buffer + seq.buf[0].data = read_data_buf; + seq.buf[0].len = len_read_data; + + if (I2CSPM_Transfer((sl_i2cspm_t *)obj->handle, &seq) != i2cTransferDone) { return I2C_MASTER_ERROR; } + return I2C_MASTER_SUCCESS; } err_t i2c_master_write_then_read(i2c_master_t *obj, @@ -164,27 +160,46 @@ err_t i2c_master_write_then_read(i2c_master_t *obj, uint8_t *read_data_buf, size_t len_read_data) { - if (_acquire(obj, false) != ACQUIRE_FAIL) { - I2C_TransferSeq_TypeDef seq; + if (_acquire(obj, false) == ACQUIRE_FAIL) { + return I2C_MASTER_ERROR; + } + + I2C_TransferSeq_TypeDef seq; - seq.addr = obj->config.addr << 1; - seq.flags = I2C_FLAG_WRITE_READ; + if (last_i2c_speed_used != obj->config.speed) { + i2c_master_config_speed(obj); + } - /*Write buffer*/ - seq.buf[0].data = write_data_buf; - seq.buf[0].len = len_write_data; + seq.addr = obj->config.addr << 1; + seq.flags = I2C_FLAG_WRITE_READ; - /*Read buffer*/ - seq.buf[1].data = read_data_buf; - seq.buf[1].len = len_read_data; + // Write buffer + seq.buf[0].data = write_data_buf; + seq.buf[0].len = len_write_data; - if (I2CSPM_Transfer(obj->handle, &seq) != i2cTransferDone) { - return I2C_MASTER_ERROR; - } - return I2C_MASTER_SUCCESS; - } else { + // Read buffer + seq.buf[1].data = read_data_buf; + seq.buf[1].len = len_read_data; + + if (I2CSPM_Transfer((sl_i2cspm_t *)obj->handle, &seq) != i2cTransferDone) { return I2C_MASTER_ERROR; } + return I2C_MASTER_SUCCESS; +} + +static err_t _acquire(i2c_master_t *obj, bool obj_open_state) +{ + err_t status = ACQUIRE_SUCCESS; + + if ((obj_open_state == true) && (_owner == obj)) { + return ACQUIRE_FAIL; + } + + if (_owner != obj) { + _owner = obj; + } + + return status; } void i2c_master_close(i2c_master_t *obj) @@ -198,6 +213,8 @@ static void i2c_master_config_speed(i2c_master_t *obj) uint32_t speed; I2C_ClockHLR_TypeDef i2c_mode; + last_i2c_speed_used = obj->config.speed; + switch (obj->config.speed) { default: case I2C_MASTER_SPEED_STANDARD: @@ -214,7 +231,7 @@ static void i2c_master_config_speed(i2c_master_t *obj) break; } // Set reference clock to zero to get the default reference clock - I2C_BusFreqSet(obj->handle, 0, speed, i2c_mode); + I2C_BusFreqSet((sl_i2cspm_t *)obj->handle, 0, speed, i2c_mode); } // ------------------------------------------------------------------------- END diff --git a/driver/peripheral_drivers/mikroe/src/drv_i2c_master_si91x.c b/driver/peripheral_drivers/mikroe/src/drv_i2c_master_si91x.c new file mode 100644 index 00000000..ca96ff2f --- /dev/null +++ b/driver/peripheral_drivers/mikroe/src/drv_i2c_master_si91x.c @@ -0,0 +1,299 @@ +/***************************************************************************//** + * @file drv_i2c_master_si91x.c + * @brief mikroSDK 2.0 Click Peripheral Drivers - I2C Master for Si91x + * @version 1.0.0 + ******************************************************************************* + * # License + * Copyright 2024 Silicon Laboratories Inc. www.silabs.com + ******************************************************************************* + * + * SPDX-License-Identifier: Zlib + * + * The licensor of this software is Silicon Laboratories Inc. + * + * This software is provided \'as-is\', without any express or implied + * warranty. In no event will the authors be held liable for any damages + * arising from the use of this software. + * + * Permission is granted to anyone to use this software for any purpose, + * including commercial applications, and to alter it and redistribute it + * freely, subject to the following restrictions: + * + * 1. The origin of this software must not be misrepresented; you must not + * claim that you wrote the original software. If you use this software + * in a product, an acknowledgment in the product documentation would be + * appreciated but is not required. + * 2. Altered source versions must be plainly marked as such, and must not be + * misrepresented as being the original software. + * 3. This notice may not be removed or altered from any source distribution. + * + ******************************************************************************* + * + * EVALUATION QUALITY + * This code has been minimally tested to ensure that it builds with the + * specified dependency versions and is suitable as a demonstration for + * evaluation purposes only. + * This code will be maintained at the sole discretion of Silicon Labs. + * + ******************************************************************************/ + +#include "drv_i2c_master.h" +#include "sl_si91x_i2c.h" +#include "sl_status.h" + +#define TX_THRESHOLD 0 // tx threshold value +#define RX_THRESHOLD 0 // rx threshold value + +static sl_i2c_config_t i2c_config = { + .mode = SL_I2C_LEADER_MODE, + .operating_mode = SL_I2C_STANDARD_MODE, + .transfer_type = SL_I2C_USING_INTERRUPT, + .i2c_callback = NULL, +}; + +static i2c_master_t *_owner = NULL; +static uint32_t last_i2c_speed_used; + +static err_t _acquire(i2c_master_t *obj, bool obj_open_state); +static err_t i2c_master_set_configuration(i2c_master_t *obj); +static void wait_till_i2c_gets_idle(sl_i2c_instance_t i2c_instance); + +void i2c_master_configure_default(i2c_master_config_t *config) +{ + config->addr = 0; + + config->sda = 0xFFFFFFFF; + config->scl = 0xFFFFFFFF; + + config->speed = I2C_MASTER_SPEED_STANDARD; + config->timeout_pass_count = 10000; +} + +err_t i2c_master_open(i2c_master_t *obj, i2c_master_config_t *config) +{ + sl_i2c_status_t i2c_status; + sl_i2c_instance_t i2c_handle = *(sl_i2c_instance_t *)obj->handle; + + i2c_master_config_t *p_config = &obj->config; + memcpy(p_config, config, sizeof(i2c_master_config_t)); + + if (_acquire(obj, true) == ACQUIRE_FAIL) { + return I2C_MASTER_ERROR; + } + + if (i2c_master_set_configuration(obj) != I2C_MASTER_SUCCESS) { + return I2C_MASTER_ERROR; + } + // Configuring RX and TX FIFO thresholds + i2c_status + = sl_i2c_driver_configure_fifo_threshold(i2c_handle, + TX_THRESHOLD, + RX_THRESHOLD); + if (i2c_status != SL_I2C_SUCCESS) { + return I2C_MASTER_ERROR; + } + + return I2C_MASTER_SUCCESS; +} + +err_t i2c_master_set_speed(i2c_master_t *obj, uint32_t speed) +{ + if (_acquire(obj, false) == ACQUIRE_FAIL) { + return I2C_MASTER_ERROR; + } + + obj->config.speed = speed; + // Configure i2c speed + return i2c_master_set_configuration(obj); +} + +err_t i2c_master_set_timeout(i2c_master_t *obj, uint16_t timeout_pass_count) +{ + if (_acquire(obj, false) != ACQUIRE_FAIL) { + obj->config.timeout_pass_count = timeout_pass_count; + // TODO Set timeout + return I2C_MASTER_SUCCESS; + } + + return I2C_MASTER_ERROR; +} + +err_t i2c_master_set_slave_address(i2c_master_t *obj, uint8_t address) +{ + if (_acquire(obj, false) != ACQUIRE_FAIL) { + obj->config.addr = address; + return I2C_MASTER_SUCCESS; + } + + return I2C_MASTER_ERROR; +} + +err_t i2c_master_write(i2c_master_t *obj, + uint8_t *write_data_buf, + size_t len_write_data) +{ + sl_i2c_status_t i2c_status; + sl_i2c_instance_t i2c_handle = *(sl_i2c_instance_t *)obj->handle; + + if (_acquire(obj, false) == ACQUIRE_FAIL) { + return I2C_MASTER_ERROR; + } + + if (last_i2c_speed_used != obj->config.speed) { + i2c_master_set_configuration(obj); + } + + i2c_status = sl_i2c_driver_send_data_blocking(i2c_handle, + obj->config.addr, + write_data_buf, + len_write_data); + if (i2c_status != SL_I2C_SUCCESS) { + return I2C_MASTER_ERROR; + } + + wait_till_i2c_gets_idle(i2c_handle); + return I2C_MASTER_SUCCESS; +} + +err_t i2c_master_read(i2c_master_t *obj, + uint8_t *read_data_buf, + size_t len_read_data) +{ + sl_i2c_status_t i2c_status; + sl_i2c_instance_t i2c_handle = *(sl_i2c_instance_t *)obj->handle; + + if (_acquire(obj, false) == ACQUIRE_FAIL) { + return I2C_MASTER_ERROR; + } + + if (last_i2c_speed_used != obj->config.speed) { + i2c_master_set_configuration(obj); + } + + i2c_status + = sl_i2c_driver_receive_data_blocking(i2c_handle, + obj->config.addr, + read_data_buf, + len_read_data); + if (i2c_status != SL_I2C_SUCCESS) { + return I2C_MASTER_ERROR; + } + wait_till_i2c_gets_idle(i2c_handle); + return I2C_MASTER_SUCCESS; +} + +err_t i2c_master_write_then_read(i2c_master_t *obj, + uint8_t *write_data_buf, + size_t len_write_data, + uint8_t *read_data_buf, + size_t len_read_data) +{ + sl_i2c_status_t i2c_status; + sl_i2c_instance_t i2c_handle = *(sl_i2c_instance_t *)obj->handle; + + if (_acquire(obj, false) == ACQUIRE_FAIL) { + return I2C_MASTER_ERROR; + } + + if (last_i2c_speed_used != obj->config.speed) { + i2c_master_set_configuration(obj); + } + + // Enabling combined format transfer, by enabling repeated start + sl_i2c_driver_enable_repeated_start(i2c_handle, TRUE); + i2c_status + = sl_i2c_driver_send_data_blocking(i2c_handle, + obj->config.addr, + write_data_buf, + len_write_data); + if (i2c_status != SL_I2C_SUCCESS) { + return I2C_MASTER_ERROR; + } + + // Adding delay for synchronization before leader sends read request + for (uint32_t x = 0; x < 2500; x++) { + __NOP(); + } + // Disabling repeated start before last cycle of transfer + sl_i2c_driver_enable_repeated_start(i2c_handle, FALSE); + i2c_status + = sl_i2c_driver_receive_data_blocking(i2c_handle, + obj->config.addr, + read_data_buf, + len_read_data); + if (i2c_status != SL_I2C_SUCCESS) { + return I2C_MASTER_ERROR; + } + wait_till_i2c_gets_idle(i2c_handle); + return I2C_MASTER_SUCCESS; +} + +void i2c_master_close(i2c_master_t *obj) +{ + obj->handle = NULL; + _owner = NULL; +} + +static err_t _acquire(i2c_master_t *obj, bool obj_open_state) +{ + err_t status = ACQUIRE_SUCCESS; + + if ((obj_open_state == true) && (_owner == obj)) { + return ACQUIRE_FAIL; + } + + if (_owner != obj) { + _owner = obj; + } + + return status; +} + +static err_t i2c_master_set_configuration(i2c_master_t *obj) +{ + sl_i2c_status_t i2c_status; + sl_i2c_instance_t i2c_handle = *(sl_i2c_instance_t *)obj->handle; + + last_i2c_speed_used = obj->config.speed; + + if (obj->config.speed >= I2C_MASTER_SPEED_FAST) { + i2c_config.operating_mode = SL_I2C_FAST_PLUS_MODE; + } else { + i2c_config.operating_mode = obj->config.speed + 1; + } + + /** + * Re-Initializing I2C instance + * (update i2c config-strucure name as per instance used) + */ + i2c_status = sl_i2c_driver_init(i2c_handle, + &i2c_config); + if (i2c_status != SL_I2C_SUCCESS) { + return I2C_MASTER_ERROR; + } + + return I2C_MASTER_SUCCESS; +} + +/******************************************************************************* + * Function to wait till I2C leader/follower comes to idle state + * + * @param i2c (I2C_TypeDef) Pointer to the I2C instance base address. + * @return none + ******************************************************************************/ +static void wait_till_i2c_gets_idle(sl_i2c_instance_t i2c_instance) +{ + I2C_TypeDef *i2c = I2C2; + + if (i2c_instance == SL_I2C0) { + i2c = I2C0; + } else if (i2c_instance == SL_I2C1) { + i2c = I2C1; + } else if (i2c_instance == SL_I2C2) { + i2c = I2C2; + } + // waiting for I2C instance to be in idle state + while (i2c->IC_STATUS_b.ACTIVITY) {} +} + +// ------------------------------------------------------------------------- END diff --git a/driver/peripheral_drivers/mikroe/src/drv_pwm.c b/driver/peripheral_drivers/mikroe/src/drv_pwm.c index 3044d59b..1955c278 100644 --- a/driver/peripheral_drivers/mikroe/src/drv_pwm.c +++ b/driver/peripheral_drivers/mikroe/src/drv_pwm.c @@ -1,6 +1,6 @@ /***************************************************************************//** * @file drv_pwm.h - * @brief mikroSDK 2.0 Click Peripheral Drivers + * @brief mikroSDK 2.0 Click Peripheral Drivers - PWM * @version 1.0.0 ******************************************************************************* * # License @@ -39,24 +39,12 @@ #include #include "em_timer.h" +#include "sl_pwm.h" #include "drv_pwm.h" static pwm_t *_owner = NULL; -static err_t _acquire(pwm_t *obj, bool obj_open_state) -{ - err_t status = ACQUIRE_SUCCESS; - - if ((obj_open_state == true) && (_owner == obj)) { - return ACQUIRE_FAIL; - } - - if (_owner != obj) { - _owner = obj; - } - - return status; -} +static err_t _acquire(pwm_t *obj, bool obj_open_state); void pwm_configure_default(pwm_config_t *config) { @@ -66,21 +54,16 @@ void pwm_configure_default(pwm_config_t *config) err_t pwm_open(pwm_t *obj, pwm_config_t *config) { - sl_pwm_config_t sl_pwm_config; pwm_config_t *p_config = &obj->config; memcpy(p_config, config, sizeof(pwm_config_t)); - sl_pwm_deinit(obj->handle); - sl_pwm_config.frequency = config->freq_hz; - sl_pwm_config.polarity = PWM_ACTIVE_HIGH; - sl_pwm_init(obj->handle, &sl_pwm_config); return _acquire(obj, true); } err_t pwm_start(pwm_t *obj) { if (_acquire(obj, false) != ACQUIRE_FAIL) { - sl_pwm_start(obj->handle); + sl_pwm_start((sl_pwm_instance_t *)obj->handle); return PWM_SUCCESS; } else { return PWM_ERROR; @@ -90,7 +73,7 @@ err_t pwm_start(pwm_t *obj) err_t pwm_stop(pwm_t *obj) { if (_acquire(obj, false) != ACQUIRE_FAIL) { - sl_pwm_stop(obj->handle); + sl_pwm_stop((sl_pwm_instance_t *)obj->handle); return PWM_SUCCESS; } else { return PWM_ERROR; @@ -100,7 +83,7 @@ err_t pwm_stop(pwm_t *obj) err_t pwm_set_duty(pwm_t *obj, float duty_ratio) { if (_acquire(obj, false) != ACQUIRE_FAIL) { - sl_pwm_set_duty_cycle(obj->handle, duty_ratio * 100); + sl_pwm_set_duty_cycle((sl_pwm_instance_t *)obj->handle, duty_ratio * 100); return PWM_SUCCESS; } else { return PWM_ERROR; @@ -109,26 +92,46 @@ err_t pwm_set_duty(pwm_t *obj, float duty_ratio) err_t pwm_set_freq(pwm_t *obj, uint32_t freq_hz) { + if (_acquire(obj, false) == ACQUIRE_FAIL) { + return PWM_ERROR; + } + sl_pwm_config_t sl_pwm_config; - if (_acquire(obj, false) != ACQUIRE_FAIL) { - obj->config.freq_hz = freq_hz; + obj->config.freq_hz = freq_hz; - sl_pwm_deinit(obj->handle); - sl_pwm_config.frequency = freq_hz; - sl_pwm_config.polarity = PWM_ACTIVE_HIGH; - sl_pwm_init(obj->handle, &sl_pwm_config); - return PWM_SUCCESS; - } else { + if (sl_pwm_deinit((sl_pwm_instance_t *)obj->handle) != SL_STATUS_OK) { + return PWM_ERROR; + } + sl_pwm_config.frequency = freq_hz; + sl_pwm_config.polarity = PWM_ACTIVE_HIGH; + if (sl_pwm_init((sl_pwm_instance_t *)obj->handle, &sl_pwm_config) + != SL_STATUS_OK) { return PWM_ERROR; } + return PWM_SUCCESS; } void pwm_close(pwm_t *obj) { - sl_pwm_deinit(obj->handle); + sl_pwm_deinit((sl_pwm_instance_t *)obj->handle); obj->handle = NULL; _owner = NULL; } +static err_t _acquire(pwm_t *obj, bool obj_open_state) +{ + err_t status = ACQUIRE_SUCCESS; + + if ((obj_open_state == true) && (_owner == obj)) { + return ACQUIRE_FAIL; + } + + if (_owner != obj) { + _owner = obj; + } + + return status; +} + // ------------------------------------------------------------------------- END diff --git a/driver/peripheral_drivers/mikroe/src/drv_pwm_si91x.c b/driver/peripheral_drivers/mikroe/src/drv_pwm_si91x.c new file mode 100644 index 00000000..da508a82 --- /dev/null +++ b/driver/peripheral_drivers/mikroe/src/drv_pwm_si91x.c @@ -0,0 +1,183 @@ +/***************************************************************************//** + * @file drv_pwm.h + * @brief mikroSDK 2.0 Click Peripheral Drivers - PWM for Si91x + * @version 1.0.0 + ******************************************************************************* + * # License + * Copyright 2022 Silicon Laboratories Inc. www.silabs.com + ******************************************************************************* + * + * SPDX-License-Identifier: Zlib + * + * The licensor of this software is Silicon Laboratories Inc. + * + * This software is provided \'as-is\', without any express or implied + * warranty. In no event will the authors be held liable for any damages + * arising from the use of this software. + * + * Permission is granted to anyone to use this software for any purpose, + * including commercial applications, and to alter it and redistribute it + * freely, subject to the following restrictions: + * + * 1. The origin of this software must not be misrepresented; you must not + * claim that you wrote the original software. If you use this software + * in a product, an acknowledgment in the product documentation would be + * appreciated but is not required. + * 2. Altered source versions must be plainly marked as such, and must not be + * misrepresented as being the original software. + * 3. This notice may not be removed or altered from any source distribution. + * + ******************************************************************************* + * + * EVALUATION QUALITY + * This code has been minimally tested to ensure that it builds with the + * specified dependency versions and is suitable as a demonstration for + * evaluation purposes only. + * This code will be maintained at the sole discretion of Silicon Labs. + * + ******************************************************************************/ + +#include "drv_pwm.h" +#include "sl_si91x_pwm.h" +#include "sl_status.h" + +#define DUTY_CYCLE_UPDATE 0x01 // Enable duty cycle updating bit in register + +static pwm_t *_owner = NULL; + +static err_t _acquire(pwm_t *obj, bool obj_open_state); + +void pwm_configure_default(pwm_config_t *config) +{ + config->pin = 0xFFFFFFFF; + config->freq_hz = 0; +} + +err_t pwm_open(pwm_t *obj, pwm_config_t *config) +{ + pwm_config_t *p_config = &obj->config; + sl_pwm_config_t *ptr = (sl_pwm_config_t *)obj->handle; + + memcpy(p_config, config, sizeof(pwm_config_t)); + if (_acquire(obj, true) == ACQUIRE_FAIL) { + return PWM_ERROR; + } + + ptr->is_polarity_high = SL_POLARITYH_LOW; + // set the PWM configuration parameters + if (sl_si91x_pwm_set_configuration(ptr) != SL_STATUS_OK) { + return PWM_ERROR; + } + + // set base time period control + if (sl_si91x_pwm_control_period(SL_TIME_PERIOD_POSTSCALE_1_1, + SL_TIME_PERIOD_PRESCALE_1, + ptr->channel) != SL_STATUS_OK) { + return PWM_ERROR; + } + + // set duty cycle control parameters + if (sl_si91x_pwm_configure_duty_cycle(SL_DUTY_CYCLE_ENABLE, + DUTY_CYCLE_UPDATE, + ptr->channel) != SL_STATUS_OK) { + return PWM_ERROR; + } + + return PWM_SUCCESS; +} + +err_t pwm_start(pwm_t *obj) +{ + if (_acquire(obj, false) == ACQUIRE_FAIL) { + return PWM_ERROR; + } + + sl_pwm_config_t *ptr = (sl_pwm_config_t *)obj->handle; + + if (sl_si91x_pwm_start(ptr->channel) != SL_STATUS_OK) { + return PWM_ERROR; + } + return PWM_SUCCESS; +} + +err_t pwm_stop(pwm_t *obj) +{ + if (_acquire(obj, false) == ACQUIRE_FAIL) { + return PWM_ERROR; + } + + sl_pwm_config_t *ptr = (sl_pwm_config_t *)obj->handle; + + if (sl_si91x_pwm_stop(ptr->channel) != SL_STATUS_OK) { + return PWM_ERROR; + } + return PWM_SUCCESS; +} + +err_t pwm_set_duty(pwm_t *obj, float duty_ratio) +{ + if (_acquire(obj, false) == ACQUIRE_FAIL) { + return PWM_ERROR; + } + + sl_pwm_config_t *ptr = (sl_pwm_config_t *)obj->handle; + uint16_t time_period; + uint32_t ticks; + + // Get time period + if (sl_si91x_pwm_get_time_period(ptr->channel, + &time_period) != SL_STATUS_OK) { + return PWM_ERROR; + } + ticks = (uint32_t)(time_period * (1 - duty_ratio)); + // Set Duty cycle value for channel + if (sl_si91x_pwm_set_duty_cycle(ticks, + ptr->channel) != SL_STATUS_OK) { + return PWM_ERROR; + } + return PWM_SUCCESS; +} + +err_t pwm_set_freq(pwm_t *obj, uint32_t freq_hz) +{ + if (_acquire(obj, false) == ACQUIRE_FAIL) { + return PWM_ERROR; + } + + sl_pwm_config_t *ptr = (sl_pwm_config_t *)obj->handle; + + obj->config.freq_hz = freq_hz; + + ptr->is_polarity_high = SL_POLARITYH_LOW; + // Update PWM frequency into channel config + ptr->frequency = freq_hz; + // set the PWM configuration parameters + if (sl_si91x_pwm_set_configuration(ptr) != SL_STATUS_OK) { + return PWM_ERROR; + } + return PWM_SUCCESS; +} + +void pwm_close(pwm_t *obj) +{ + sl_si91x_pwm_deinit(); + obj->handle = NULL; + _owner = NULL; +} + +static err_t _acquire(pwm_t *obj, bool obj_open_state) +{ + err_t status = ACQUIRE_SUCCESS; + + if ((obj_open_state == true) && (_owner == obj)) { + return ACQUIRE_FAIL; + } + + if (_owner != obj) { + _owner = obj; + } + + return status; +} + +// ------------------------------------------------------------------------- END diff --git a/driver/peripheral_drivers/mikroe/src/drv_spi_master.c b/driver/peripheral_drivers/mikroe/src/drv_spi_master.c index b0648e6a..fdeb410b 100644 --- a/driver/peripheral_drivers/mikroe/src/drv_spi_master.c +++ b/driver/peripheral_drivers/mikroe/src/drv_spi_master.c @@ -1,6 +1,6 @@ /***************************************************************************//** * @file drv_spi_master.h - * @brief mikroSDK 2.0 Click Peripheral Drivers + * @brief mikroSDK 2.0 Click Peripheral Drivers - SPI Master * @version 1.0.0 ******************************************************************************* * # License @@ -39,37 +39,18 @@ #include "drv_spi_master.h" #include "drv_digital_out.h" +#include "spidrv.h" static spi_master_t *_owner = NULL; +static uint32_t last_spi_speed_used; +static spi_master_mode_t last_spi_mode_used; static spi_master_chip_select_polarity_t spi_master_chip_select_polarity = SPI_MASTER_CHIP_SELECT_DEFAULT_POLARITY; -static err_t _acquire(spi_master_t *obj, bool obj_open_state) -{ - if ((obj_open_state == true) && (_owner == obj)) { - return ACQUIRE_FAIL; - } - - if (_owner != obj) { - _owner = obj; - } - - return ACQUIRE_SUCCESS; -} - -static void spi_master_get_init_data(spi_master_t *obj, SPIDRV_Init_t *initData) -{ - SPIDRV_Init_t *p_initData = &obj->handle->initData; - // Get SPI driver instance initialization structure. - memcpy(initData, p_initData, sizeof(SPIDRV_Init_t)); -} - -static void spi_master_configure_gpio_pin(digital_out_t *out, pin_name_t name) -{ - out->pin.base = (GPIO_Port_TypeDef) hal_gpio_port_index(name); - out->pin.mask = 1 << hal_gpio_pin_index(name); -} +static err_t spi_master_set_config(spi_master_t *obj); +static err_t _acquire(spi_master_t *obj, bool obj_open_state); +static void spi_master_configure_gpio_pin(digital_out_t *out, pin_name_t name); void spi_master_configure_default(spi_master_config_t *config) { @@ -146,8 +127,10 @@ err_t spi_master_set_speed(spi_master_t *obj, uint32_t speed) } obj->config.speed = speed; + last_spi_speed_used = speed; // Set SPI bus bitrate. - if (SPIDRV_SetBitrate(obj->handle, speed) != ECODE_EMDRV_SPIDRV_OK) { + if (SPIDRV_SetBitrate((SPIDRV_Handle_t)obj->handle, speed) + != ECODE_EMDRV_SPIDRV_OK) { return SPI_MASTER_ERROR; } @@ -159,22 +142,13 @@ err_t spi_master_set_speed(spi_master_t *obj, uint32_t speed) ******************************************************************************/ err_t spi_master_set_mode(spi_master_t *obj, spi_master_mode_t mode) { - SPIDRV_Init_t initData; - if (_acquire(obj, false) != ACQUIRE_SUCCESS) { return SPI_MASTER_ERROR; } obj->config.mode = mode; - spi_master_get_init_data(obj, &initData); - initData.clockMode = (SPIDRV_ClockMode_t) mode; - // DeInitialize an SPI driver instance. - SPIDRV_DeInit(obj->handle); - // Initialize an SPI driver instance with new mode. - SPIDRV_Init(obj->handle, &initData); - - return SPI_MASTER_SUCCESS; + return spi_master_set_config(obj); } /***************************************************************************//** @@ -202,7 +176,23 @@ err_t spi_master_write(spi_master_t *obj, return SPI_MASTER_ERROR; } - if (SPIDRV_MTransmitB(obj->handle, write_data_buffer, + if (last_spi_speed_used != obj->config.speed) { + last_spi_speed_used = obj->config.speed; + // Update SPI bus bitrate. + if (SPIDRV_SetBitrate((SPIDRV_Handle_t)obj->handle, last_spi_speed_used) + != ECODE_EMDRV_SPIDRV_OK) { + return SPI_MASTER_ERROR; + } + } + + if (last_spi_mode_used != obj->config.mode) { + // Update the config mode + if (spi_master_set_config(obj) != SPI_MASTER_SUCCESS) { + return SPI_MASTER_ERROR; + } + } + + if (SPIDRV_MTransmitB((SPIDRV_Handle_t)obj->handle, write_data_buffer, write_data_length) != ECODE_EMDRV_SPIDRV_OK) { return SPI_MASTER_ERROR; } @@ -222,18 +212,72 @@ err_t spi_master_read(spi_master_t *obj, return SPI_MASTER_ERROR; } + if (last_spi_speed_used != obj->config.speed) { + last_spi_speed_used = obj->config.speed; + // Update SPI bus bitrate. + if (SPIDRV_SetBitrate((SPIDRV_Handle_t)obj->handle, last_spi_speed_used) + != ECODE_EMDRV_SPIDRV_OK) { + return SPI_MASTER_ERROR; + } + } + + if (last_spi_mode_used != obj->config.mode) { + // Update the config mode + if (spi_master_set_config(obj) != SPI_MASTER_SUCCESS) { + return SPI_MASTER_ERROR; + } + } + // The data transmit buffer will be populated with user-defined data for (size_t i = 0; i < read_data_length; i++) { write_data_buffer[i] = _owner->config.default_write_data; } - if (SPIDRV_MTransferB(obj->handle, write_data_buffer, read_data_buffer, + if (SPIDRV_MTransferB((SPIDRV_Handle_t)obj->handle, write_data_buffer, + read_data_buffer, read_data_length) != ECODE_EMDRV_SPIDRV_OK) { return SPI_MASTER_ERROR; } return SPI_MASTER_SUCCESS; } +/***************************************************************************//** + * Exchange bytes on SPI bus. + ******************************************************************************/ +err_t spi_master_exchange(spi_master_t *obj, + uint8_t *write_data_buffer, + uint8_t *read_data_buffer, + size_t exchange_data_length) +{ + if (_acquire(obj, false) != ACQUIRE_SUCCESS) { + return SPI_MASTER_ERROR; + } + + if (last_spi_speed_used != obj->config.speed) { + last_spi_speed_used = obj->config.speed; + // Update SPI bus bitrate. + if (SPIDRV_SetBitrate((SPIDRV_Handle_t)obj->handle, last_spi_speed_used) + != ECODE_EMDRV_SPIDRV_OK) { + return SPI_MASTER_ERROR; + } + } + + if (last_spi_mode_used != obj->config.mode) { + // Update the config mode + if (spi_master_set_config(obj) != SPI_MASTER_SUCCESS) { + return SPI_MASTER_ERROR; + } + } + + if (SPIDRV_MTransferB((SPIDRV_Handle_t)obj->handle, + write_data_buffer, + read_data_buffer, + exchange_data_length) != ECODE_EMDRV_SPIDRV_OK) { + return SPI_MASTER_ERROR; + } + return SPI_MASTER_SUCCESS; +} + /***************************************************************************//** * Perform a sequence of SPI Master writes * immediately followed by a SPI Master read. @@ -244,12 +288,48 @@ err_t spi_master_write_then_read(spi_master_t *obj, uint8_t *read_data_buffer, size_t length_read_data) { + size_t tx_len = length_write_data + length_read_data; + uint8_t tx_buffer[tx_len]; + uint8_t rx_buffer[tx_len]; + if (_acquire(obj, false) != ACQUIRE_SUCCESS) { return SPI_MASTER_ERROR; } - spi_master_write(obj, write_data_buffer, length_write_data); - spi_master_read(obj, read_data_buffer, length_read_data); + if (last_spi_speed_used != obj->config.speed) { + last_spi_speed_used = obj->config.speed; + // Update SPI bus bitrate. + if (SPIDRV_SetBitrate((SPIDRV_Handle_t)obj->handle, last_spi_speed_used) + != ECODE_EMDRV_SPIDRV_OK) { + return SPI_MASTER_ERROR; + } + } + + if (last_spi_mode_used != obj->config.mode) { + // Update the config mode + if (spi_master_set_config(obj) != SPI_MASTER_SUCCESS) { + return SPI_MASTER_ERROR; + } + } + + for (size_t i = 0; i < length_write_data; i++) { + tx_buffer[i] = write_data_buffer[i]; + } + // The data transmit buffer will be populated with user-defined data + for (size_t i = length_write_data; i < tx_len; i++) { + tx_buffer[i] = _owner->config.default_write_data; + } + + if (SPIDRV_MTransferB((SPIDRV_Handle_t)obj->handle, + tx_buffer, + rx_buffer, + tx_len) != ECODE_EMDRV_SPIDRV_OK) { + return SPI_MASTER_ERROR; + } + + for (size_t i = 0; i < length_read_data; i++) { + read_data_buffer[i] = rx_buffer[i + length_write_data]; + } return SPI_MASTER_SUCCESS; } @@ -260,4 +340,47 @@ void spi_master_close(spi_master_t *obj) _owner = NULL; } +static err_t _acquire(spi_master_t *obj, bool obj_open_state) +{ + if ((obj_open_state == true) && (_owner == obj)) { + return ACQUIRE_FAIL; + } + + if (_owner != obj) { + _owner = obj; + } + + return ACQUIRE_SUCCESS; +} + +static void spi_master_configure_gpio_pin(digital_out_t *out, pin_name_t name) +{ + out->pin.base = (GPIO_Port_TypeDef) hal_gpio_port_index(name); + out->pin.mask = 1 << hal_gpio_pin_index(name); +} + +static err_t spi_master_set_config(spi_master_t *obj) +{ + SPIDRV_Init_t initData; + SPIDRV_Handle_t ptr = (SPIDRV_Handle_t)obj->handle; + + last_spi_mode_used = obj->config.mode; + + // Get SPI driver instance initialization structure. + memcpy(&initData, &ptr->initData, sizeof(SPIDRV_Init_t)); + initData.clockMode = (SPIDRV_ClockMode_t) obj->config.mode; + initData.bitRate = obj->config.speed; + // DeInitialize an SPI driver instance. + if (SPIDRV_DeInit((SPIDRV_Handle_t)obj->handle) != ECODE_EMDRV_SPIDRV_OK) { + return SPI_MASTER_ERROR; + } + // Initialize an SPI driver instance with new mode. + if (SPIDRV_Init((SPIDRV_Handle_t)obj->handle, + &initData) != ECODE_EMDRV_SPIDRV_OK) { + return SPI_MASTER_ERROR; + } + + return SPI_MASTER_SUCCESS; +} + // ------------------------------------------------------------------------- END diff --git a/driver/peripheral_drivers/mikroe/src/drv_spi_master_si91x.c b/driver/peripheral_drivers/mikroe/src/drv_spi_master_si91x.c new file mode 100644 index 00000000..df755aa5 --- /dev/null +++ b/driver/peripheral_drivers/mikroe/src/drv_spi_master_si91x.c @@ -0,0 +1,434 @@ +/***************************************************************************//** + * @file drv_spi_master.h + * @brief mikroSDK 2.0 Click Peripheral Drivers - SPI Master for Si91x + * @version 1.0.0 + ******************************************************************************* + * # License + * Copyright 2022 Silicon Laboratories Inc. www.silabs.com + ******************************************************************************* + * + * SPDX-License-Identifier: Zlib + * + * The licensor of this software is Silicon Laboratories Inc. + * + * This software is provided \'as-is\', without any express or implied + * warranty. In no event will the authors be held liable for any damages + * arising from the use of this software. + * + * Permission is granted to anyone to use this software for any purpose, + * including commercial applications, and to alter it and redistribute it + * freely, subject to the following restrictions: + * + * 1. The origin of this software must not be misrepresented; you must not + * claim that you wrote the original software. If you use this software + * in a product, an acknowledgment in the product documentation would be + * appreciated but is not required. + * 2. Altered source versions must be plainly marked as such, and must not be + * misrepresented as being the original software. + * 3. This notice may not be removed or altered from any source distribution. + * + ******************************************************************************* + * + * EVALUATION QUALITY + * This code has been minimally tested to ensure that it builds with the + * specified dependency versions and is suitable as a demonstration for + * evaluation purposes only. + * This code will be maintained at the sole discretion of Silicon Labs. + * + ******************************************************************************/ + +#include "drv_spi_master.h" +#include "drv_digital_out.h" +#include "sl_si91x_gspi.h" + +#define GSPI_INTF_PLL_CLK 180000000 // Intf pll clock frequency +#define GSPI_INTF_PLL_REF_CLK 40000000 // Intf pll reference clock freq +#define GSPI_SOC_PLL_CLK 20000000 // Soc pll clock frequency +#define GSPI_SOC_PLL_REF_CLK 40000000 // Soc pll reference clock freq +#define GSPI_INTF_PLL_500_CTRL_VALUE 0xD900 // Intf pll control value +#define GSPI_SOC_PLL_MM_COUNT_LIMIT 0xA4 // Soc pll count limit +#define GSPI_DVISION_FACTOR 0 // Division factor +#define GSPI_SWAP_READ_DATA 1 // true to enable swap read +#define GSPI_SWAP_WRITE_DATA 0 // true to enable swap write +#define GSPI_BITRATE 10000000 // Bitrate for setting +#define GSPI_BIT_WIDTH 8 // Default Bit width + +static spi_master_t *_owner = NULL; +static sl_gspi_handle_t gspi_driver_handle = NULL; +static uint32_t last_spi_speed_used; +static spi_master_mode_t last_spi_mode_used; + +extern sl_gspi_control_config_t gspi_configuration; + +static spi_master_chip_select_polarity_t spi_master_chip_select_polarity = + SPI_MASTER_CHIP_SELECT_DEFAULT_POLARITY; + +static void callback_event(uint32_t event); +static err_t _acquire(spi_master_t *obj, bool obj_open_state); +static void spi_master_configure_gpio_pin(digital_out_t *out, pin_name_t name); +static err_t spi_master_set_configuration(spi_master_t *obj); + +void spi_master_configure_default(spi_master_config_t *config) +{ + config->default_write_data = 0; + config->sck = 0xFFFFFFFF; + config->miso = 0xFFFFFFFF; + config->mosi = 0xFFFFFFFF; + config->speed = 100000; + config->mode = SPI_MASTER_MODE_DEFAULT; +} + +err_t spi_master_open(spi_master_t *obj, spi_master_config_t *config) +{ + sl_status_t status; + spi_master_config_t *p_config = &obj->config; + sl_gspi_clock_config_t clock_config = { + .soc_pll_mm_count_value = GSPI_SOC_PLL_MM_COUNT_LIMIT, + .intf_pll_500_control_value = GSPI_INTF_PLL_500_CTRL_VALUE, + .intf_pll_clock = GSPI_INTF_PLL_CLK, + .intf_pll_reference_clock = GSPI_INTF_PLL_REF_CLK, + .soc_pll_clock = GSPI_SOC_PLL_CLK, + .soc_pll_reference_clock = GSPI_SOC_PLL_REF_CLK, + .division_factor = GSPI_DVISION_FACTOR + }; + + memcpy(p_config, config, sizeof(spi_master_config_t)); + if (_acquire(obj, true) == ACQUIRE_FAIL) { + return SPI_MASTER_ERROR; + } + + // Configuration of clock with the default clock parameters + status = sl_si91x_gspi_configure_clock(&clock_config); + if (status != SL_STATUS_OK) { + return SPI_MASTER_ERROR; + } + // Pass the address of void pointer, it will be updated with the address + // of GSPI instance which can be used in other APIs. + status = sl_si91x_gspi_init(SL_GSPI_MASTER, &gspi_driver_handle); + if (status != SL_STATUS_OK) { + return SPI_MASTER_ERROR; + } + + if (spi_master_set_configuration(obj) != SPI_MASTER_SUCCESS) { + return SPI_MASTER_ERROR; + } + // Register user callback function + status = sl_si91x_gspi_register_event_callback(gspi_driver_handle, + callback_event); + if (status != SL_STATUS_OK) { + return SPI_MASTER_ERROR; + } + + // Validation for executing the API only once + status = sl_si91x_gspi_set_slave_number(GSPI_SLAVE_0); + if (status != SL_STATUS_OK) { + return SPI_MASTER_ERROR; + } + + return SPI_MASTER_SUCCESS; +} + +void spi_master_select_device(pin_name_t chip_select) +{ + digital_out_t struct_cs; + + if (chip_select == 0xFFFFFFFF) { + return; + } + + spi_master_configure_gpio_pin(&struct_cs, chip_select); + + if (spi_master_chip_select_polarity + == SPI_MASTER_CHIP_SELECT_POLARITY_ACTIVE_HIGH) { + digital_out_high(&struct_cs); + } else { + digital_out_low(&struct_cs); + } +} + +void spi_master_deselect_device(pin_name_t chip_select) +{ + digital_out_t struct_cs; + + if (chip_select == 0xFFFFFFFF) { + return; + } + + spi_master_configure_gpio_pin(&struct_cs, chip_select); + + if (spi_master_chip_select_polarity + == SPI_MASTER_CHIP_SELECT_POLARITY_ACTIVE_HIGH) { + digital_out_low(&struct_cs); + } else { + digital_out_high(&struct_cs); + } +} + +void spi_master_set_chip_select_polarity( + spi_master_chip_select_polarity_t polarity) +{ + if (polarity == SPI_MASTER_CHIP_SELECT_POLARITY_ACTIVE_HIGH) { + spi_master_chip_select_polarity = + SPI_MASTER_CHIP_SELECT_POLARITY_ACTIVE_HIGH; + } else { + spi_master_chip_select_polarity = + SPI_MASTER_CHIP_SELECT_POLARITY_ACTIVE_LOW; + } +} + +/***************************************************************************//** + * Set SPI Master driver communication speed. + ******************************************************************************/ +err_t spi_master_set_speed(spi_master_t *obj, uint32_t speed) +{ + if (_acquire(obj, false) != ACQUIRE_SUCCESS) { + return SPI_MASTER_ERROR; + } + + obj->config.speed = speed; + + return spi_master_set_configuration(obj); +} + +/***************************************************************************//** + * Set SPI Master driver communication mode. + ******************************************************************************/ +err_t spi_master_set_mode(spi_master_t *obj, spi_master_mode_t mode) +{ + if (_acquire(obj, false) != ACQUIRE_SUCCESS) { + return SPI_MASTER_ERROR; + } + + obj->config.mode = mode; + + return spi_master_set_configuration(obj); +} + +/***************************************************************************//** + * Set SPI Master driver default ( dummy ) write data. + ******************************************************************************/ +err_t spi_master_set_default_write_data(spi_master_t *obj, + uint8_t default_write_data) +{ + if (_acquire(obj, false) != ACQUIRE_SUCCESS) { + return SPI_MASTER_ERROR; + } + + obj->config.default_write_data = default_write_data; + return SPI_MASTER_SUCCESS; +} + +/***************************************************************************//** + * Write byte to SPI bus. + ******************************************************************************/ +err_t spi_master_write(spi_master_t *obj, + uint8_t *write_data_buffer, + size_t write_data_length) +{ + sl_status_t status; + + if (_acquire(obj, false) != ACQUIRE_SUCCESS) { + return SPI_MASTER_ERROR; + } + + if ((last_spi_speed_used != obj->config.speed) + || (last_spi_mode_used != obj->config.mode)) { + // Update the config + spi_master_set_configuration(obj); + } + + status = sl_si91x_gspi_send_data(gspi_driver_handle, + write_data_buffer, + write_data_length); + if (status != SL_STATUS_OK) { + return SPI_MASTER_ERROR; + } + return SPI_MASTER_SUCCESS; +} + +/***************************************************************************//** + * Read byte from SPI bus. + ******************************************************************************/ +err_t spi_master_read(spi_master_t *obj, + uint8_t *read_data_buffer, + size_t read_data_length) +{ + sl_status_t status; + uint8_t write_data_buffer[read_data_length]; + + if (_acquire(obj, false) != ACQUIRE_SUCCESS) { + return SPI_MASTER_ERROR; + } + + if ((last_spi_speed_used != obj->config.speed) + || (last_spi_mode_used != obj->config.mode)) { + // Update the config + spi_master_set_configuration(obj); + } + + // The data transmit buffer will be populated with user-defined data + for (size_t i = 0; i < read_data_length; i++) { + write_data_buffer[i] = _owner->config.default_write_data; + } + + status = sl_si91x_gspi_transfer_data(gspi_driver_handle, + write_data_buffer, + read_data_buffer, + read_data_length); + if (status != SL_STATUS_OK) { + return SPI_MASTER_ERROR; + } + return SPI_MASTER_SUCCESS; +} + +/***************************************************************************//** + * Exchange bytes on SPI bus. + ******************************************************************************/ +err_t spi_master_exchange(spi_master_t *obj, + uint8_t *write_data_buffer, + uint8_t *read_data_buffer, + size_t exchange_data_length) +{ + sl_status_t status; + + if (_acquire(obj, false) != ACQUIRE_SUCCESS) { + return SPI_MASTER_ERROR; + } + + if ((last_spi_speed_used != obj->config.speed) + || (last_spi_mode_used != obj->config.mode)) { + // Update the config + spi_master_set_configuration(obj); + } + + status = sl_si91x_gspi_transfer_data(gspi_driver_handle, + write_data_buffer, + read_data_buffer, + exchange_data_length); + if (status != SL_STATUS_OK) { + return SPI_MASTER_ERROR; + } + return SPI_MASTER_SUCCESS; +} + +/***************************************************************************//** + * Perform a sequence of SPI Master writes + * immediately followed by a SPI Master read. + ******************************************************************************/ +err_t spi_master_write_then_read(spi_master_t *obj, + uint8_t *write_data_buffer, + size_t length_write_data, + uint8_t *read_data_buffer, + size_t length_read_data) +{ + sl_status_t status; + size_t tx_len = length_write_data + length_read_data; + uint8_t tx_buffer[tx_len]; + uint8_t rx_buffer[tx_len]; + + if (_acquire(obj, false) != ACQUIRE_SUCCESS) { + return SPI_MASTER_ERROR; + } + + if ((last_spi_speed_used != obj->config.speed) + || (last_spi_mode_used != obj->config.mode)) { + // Update the config + spi_master_set_configuration(obj); + } + + for (size_t i = 0; i < length_write_data; i++) { + tx_buffer[i] = write_data_buffer[i]; + } + // The data transmit buffer will be populated with user-defined data + for (size_t i = length_write_data; i < tx_len; i++) { + tx_buffer[i] = _owner->config.default_write_data; + } + status = sl_si91x_gspi_transfer_data(gspi_driver_handle, + tx_buffer, + rx_buffer, + tx_len); + if (status != SL_STATUS_OK) { + return SPI_MASTER_ERROR; + } + + for (size_t i = 0; i < length_read_data; i++) { + read_data_buffer[i] = rx_buffer[i + length_write_data]; + } + + return SPI_MASTER_SUCCESS; +} + +void spi_master_close(spi_master_t *obj) +{ + obj->handle = NULL; + _owner = NULL; +} + +static err_t _acquire(spi_master_t *obj, bool obj_open_state) +{ + if ((obj_open_state == true) && (_owner == obj)) { + return ACQUIRE_FAIL; + } + + if (_owner != obj) { + _owner = obj; + } + + return ACQUIRE_SUCCESS; +} + +static void spi_master_configure_gpio_pin(digital_out_t *out, pin_name_t name) +{ + out->pin.base = hal_gpio_port_index(name); + out->pin.mask = hal_gpio_pin_index(name); +} + +static err_t spi_master_set_configuration(spi_master_t *obj) +{ + sl_gspi_control_config_t gspi_config = { + .bit_width = GSPI_BIT_WIDTH, + .bitrate = obj->config.speed, + .clock_mode = obj->config.mode, + .slave_select_mode = SL_GSPI_MASTER_HW_OUTPUT, + .swap_read = GSPI_SWAP_READ_DATA, + .swap_write = GSPI_SWAP_WRITE_DATA + }; + + last_spi_speed_used = obj->config.speed; + last_spi_mode_used = obj->config.mode; + + // Overwrite gspi default + gspi_configuration = gspi_config; + + /** + * Configuration of all other parameters that are required by GSPI + * gspi_configuration structure is from sl_si91x_gspi_init.h file. + * The user can modify this structure with the configuration of + * his choice by filling this structure. + */ + if (sl_si91x_gspi_set_configuration(gspi_driver_handle, + &gspi_config) != SL_STATUS_OK) { + return SPI_MASTER_ERROR; + } + + return SPI_MASTER_SUCCESS; +} + +/******************************************************************************* + * Callback event function + * It is responsible for the event which are triggered by GSPI interface + * It updates the respective member of the structure as the event is triggered. + ******************************************************************************/ +static void callback_event(uint32_t event) +{ + switch (event) { + case SL_GSPI_TRANSFER_COMPLETE: + break; + case SL_GSPI_DATA_LOST: + break; + case SL_GSPI_MODE_FAULT: + break; + } +} + +// ------------------------------------------------------------------------- END diff --git a/driver/public/mikroe/alcohol_mq3/config/brd2703a/mikroe_alcohol_mq3_config.h b/driver/public/mikroe/alcohol_mq3/config/brd2703a/mikroe_alcohol_mq3_config.h index 8e9208aa..0e6e0ce1 100644 --- a/driver/public/mikroe/alcohol_mq3/config/brd2703a/mikroe_alcohol_mq3_config.h +++ b/driver/public/mikroe/alcohol_mq3/config/brd2703a/mikroe_alcohol_mq3_config.h @@ -40,6 +40,8 @@ #ifndef MIKORE_ALCOHOL_MQ3_CONFIG_H_ #define MIKORE_ALCOHOL_MQ3_CONFIG_H_ +#include "em_gpio.h" + #ifdef __cplusplus extern "C" { #endif @@ -56,6 +58,5 @@ extern "C" { #ifdef __cplusplus } - #endif -#endif /* MIKORE_ALCOHOL_MQ3_CONFIG_H_ */ +#endif // MIKORE_ALCOHOL_MQ3_CONFIG_H_ diff --git a/driver/public/mikroe/alcohol_mq3/config/brd4108a/mikroe_alcohol_mq3_config.h b/driver/public/mikroe/alcohol_mq3/config/brd4108a/mikroe_alcohol_mq3_config.h index 8e9208aa..0e6e0ce1 100644 --- a/driver/public/mikroe/alcohol_mq3/config/brd4108a/mikroe_alcohol_mq3_config.h +++ b/driver/public/mikroe/alcohol_mq3/config/brd4108a/mikroe_alcohol_mq3_config.h @@ -40,6 +40,8 @@ #ifndef MIKORE_ALCOHOL_MQ3_CONFIG_H_ #define MIKORE_ALCOHOL_MQ3_CONFIG_H_ +#include "em_gpio.h" + #ifdef __cplusplus extern "C" { #endif @@ -56,6 +58,5 @@ extern "C" { #ifdef __cplusplus } - #endif -#endif /* MIKORE_ALCOHOL_MQ3_CONFIG_H_ */ +#endif // MIKORE_ALCOHOL_MQ3_CONFIG_H_ diff --git a/driver/public/mikroe/alcohol_mq3/config/brd4314a/mikroe_alcohol_mq3_config.h b/driver/public/mikroe/alcohol_mq3/config/brd4314a/mikroe_alcohol_mq3_config.h index 8e9208aa..0e6e0ce1 100644 --- a/driver/public/mikroe/alcohol_mq3/config/brd4314a/mikroe_alcohol_mq3_config.h +++ b/driver/public/mikroe/alcohol_mq3/config/brd4314a/mikroe_alcohol_mq3_config.h @@ -40,6 +40,8 @@ #ifndef MIKORE_ALCOHOL_MQ3_CONFIG_H_ #define MIKORE_ALCOHOL_MQ3_CONFIG_H_ +#include "em_gpio.h" + #ifdef __cplusplus extern "C" { #endif @@ -56,6 +58,5 @@ extern "C" { #ifdef __cplusplus } - #endif -#endif /* MIKORE_ALCOHOL_MQ3_CONFIG_H_ */ +#endif // MIKORE_ALCOHOL_MQ3_CONFIG_H_ diff --git a/driver/public/mikroe/alcohol_mq3/config/brd4338a/mikroe_alcohol_mq3_config.h b/driver/public/mikroe/alcohol_mq3/config/brd4338a/mikroe_alcohol_mq3_config.h new file mode 100644 index 00000000..a3a2b45e --- /dev/null +++ b/driver/public/mikroe/alcohol_mq3/config/brd4338a/mikroe_alcohol_mq3_config.h @@ -0,0 +1,43 @@ +/***************************************************************************//** + * @file mikroe_alcohol_mq3_config.h + * @brief Mikroe Alcohol MQ3 Configuration + * @version 1.2.0 + ******************************************************************************* + * # License + * Copyright 2022 Silicon Laboratories Inc. www.silabs.com + ******************************************************************************* + * + * SPDX-License-Identifier: Zlib + * + * The licensor of this software is Silicon Laboratories Inc. + * + * This software is provided \'as-is\', without any express or implied + * warranty. In no event will the authors be held liable for any damages + * arising from the use of this software. + * + * Permission is granted to anyone to use this software for any purpose, + * including commercial applications, and to alter it and redistribute it + * freely, subject to the following restrictions: + * + * 1. The origin of this software must not be misrepresented; you must not + * claim that you wrote the original software. If you use this software + * in a product, an acknowledgment in the product documentation would be + * appreciated but is not required. + * 2. Altered source versions must be plainly marked as such, and must not be + * misrepresented as being the original software. + * 3. This notice may not be removed or altered from any source distribution. + * + ******************************************************************************* + * + * EVALUATION QUALITY + * This code has been minimally tested to ensure that it builds with the + * specified dependency versions and is suitable as a demonstration for + * evaluation purposes only. + * This code will be maintained at the sole discretion of Silicon Labs. + * + ******************************************************************************/ + +#ifndef MIKORE_ALCOHOL_MQ3_CONFIG_H_ +#define MIKORE_ALCOHOL_MQ3_CONFIG_H_ + +#endif // MIKORE_ALCOHOL_MQ3_CONFIG_H_ diff --git a/driver/public/mikroe/alcohol_mq3/config/other/mikroe_alcohol_mq3_config.h b/driver/public/mikroe/alcohol_mq3/config/other/mikroe_alcohol_mq3_config.h index 4e98bda5..6d0b90a5 100644 --- a/driver/public/mikroe/alcohol_mq3/config/other/mikroe_alcohol_mq3_config.h +++ b/driver/public/mikroe/alcohol_mq3/config/other/mikroe_alcohol_mq3_config.h @@ -40,6 +40,8 @@ #ifndef MIKORE_ALCOHOL_MQ3_CONFIG_H_ #define MIKORE_ALCOHOL_MQ3_CONFIG_H_ +#include "em_gpio.h" + #ifdef __cplusplus extern "C" { #endif @@ -49,7 +51,7 @@ extern "C" { // MQ3_ANALOG_OUTPUT // $[GPIO_MQ3_ANALOG_OUTPUT] #warning "AN pin for MQ3 is not configured" -// #define MQ3_ANALOG_OUTPUT_PORT gpioPortB +// #define MQ3_ANALOG_OUTPUT_PORT 0 // #define MQ3_ANALOG_OUTPUT_PIN 0 // [GPIO_MQ3_ANALOG_OUTPUT]$ @@ -57,6 +59,5 @@ extern "C" { #ifdef __cplusplus } - #endif -#endif /* MIKORE_ALCOHOL_MQ3_CONFIG_H_ */ +#endif // MIKORE_ALCOHOL_MQ3_CONFIG_H_ diff --git a/driver/public/mikroe/alcohol_mq3/inc/mikroe_alcohol_mq3.h b/driver/public/mikroe/alcohol_mq3/inc/mikroe_alcohol_mq3.h index a2ed47c5..eb70c806 100644 --- a/driver/public/mikroe/alcohol_mq3/inc/mikroe_alcohol_mq3.h +++ b/driver/public/mikroe/alcohol_mq3/inc/mikroe_alcohol_mq3.h @@ -39,25 +39,13 @@ #ifndef MIKROE_ALCOHOL_MQ3_H_ #define MIKROE_ALCOHOL_MQ3_H_ -#include "em_cmu.h" #include "sl_status.h" - -#if defined(_SILICON_LABS_32B_SERIES_1) -#include "em_adc.h" -#elif defined(_SILICON_LABS_32B_SERIES_2) -#include "em_iadc.h" -#endif +#include "drv_analog_in.h" #ifdef __cplusplus extern "C" { #endif -#if defined(_SILICON_LABS_32B_SERIES_1) -typedef ADC_TypeDef adc_t; -#elif defined(_SILICON_LABS_32B_SERIES_2) -typedef IADC_TypeDef adc_t; -#endif - /** * @brief Alcohol configuration object setup function. * @details This function initializes click configuration structure to initial @@ -77,7 +65,7 @@ void mikroe_mq3_setup(void); * See #err_t definition for detailed explanation. * @note None. */ -sl_status_t mikroe_mq3_init(adc_t *handle); +sl_status_t mikroe_mq3_init(mikroe_adc_handle_t handle); /** * @brief Alcohol read AN pin value function. @@ -105,4 +93,8 @@ sl_status_t mikroe_mq3_read_an_pin_value(uint16_t *data_out); */ sl_status_t mikroe_mq3_read_an_pin_voltage(float *data_out); -#endif /* MIKROE_ALCOHOL_MQ3_H_ */ +#ifdef __cplusplus +} +#endif + +#endif // MIKROE_ALCOHOL_MQ3_H_ diff --git a/driver/public/mikroe/alcohol_mq3/src/mikroe_alcohol_mq3.c b/driver/public/mikroe/alcohol_mq3/src/mikroe_alcohol_mq3.c index 5b8a2b89..d8826ee7 100644 --- a/driver/public/mikroe/alcohol_mq3/src/mikroe_alcohol_mq3.c +++ b/driver/public/mikroe/alcohol_mq3/src/mikroe_alcohol_mq3.c @@ -39,7 +39,6 @@ #include #include "mikroe_alcohol_mq3.h" -#include "third_party_hw_drivers_helpers.h" #include "mikroe_alcohol_mq3_config.h" #include "alcohol.h" @@ -51,15 +50,13 @@ void mikroe_mq3_setup(void) alcohol_cfg_setup(&alcohol_cfg); } -sl_status_t mikroe_mq3_init(adc_t *handle) +sl_status_t mikroe_mq3_init(mikroe_adc_handle_t handle) { if (NULL == handle) { return SL_STATUS_INVALID_HANDLE; } alcohol.adc.handle = handle; - THIRD_PARTY_HW_DRV_RETCODE_INIT(); - alcohol_cfg_setup(&alcohol_cfg); #if defined(MQ3_ANALOG_OUTPUT_PORT) && defined(MQ3_ANALOG_OUTPUT_PIN) @@ -67,9 +64,11 @@ sl_status_t mikroe_mq3_init(adc_t *handle) MQ3_ANALOG_OUTPUT_PIN); #endif - THIRD_PARTY_HW_DRV_RETCODE_TEST(alcohol_init(&alcohol, &alcohol_cfg)); + if (alcohol_init(&alcohol, &alcohol_cfg) != ALCOHOL_OK) { + return SL_STATUS_INITIALIZATION; + } - return THIRD_PARTY_HW_DRV_RETCODE_VALUE; + return SL_STATUS_OK; } sl_status_t mikroe_mq3_read_an_pin_value(uint16_t *data_out) @@ -77,12 +76,12 @@ sl_status_t mikroe_mq3_read_an_pin_value(uint16_t *data_out) if (NULL == data_out) { return SL_STATUS_INVALID_PARAMETER; } - THIRD_PARTY_HW_DRV_RETCODE_INIT(); - THIRD_PARTY_HW_DRV_RETCODE_TEST(alcohol_read_an_pin_value(&alcohol, - data_out)); + if (alcohol_read_an_pin_value(&alcohol, data_out) != ALCOHOL_OK) { + return SL_STATUS_FAIL; + } - return THIRD_PARTY_HW_DRV_RETCODE_VALUE; + return SL_STATUS_OK; } sl_status_t mikroe_mq3_read_an_pin_voltage(float *data_out) @@ -90,10 +89,10 @@ sl_status_t mikroe_mq3_read_an_pin_voltage(float *data_out) if (NULL == data_out) { return SL_STATUS_INVALID_PARAMETER; } - THIRD_PARTY_HW_DRV_RETCODE_INIT(); - THIRD_PARTY_HW_DRV_RETCODE_TEST(alcohol_read_an_pin_voltage(&alcohol, - data_out)); + if (alcohol_read_an_pin_voltage(&alcohol, data_out) != ALCOHOL_OK) { + return SL_STATUS_FAIL; + } - return THIRD_PARTY_HW_DRV_RETCODE_VALUE; + return SL_STATUS_OK; } diff --git a/driver/public/mikroe/buzz2_cmt_8540s_smt/inc/mikroe_cmt_8540s_smt.h b/driver/public/mikroe/buzz2_cmt_8540s_smt/inc/mikroe_cmt_8540s_smt.h index 71fef6ef..b638bf5d 100644 --- a/driver/public/mikroe/buzz2_cmt_8540s_smt/inc/mikroe_cmt_8540s_smt.h +++ b/driver/public/mikroe/buzz2_cmt_8540s_smt/inc/mikroe_cmt_8540s_smt.h @@ -41,7 +41,7 @@ #define MIKROE_CMT_8540S_SMT_H_ #include "sl_status.h" -#include "sl_pwm.h" +#include "drv_pwm.h" #ifdef __cplusplus extern "C" { @@ -174,7 +174,7 @@ extern "C" { * SL_STATUS_OK Successful initialization. * SL_STATUS_FAIL Initialization failed. ******************************************************************************/ -sl_status_t mikroe_cmt_8540s_smt_init(sl_pwm_instance_t *pwm_instance); +sl_status_t mikroe_cmt_8540s_smt_init(mikroe_pwm_handle_t pwm_instance); /***************************************************************************//** * @brief @@ -188,7 +188,7 @@ sl_status_t mikroe_cmt_8540s_smt_init(sl_pwm_instance_t *pwm_instance); * SL_STATUS_INVALID_PARAMETER if pwm_instance is null. ******************************************************************************/ sl_status_t mikroe_cmt_8540s_smt_set_pwm_instance( - sl_pwm_instance_t *pwm_instance); + mikroe_pwm_handle_t pwm_instance); /***************************************************************************//** * @brief @@ -248,4 +248,4 @@ void mikroe_cmt_8540s_smt_play_sound (uint16_t freq, #endif /** @} (end addtogroup cmt_8540s_smt) */ -#endif /* MIKROE_CMT_8540S_SMT_H_ */ +#endif // MIKROE_CMT_8540S_SMT_H_ diff --git a/driver/public/mikroe/buzz2_cmt_8540s_smt/src/mikroe_cmt_8540s_smt.c b/driver/public/mikroe/buzz2_cmt_8540s_smt/src/mikroe_cmt_8540s_smt.c index b1020042..62b7fdf2 100644 --- a/driver/public/mikroe/buzz2_cmt_8540s_smt/src/mikroe_cmt_8540s_smt.c +++ b/driver/public/mikroe/buzz2_cmt_8540s_smt/src/mikroe_cmt_8540s_smt.c @@ -37,35 +37,34 @@ * ******************************************************************************/ -#include "stddef.h" -#include "third_party_hw_drivers_helpers.h" +#include #include "mikroe_cmt_8540s_smt.h" #include "buzz2.h" static buzz2_t buzz2; static buzz2_cfg_t buzz2_cfg; -sl_status_t mikroe_cmt_8540s_smt_init(sl_pwm_instance_t *pwm_instance) +sl_status_t mikroe_cmt_8540s_smt_init(mikroe_pwm_handle_t pwm_instance) { if (NULL == pwm_instance) { return SL_STATUS_INVALID_PARAMETER; } - THIRD_PARTY_HW_DRV_RETCODE_INIT(); - // Configure default i2csmp instance buzz2.pwm.handle = pwm_instance; // Call basic setup functions buzz2_cfg_setup(&buzz2_cfg); - THIRD_PARTY_HW_DRV_RETCODE_TEST(buzz2_init(&buzz2, &buzz2_cfg)); + if (buzz2_init(&buzz2, &buzz2_cfg) != PWM_SUCCESS) { + return SL_STATUS_INITIALIZATION; + } - return THIRD_PARTY_HW_DRV_RETCODE_VALUE; + return SL_STATUS_OK; } sl_status_t mikroe_cmt_8540s_smt_set_pwm_instance( - sl_pwm_instance_t *pwm_instance) + mikroe_pwm_handle_t pwm_instance) { if (NULL == pwm_instance) { return SL_STATUS_INVALID_PARAMETER; diff --git a/driver/public/mikroe/co_mq7/src/mikroe_mq7.c b/driver/public/mikroe/co_mq7/src/mikroe_mq7.c index 68bf71e3..3f9c6f26 100644 --- a/driver/public/mikroe/co_mq7/src/mikroe_mq7.c +++ b/driver/public/mikroe/co_mq7/src/mikroe_mq7.c @@ -37,12 +37,19 @@ * ******************************************************************************/ +#include +#include "em_device.h" #include "sl_status.h" -#include "stddef.h" #include "third_party_hw_drivers_helpers.h" #include "co.h" #include "mikroe_mq7_config.h" +#if defined(_SILICON_LABS_32B_SERIES_1) +#include "em_adc.h" +#elif defined(_SILICON_LABS_32B_SERIES_2) +#include "em_iadc.h" +#endif + static co_t co; static co_cfg_t co_cfg; diff --git a/driver/public/mikroe/e_paper_154_inch/inc/mikroe_e_paper_154_inch.h b/driver/public/mikroe/e_paper_154_inch/inc/mikroe_e_paper_154_inch.h index eccd6783..3593bd23 100644 --- a/driver/public/mikroe/e_paper_154_inch/inc/mikroe_e_paper_154_inch.h +++ b/driver/public/mikroe/e_paper_154_inch/inc/mikroe_e_paper_154_inch.h @@ -43,6 +43,7 @@ // Includes // ----------------------------------------------------------------------------- +#include "sl_status.h" #include "eink_154inch.h" #include "spidrv.h" diff --git a/driver/public/mikroe/oledw_ssd1306/config/brd2703a/mikroe_ssd1306_config.h b/driver/public/mikroe/oledw_ssd1306/config/brd2703a/mikroe_ssd1306_config.h index 4ef40167..bbb3d670 100644 --- a/driver/public/mikroe/oledw_ssd1306/config/brd2703a/mikroe_ssd1306_config.h +++ b/driver/public/mikroe/oledw_ssd1306/config/brd2703a/mikroe_ssd1306_config.h @@ -43,6 +43,8 @@ extern "C" { #endif +#include "em_gpio.h" + #define OLED_DISPLAY_64_48 0 #define OLED_DISPLAY_96_39 1 #define OLED_DISPLAY_128_32 2 @@ -50,6 +52,21 @@ extern "C" { // <<< Use Configuration Wizard in Context Menu >>> +//MIKROE SPI SSD1306 Configuration + +// MIKROE SPI SSD1306 UC Configuration +// Enable: Peripheral configuration is taken straight from the configuration set in the universal configuration (UC). +// Disable: If the application demands it to be modified during runtime, use the default API to modify the peripheral configuration. +// Default: 0 +#define MIKROE_SPI_SSD1306_UC 0 + +// Bit Rate (Bits/Second) <1-116000000> +// Default: 10000000 +#define MIKROE_SPI_SSD1306_BITRATE 10000000 + +// +// + // Screen // OLED Screen Resolution @@ -87,6 +104,12 @@ extern "C" { // <<< sl:start pin_tool >>> +// SSD1306_CS +// $[GPIO_SSD1306_CS] +// #define SSD1306_CS_PORT 0 +// #define SSD1306_CS_PIN 0 +// [GPIO_SSD1306_CS]$ + // SSD1306_DC // $[GPIO_SSD1306_DC] #define SSD1306_DC_PORT gpioPortA @@ -105,4 +128,4 @@ extern "C" { } #endif -#endif /* SSD1306_SPI_CONFIG_H_ */ +#endif // SSD1306_SPI_CONFIG_H_ diff --git a/driver/public/mikroe/oledw_ssd1306/config/brd4108a/mikroe_ssd1306_config.h b/driver/public/mikroe/oledw_ssd1306/config/brd4108a/mikroe_ssd1306_config.h index 25e56b5c..3e660eba 100644 --- a/driver/public/mikroe/oledw_ssd1306/config/brd4108a/mikroe_ssd1306_config.h +++ b/driver/public/mikroe/oledw_ssd1306/config/brd4108a/mikroe_ssd1306_config.h @@ -43,6 +43,8 @@ extern "C" { #endif +#include "em_gpio.h" + #define OLED_DISPLAY_64_48 0 #define OLED_DISPLAY_96_39 1 #define OLED_DISPLAY_128_32 2 @@ -50,6 +52,21 @@ extern "C" { // <<< Use Configuration Wizard in Context Menu >>> +//MIKROE SPI SSD1306 Configuration + +// MIKROE SPI SSD1306 UC Configuration +// Enable: Peripheral configuration is taken straight from the configuration set in the universal configuration (UC). +// Disable: If the application demands it to be modified during runtime, use the default API to modify the peripheral configuration. +// Default: 0 +#define MIKROE_SPI_SSD1306_UC 0 + +// Bit Rate (Bits/Second) <1-116000000> +// Default: 10000000 +#define MIKROE_SPI_SSD1306_BITRATE 10000000 + +// +// + // Screen // OLED Screen Resolution @@ -87,6 +104,12 @@ extern "C" { // <<< sl:start pin_tool >>> +// SSD1306_CS +// $[GPIO_SSD1306_CS] +// #define SSD1306_CS_PORT 0 +// #define SSD1306_CS_PIN 0 +// [GPIO_SSD1306_CS]$ + // SSD1306_DC // $[GPIO_SSD1306_DC] #define SSD1306_DC_PORT gpioPortB @@ -105,4 +128,4 @@ extern "C" { } #endif -#endif /* SSD1306_SPI_CONFIG_H_ */ +#endif // SSD1306_SPI_CONFIG_H_ diff --git a/driver/public/mikroe/oledw_ssd1306/config/brd4314a/mikroe_ssd1306_config.h b/driver/public/mikroe/oledw_ssd1306/config/brd4314a/mikroe_ssd1306_config.h index 25e56b5c..3e660eba 100644 --- a/driver/public/mikroe/oledw_ssd1306/config/brd4314a/mikroe_ssd1306_config.h +++ b/driver/public/mikroe/oledw_ssd1306/config/brd4314a/mikroe_ssd1306_config.h @@ -43,6 +43,8 @@ extern "C" { #endif +#include "em_gpio.h" + #define OLED_DISPLAY_64_48 0 #define OLED_DISPLAY_96_39 1 #define OLED_DISPLAY_128_32 2 @@ -50,6 +52,21 @@ extern "C" { // <<< Use Configuration Wizard in Context Menu >>> +//MIKROE SPI SSD1306 Configuration + +// MIKROE SPI SSD1306 UC Configuration +// Enable: Peripheral configuration is taken straight from the configuration set in the universal configuration (UC). +// Disable: If the application demands it to be modified during runtime, use the default API to modify the peripheral configuration. +// Default: 0 +#define MIKROE_SPI_SSD1306_UC 0 + +// Bit Rate (Bits/Second) <1-116000000> +// Default: 10000000 +#define MIKROE_SPI_SSD1306_BITRATE 10000000 + +// +// + // Screen // OLED Screen Resolution @@ -87,6 +104,12 @@ extern "C" { // <<< sl:start pin_tool >>> +// SSD1306_CS +// $[GPIO_SSD1306_CS] +// #define SSD1306_CS_PORT 0 +// #define SSD1306_CS_PIN 0 +// [GPIO_SSD1306_CS]$ + // SSD1306_DC // $[GPIO_SSD1306_DC] #define SSD1306_DC_PORT gpioPortB @@ -105,4 +128,4 @@ extern "C" { } #endif -#endif /* SSD1306_SPI_CONFIG_H_ */ +#endif // SSD1306_SPI_CONFIG_H_ diff --git a/driver/public/mikroe/oledw_ssd1306/config/brd4338a/mikroe_ssd1306_config.h b/driver/public/mikroe/oledw_ssd1306/config/brd4338a/mikroe_ssd1306_config.h new file mode 100644 index 00000000..288c0976 --- /dev/null +++ b/driver/public/mikroe/oledw_ssd1306/config/brd4338a/mikroe_ssd1306_config.h @@ -0,0 +1,129 @@ +/***************************************************************************//** + * @file micro_oled_ssd1306_config.h + * @brief Micro OLED SSD1306 Configuration + * @version 1.0.0 + ******************************************************************************* + * # License + * Copyright 2022 Silicon Laboratories Inc. www.silabs.com + ******************************************************************************* + * + * SPDX-License-Identifier: Zlib + * + * The licensor of this software is Silicon Laboratories Inc. + * + * This software is provided \'as-is\', without any express or implied + * warranty. In no event will the authors be held liable for any damages + * arising from the use of this software. + * + * Permission is granted to anyone to use this software for any purpose, + * including commercial applications, and to alter it and redistribute it + * freely, subject to the following restrictions: + * + * 1. The origin of this software must not be misrepresented; you must not + * claim that you wrote the original software. If you use this software + * in a product, an acknowledgment in the product documentation would be + * appreciated but is not required. + * 2. Altered source versions must be plainly marked as such, and must not be + * misrepresented as being the original software. + * 3. This notice may not be removed or altered from any source distribution. + * + ******************************************************************************* + * + * EVALUATION QUALITY + * This code has been minimally tested to ensure that it builds with the + * specified dependency versions and is suitable as a demonstration for + * evaluation purposes only. + * This code will be maintained at the sole discretion of Silicon Labs. + * + ******************************************************************************/ +#ifndef SSD1306_SPI_CONFIG_H_ +#define SSD1306_SPI_CONFIG_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +#define OLED_DISPLAY_64_48 0 +#define OLED_DISPLAY_96_39 1 +#define OLED_DISPLAY_128_32 2 +#define OLED_DISPLAY_128_64 3 + +// <<< Use Configuration Wizard in Context Menu >>> + +//MIKROE SPI SSD1306 Configuration + +// MIKROE SPI SSD1306 UC Configuration +// Enable: Peripheral configuration is taken straight from the configuration set in the universal configuration (UC). +// Disable: If the application demands it to be modified during runtime, use the default API to modify the peripheral configuration. +// Default: 0 +#define MIKROE_SPI_SSD1306_UC 0 + +// Bit Rate (Bits/Second) <1-116000000> +// Default: 10000000 +#define MIKROE_SPI_SSD1306_BITRATE 10000000 + +// +// + +// Screen + +// OLED Screen Resolution +// 64x48 +// 96x39 +// 128x32 +// 128x64 +// Default: 64x48 +// The screen width parameter is used +// to configure display driver. +#define CONFIG_OLED_DISPLAY_RESOLUTION OLED_DISPLAY_96_39 + +// +// <<< end of configuration section >>> + +#if (CONFIG_OLED_DISPLAY_RESOLUTION == OLED_DISPLAY_64_48) +#define CONFIG_OLED_DISPLAY_64_48 +#define SSD1306_DISPLAY_WIDTH 64 +#define SSD1306_DISPLAY_HEIGHT 48 +#define SSD1306_USE_PAGE_ADDRESSING_MODE +#elif (CONFIG_OLED_DISPLAY_RESOLUTION == OLED_DISPLAY_96_39) +#define CONFIG_OLED_DISPLAY_96_39 +#define SSD1306_DISPLAY_WIDTH 96 +#define SSD1306_DISPLAY_HEIGHT 39 +#define SSD1306_USE_PAGE_ADDRESSING_MODE +#elif (CONFIG_OLED_DISPLAY_RESOLUTION == OLED_DISPLAY_128_32) +#define CONFIG_OLED_DISPLAY_128_32 +#define SSD1306_DISPLAY_WIDTH 128 +#define SSD1306_DISPLAY_HEIGHT 32 +#elif (CONFIG_OLED_DISPLAY_RESOLUTION == OLED_DISPLAY_128_64) +#define CONFIG_OLED_DISPLAY_128_64 +#define SSD1306_DISPLAY_WIDTH 128 +#define SSD1306_DISPLAY_HEIGHT 64 +#endif + +// <<< sl:start pin_tool >>> + +// SSD1306_CS +// $[GPIO_SSD1306_CS] +// #define SSD1306_CS_PORT 0 +// #define SSD1306_CS_PIN 0 +// [GPIO_SSD1306_CS]$ + +// SSD1306_DC +// $[GPIO_SSD1306_DC] +#define SSD1306_DC_PORT 0 +#define SSD1306_DC_PIN 47 +// [GPIO_SSD1306_DC]$ + +// SSD1306_RST +// $[GPIO_SSD1306_RST] +#define SSD1306_RST_PORT 0 +#define SSD1306_RST_PIN 46 +// [GPIO_SSD1306_RST]$ + +// <<< sl:end pin_tool >>> + +#ifdef __cplusplus +} +#endif + +#endif // SSD1306_SPI_CONFIG_H_ diff --git a/driver/public/mikroe/oledw_ssd1306/config/other/mikroe_ssd1306_config.h b/driver/public/mikroe/oledw_ssd1306/config/other/mikroe_ssd1306_config.h index 38da34c7..439333ec 100644 --- a/driver/public/mikroe/oledw_ssd1306/config/other/mikroe_ssd1306_config.h +++ b/driver/public/mikroe/oledw_ssd1306/config/other/mikroe_ssd1306_config.h @@ -43,6 +43,10 @@ extern "C" { #endif +#ifndef SLI_SI917 +#include "em_gpio.h" +#endif + #define OLED_DISPLAY_64_48 0 #define OLED_DISPLAY_96_39 1 #define OLED_DISPLAY_128_32 2 @@ -50,6 +54,21 @@ extern "C" { // <<< Use Configuration Wizard in Context Menu >>> +//MIKROE SPI SSD1306 Configuration + +// MIKROE SPI SSD1306 UC Configuration +// Enable: Peripheral configuration is taken straight from the configuration set in the universal configuration (UC). +// Disable: If the application demands it to be modified during runtime, use the default API to modify the peripheral configuration. +// Default: 0 +#define MIKROE_SPI_SSD1306_UC 0 + +// Bit Rate (Bits/Second) <1-116000000> +// Default: 10000000 +#define MIKROE_SPI_SSD1306_BITRATE 10000000 + +// +// + // Screen // OLED Screen Resolution @@ -87,18 +106,24 @@ extern "C" { // <<< sl:start pin_tool >>> +// SSD1306_CS +// $[GPIO_SSD1306_CS] +// #define SSD1306_CS_PORT 0 +// #define SSD1306_CS_PIN 0 +// [GPIO_SSD1306_CS]$ + // SSD1306_DC // $[GPIO_SSD1306_DC] #warning "DC pin for SSD1306 is not configured" -// #define SSD1306_DC_PORT gpioPortB -// #define SSD1306_DC_PIN 4 +// #define SSD1306_DC_PORT 0 +// #define SSD1306_DC_PIN 0 // [GPIO_SSD1306_DC]$ // SSD1306_RST // $[GPIO_SSD1306_RST] #warning "RST pin for SSD1306 is not configured" -// #define SSD1306_RST_PORT gpioPortC -// #define SSD1306_RST_PIN 6 +// #define SSD1306_RST_PORT 0 +// #define SSD1306_RST_PIN 0 // [GPIO_SSD1306_RST]$ // <<< sl:end pin_tool >>> @@ -107,4 +132,4 @@ extern "C" { } #endif -#endif /* SSD1306_SPI_CONFIG_H_ */ +#endif // SSD1306_SPI_CONFIG_H_ diff --git a/driver/public/mikroe/oledw_ssd1306/inc/mikroe_resources.h b/driver/public/mikroe/oledw_ssd1306/inc/mikroe_resources.h index a7b5400b..ea4f67de 100644 --- a/driver/public/mikroe/oledw_ssd1306/inc/mikroe_resources.h +++ b/driver/public/mikroe/oledw_ssd1306/inc/mikroe_resources.h @@ -52,4 +52,4 @@ extern oledw_resources_t oledw_img[]; } #endif -#endif /* MIKROE_RESOURCES_H_ */ +#endif // MIKROE_RESOURCES_H_ diff --git a/driver/public/mikroe/oledw_ssd1306/inc/mikroe_ssd1306.h b/driver/public/mikroe/oledw_ssd1306/inc/mikroe_ssd1306.h index e8e47462..1be19609 100644 --- a/driver/public/mikroe/oledw_ssd1306/inc/mikroe_ssd1306.h +++ b/driver/public/mikroe/oledw_ssd1306/inc/mikroe_ssd1306.h @@ -41,7 +41,6 @@ #define MIKROE_SSD1306_H_ #include "sl_status.h" -#include "spidrv.h" #include "oledw.h" #ifdef __cplusplus @@ -142,7 +141,7 @@ extern "C" { * SL_STATUS_OK Successful initialization. * SL_STATUS_FAIL Initialization failed. ******************************************************************************/ -sl_status_t mikroe_ssd1306_init(SPIDRV_Handle_t spi_instance); +sl_status_t mikroe_ssd1306_init(mikroe_spi_handle_t spi_instance); /***************************************************************************//** * @brief @@ -155,7 +154,7 @@ sl_status_t mikroe_ssd1306_init(SPIDRV_Handle_t spi_instance); * SL_STATUS_OK if there are no errors * SL_STATUS_INVALID_PARAMETER if spi_instance is null ******************************************************************************/ -sl_status_t mikroe_ssd1306_set_spi_instance(SPIDRV_Handle_t spi_instance); +sl_status_t mikroe_ssd1306_set_spi_instance(mikroe_spi_handle_t spi_instance); /***************************************************************************//** * @brief @@ -307,4 +306,4 @@ sl_status_t mikroe_ssd1306_stop_scroll(void); /** @} (end addtogroup ssd1306) */ -#endif /* MIKROE_SSD1306_H_ */ +#endif // MIKROE_SSD1306_H_ diff --git a/driver/public/mikroe/oledw_ssd1306/inc/oled_display.h b/driver/public/mikroe/oledw_ssd1306/inc/oled_display.h index 814f6c8b..8ed54978 100644 --- a/driver/public/mikroe/oledw_ssd1306/inc/oled_display.h +++ b/driver/public/mikroe/oledw_ssd1306/inc/oled_display.h @@ -37,7 +37,6 @@ #include #include "sl_status.h" - #include "mikroe_ssd1306.h" #ifdef __cplusplus @@ -86,4 +85,4 @@ const oled_display_t *oled_display_get(void); } #endif -#endif +#endif // OLED_DISPLAY_H diff --git a/driver/public/mikroe/oledw_ssd1306/src/mikroe_ssd1306.c b/driver/public/mikroe/oledw_ssd1306/src/mikroe_ssd1306.c index 519e38ab..0c2a0815 100644 --- a/driver/public/mikroe/oledw_ssd1306/src/mikroe_ssd1306.c +++ b/driver/public/mikroe/oledw_ssd1306/src/mikroe_ssd1306.c @@ -37,7 +37,6 @@ * ******************************************************************************/ -#include "third_party_hw_drivers_helpers.h" #include "mikroe_ssd1306_config.h" #include "mikroe_ssd1306.h" @@ -50,14 +49,12 @@ static oledw_t oledw; static oledw_cfg_t oledw_cfg; static bool initialized = false; -sl_status_t mikroe_ssd1306_init(SPIDRV_Handle_t spi_instance) +sl_status_t mikroe_ssd1306_init(mikroe_spi_handle_t spi_instance) { if (NULL == spi_instance) { return SL_STATUS_INVALID_PARAMETER; } - THIRD_PARTY_HW_DRV_RETCODE_INIT(); - // Configure default spi instance oledw.spi.handle = spi_instance; @@ -73,13 +70,23 @@ sl_status_t mikroe_ssd1306_init(SPIDRV_Handle_t spi_instance) oledw_cfg.rst = hal_gpio_pin_name(SSD1306_RST_PORT, SSD1306_RST_PIN); #endif - THIRD_PARTY_HW_DRV_RETCODE_TEST(oledw_init(&oledw, &oledw_cfg)); +#if defined(SSD1306_CS_PORT) && defined(SSD1306_CS_PIN) + oledw_cfg.cs = hal_gpio_pin_name(SSD1306_CS_PORT, SSD1306_CS_PIN); +#endif + +#if (MIKROE_SPI_SSD1306_UC == 1) + oledw_cfg.spi_speed = MIKROE_SPI_SSD1306_BITRATE; +#endif + + if (oledw_init(&oledw, &oledw_cfg) != OLEDW_OK) { + return SL_STATUS_INITIALIZATION; + } initialized = true; - return THIRD_PARTY_HW_DRV_RETCODE_VALUE; + return SL_STATUS_OK; } -sl_status_t mikroe_ssd1306_set_spi_instance(SPIDRV_Handle_t spi_instance) +sl_status_t mikroe_ssd1306_set_spi_instance(mikroe_spi_handle_t spi_instance) { if (!initialized) { return SL_STATUS_NOT_INITIALIZED; @@ -96,14 +103,14 @@ sl_status_t mikroe_ssd1306_set_spi_instance(SPIDRV_Handle_t spi_instance) sl_status_t mikroe_ssd1306_send(oledw_data_t tx_data, oledw_data_mode_t data_mode) { - THIRD_PARTY_HW_DRV_RETCODE_INIT(); - if (!initialized) { return SL_STATUS_NOT_INITIALIZED; } - THIRD_PARTY_HW_DRV_RETCODE_TEST(oledw_send(&oledw, tx_data, data_mode)); + if (oledw_send(&oledw, tx_data, data_mode) != OLEDW_OK) { + return SL_STATUS_FAIL; + } - return THIRD_PARTY_HW_DRV_RETCODE_VALUE; + return SL_STATUS_OK; } sl_status_t mikroe_ssd1306_default_cfg(void) @@ -268,17 +275,17 @@ sl_status_t mikroe_ssd1306_draw(const uint8_t *data) static const uint8_t command_table[] = { #ifdef SSD1306_USE_PAGE_ADDRESSING_MODE - /* Set Lower Column Start Address for Page Addressing Mode */ + // Set Lower Column Start Address for Page Addressing Mode 0x00, - /* Set Higher Column Start Address for Page Addressing Mode */ + // Set Higher Column Start Address for Page Addressing Mode 0x12 #else - /* Set page start, end address + set page pointer to page start address */ + // Set page start, end address + set page pointer to page start address OLEDW_PAGEADDR, 0, (SSD1306_NUM_PAGES - 1), - /* Set page start, end address + set page pointer to page start address */ + // Set page start, end address + set page pointer to page start address OLEDW_COLUMNADDR, 0, (SSD1306_DISPLAY_WIDTH - 1), #endif }; @@ -289,29 +296,31 @@ sl_status_t mikroe_ssd1306_draw(const uint8_t *data) #ifdef SSD1306_USE_PAGE_ADDRESSING_MODE - /* Get start address to draw from */ + // Get start address to draw from for (i = 0; i < SSD1306_NUM_PAGES; i++) { - /* Send update command and first line address */ - /* Set the current RAM page address. */ + /** + * Send update command and first line address + * Set the current RAM page address. + */ oledw_send(&oledw, 0xB0 + i, OLEDW_COMMAND); for (uint16_t j = 0; j < sizeof(command_table); j++) { oledw_send(&oledw, command_table[j], OLEDW_COMMAND); } - /* Send pixels for this page */ + // Send pixels for this page for (uint16_t j = 0; j < MIKROE_SSD1306_LCDWIDTH; j++) { oledw_send(&oledw, *data++, OLEDW_DATA); } } #else - /* Send commands to prepare data transfer from frame buffer */ + // Send commands to prepare data transfer from frame buffer for (i = 0; i < sizeof(command_table); i++) { oledw_send(&oledw, command_table[i], OLEDW_COMMAND); } - /*Send frame buffer data*/ + // Send frame buffer data for (i = 0; i < (SSD1306_DISPLAY_WIDTH * SSD1306_NUM_PAGES); i++) { oledw_send(&oledw, *data++, OLEDW_DATA); } diff --git a/driver/public/mikroe/oledw_ssd1306/src/oled_display.c b/driver/public/mikroe/oledw_ssd1306/src/oled_display.c index 7d7c9d19..197dc9a8 100644 --- a/driver/public/mikroe/oledw_ssd1306/src/oled_display.c +++ b/driver/public/mikroe/oledw_ssd1306/src/oled_display.c @@ -37,7 +37,7 @@ #include "mikroe_ssd1306.h" #include "oled_display.h" -/* This oled_frame_buffer is large enough to store one full frame. */ +// This oled_frame_buffer is large enough to store one full frame. static uint8_t oled_frame_buffer[(SSD1306_DISPLAY_HEIGHT + 7) / 8 * SSD1306_DISPLAY_WIDTH]; @@ -66,9 +66,10 @@ static const oled_display_driver_api_t sl_memlcd_driver_api = .stop_scroll = mikroe_ssd1306_stop_scroll, }; -/** Flag to monitor is this driver has been initialized. The - * oled_display_instance - * is only valid after initialized=true. */ +/** + * Flag to monitor is this driver has been initialized. + * The oled_display_instance is only valid after initialized=true. + */ static bool initialized = false; sl_status_t oled_display_init(void) @@ -101,7 +102,7 @@ static sl_status_t fill_screen(uint16_t color) { uint16_t i; - /* Fill the display with the background color of the glib_context_t */ + // Fill the display with the background color of the glib_context_t for (i = 0; i < sizeof(oled_frame_buffer); i++) { oled_frame_buffer[i] = color == 0 ? 0x00 : 0xFF; } diff --git a/driver/public/mikroe/pir_pl_n823_01/inc/mikroe_pl_n823_01.h b/driver/public/mikroe/pir_pl_n823_01/inc/mikroe_pl_n823_01.h index 1f441640..b10d5bb6 100644 --- a/driver/public/mikroe/pir_pl_n823_01/inc/mikroe_pl_n823_01.h +++ b/driver/public/mikroe/pir_pl_n823_01/inc/mikroe_pl_n823_01.h @@ -40,8 +40,9 @@ #ifndef MIKROE_PL_N823_01_H_ #define MIKROE_PL_N823_01_H_ -#include "pir.h" #include "sl_status.h" +#include "sl_i2cspm.h" +#include "pir.h" #define PIR_PL_N823_01_I2C_SLAVE_ADDRESS 0x4D diff --git a/driver/public/mikroe/pressure3_dps310/inc/mikroe_dps310_i2c.h b/driver/public/mikroe/pressure3_dps310/inc/mikroe_dps310_i2c.h index 86cd195f..a20506e0 100644 --- a/driver/public/mikroe/pressure3_dps310/inc/mikroe_dps310_i2c.h +++ b/driver/public/mikroe/pressure3_dps310/inc/mikroe_dps310_i2c.h @@ -41,6 +41,7 @@ #define MIKROE_PRESSURE3_H #include "sl_status.h" +#include "sl_i2cspm.h" #include "drv_digital_out.h" #include "drv_digital_in.h" #include "drv_i2c_master.h" diff --git a/driver/public/mikroe/pressure3_dps310/inc/mikroe_dps310_spi.h b/driver/public/mikroe/pressure3_dps310/inc/mikroe_dps310_spi.h index e95c4678..fd1bb1bf 100644 --- a/driver/public/mikroe/pressure3_dps310/inc/mikroe_dps310_spi.h +++ b/driver/public/mikroe/pressure3_dps310/inc/mikroe_dps310_spi.h @@ -41,6 +41,7 @@ #define MIKROE_PRESSURE3_H #include "sl_status.h" +#include "spidrv.h" #include "drv_digital_out.h" #include "drv_digital_in.h" #include "drv_spi_master.h" diff --git a/driver/public/mikroe/smoke2_adpd188bi/inc/mikroe_adpd188bi_spi.h b/driver/public/mikroe/smoke2_adpd188bi/inc/mikroe_adpd188bi_spi.h index 33bbf42f..4c7102e0 100644 --- a/driver/public/mikroe/smoke2_adpd188bi/inc/mikroe_adpd188bi_spi.h +++ b/driver/public/mikroe/smoke2_adpd188bi/inc/mikroe_adpd188bi_spi.h @@ -38,7 +38,9 @@ ******************************************************************************/ #ifndef MIKROE_ADPD188BI_H_ #define MIKROE_ADPD188BI_H_ + #include "sl_status.h" +#include "spidrv.h" #include "smoke2.h" #ifdef __cplusplus diff --git a/driver/public/mikroe/temphum9_shtc3/config/mikroe_shtc3_config.h b/driver/public/mikroe/temphum9_shtc3/config/mikroe_shtc3_config.h new file mode 100644 index 00000000..709f76b0 --- /dev/null +++ b/driver/public/mikroe/temphum9_shtc3/config/mikroe_shtc3_config.h @@ -0,0 +1,70 @@ +/***************************************************************************/ /** + * @file mikroe_shtc3_config.h + * @brief Mikroe SHTC3 configuration + ******************************************************************************* + * # License + * Copyright 2024 Silicon Laboratories Inc. www.silabs.com + ******************************************************************************* + * + * SPDX-License-Identifier: Zlib + * + * The licensor of this software is Silicon Laboratories Inc. + * + * This software is provided 'as-is', without any express or implied + * warranty. In no event will the authors be held liable for any damages + * arising from the use of this software. + * + * Permission is granted to anyone to use this software for any purpose, + * including commercial applications, and to alter it and redistribute it + * freely, subject to the following restrictions: + * + * 1. The origin of this software must not be misrepresented; you must not + * claim that you wrote the original software. If you use this software + * in a product, an acknowledgment in the product documentation would be + * appreciated but is not required. + * 2. Altered source versions must be plainly marked as such, and must not be + * misrepresented as being the original software. + * 3. This notice may not be removed or altered from any source distribution. + * + ******************************************************************************* + * + * EVALUATION QUALITY + * This code has been minimally tested to ensure that it builds with the + * specified dependency versions and is suitable as a demonstration for + * evaluation purposes only. + * This code will be maintained at the sole discretion of Silicon Labs. + * + ******************************************************************************/ + +#ifndef MIKROE_SHTC3_CONFIG_H +#define MIKROE_SHTC3_CONFIG_H + +#ifdef __cplusplus +extern "C" { +#endif + +// <<< Use Configuration Wizard in Context Menu >>> + +//MIKROE I2C SHTC3 Configuration + +// MIKROE I2C SHTC3 UC Configuration +// Enable: Peripheral configuration is taken straight from the configuration set in the universal configuration (UC). +// Disable: If the application demands it to be modified during runtime, use the default API to modify the peripheral configuration. +// Default: 0 +#define MIKROE_I2C_SHTC3_UC 0 + +// Speed mode +// <0=> Standard mode (100kbit/s) +// <1=> Fast mode (400kbit/s) +// <2=> Fast mode plus (1Mbit/s) +// Default: 0 +#define MIKROE_I2C_SHTC3_SPEED_MODE 0 + +// +// +// <<< end of configuration section >>> + +#ifdef __cplusplus +} +#endif +#endif // MIKROE_SHTC3_CONFIG_H diff --git a/driver/public/mikroe/temphum9_shtc3/inc/mikroe_shtc3.h b/driver/public/mikroe/temphum9_shtc3/inc/mikroe_shtc3.h index 3369d589..5fe3427e 100644 --- a/driver/public/mikroe/temphum9_shtc3/inc/mikroe_shtc3.h +++ b/driver/public/mikroe/temphum9_shtc3/inc/mikroe_shtc3.h @@ -41,7 +41,7 @@ #define MIKROE_SHTC3_H_ #include "sl_status.h" -#include "sl_i2cspm.h" +#include "drv_i2c_master.h" #ifdef __cplusplus extern "C" { @@ -168,7 +168,7 @@ typedef struct { * SL_STATUS_OK Successful initialization. * SL_STATUS_FAIL Initialization failed. ******************************************************************************/ -sl_status_t mikroe_shtc3_init(sl_i2cspm_t *i2cspm_instance); +sl_status_t mikroe_shtc3_init(mikroe_i2c_handle_t i2cspm_instance); /***************************************************************************//** * @brief @@ -181,7 +181,8 @@ sl_status_t mikroe_shtc3_init(sl_i2cspm_t *i2cspm_instance); * SL_STATUS_OK if there are no errors. * SL_STATUS_INVALID_PARAMETER if i2cspm_instance is null. ******************************************************************************/ -sl_status_t mikroe_shtc3_set_i2csmp_instance(sl_i2cspm_t *i2cspm_instance); +sl_status_t mikroe_shtc3_set_i2csmp_instance( + mikroe_i2c_handle_t i2cspm_instance); /***************************************************************************//** * @brief @@ -276,4 +277,4 @@ sl_status_t mikroe_shtc3_get_temperature_and_humidity( /** @} (end addtogroup mikroe_shtc3) */ -#endif /* MIKROE_SHTC3_H_ */ +#endif // MIKROE_SHTC3_H_ diff --git a/driver/public/mikroe/temphum9_shtc3/src/mikroe_shtc3.c b/driver/public/mikroe/temphum9_shtc3/src/mikroe_shtc3.c index 6aadee0b..aaa391ab 100644 --- a/driver/public/mikroe/temphum9_shtc3/src/mikroe_shtc3.c +++ b/driver/public/mikroe/temphum9_shtc3/src/mikroe_shtc3.c @@ -37,33 +37,38 @@ * ******************************************************************************/ -#include "third_party_hw_drivers_helpers.h" +#include "mikroe_shtc3_config.h" #include "mikroe_shtc3.h" #include "temphum9.h" static temphum9_t temphum9; static temphum9_cfg_t temphum9_cfg; -sl_status_t mikroe_shtc3_init(sl_i2cspm_t *i2cspm_instance) +sl_status_t mikroe_shtc3_init(mikroe_i2c_handle_t i2cspm_instance) { if (NULL == i2cspm_instance) { return SL_STATUS_INVALID_PARAMETER; } - THIRD_PARTY_HW_DRV_RETCODE_INIT(); - // Configure default i2csmp instance temphum9.i2c.handle = i2cspm_instance; // Call basic setup functions temphum9_cfg_setup(&temphum9_cfg); - THIRD_PARTY_HW_DRV_RETCODE_TEST(temphum9_init(&temphum9, &temphum9_cfg)); +#if (MIKROE_I2C_SHTC3_UC == 1) + temphum9_cfg.i2c_speed = MIKROE_I2C_SHTC3_SPEED_MODE; +#endif + + if (temphum9_init(&temphum9, &temphum9_cfg) != TEMPHUM9_OK) { + return SL_STATUS_INITIALIZATION; + } - return THIRD_PARTY_HW_DRV_RETCODE_VALUE; + return SL_STATUS_OK; } -sl_status_t mikroe_shtc3_set_i2csmp_instance(sl_i2cspm_t *i2cspm_instance) +sl_status_t mikroe_shtc3_set_i2csmp_instance( + mikroe_i2c_handle_t i2cspm_instance) { if (NULL == i2cspm_instance) { return SL_STATUS_INVALID_PARAMETER; diff --git a/driver/public/mikroe/thunder_as3935/inc/mikroe_thunder_as3935.h b/driver/public/mikroe/thunder_as3935/inc/mikroe_thunder_as3935.h index 8e8ca16c..2b795345 100644 --- a/driver/public/mikroe/thunder_as3935/inc/mikroe_thunder_as3935.h +++ b/driver/public/mikroe/thunder_as3935/inc/mikroe_thunder_as3935.h @@ -42,6 +42,9 @@ // ----------------------------------------------------------------------------- // Includes // ----------------------------------------------------------------------------- + +#include "sl_status.h" +#include "spidrv.h" #include "thunder.h" #include "mikroe_thunder_as3935_config.h" diff --git a/driver/public/mikroe/turbidity_tsd10/inc/mikroe_tsd10.h b/driver/public/mikroe/turbidity_tsd10/inc/mikroe_tsd10.h index 4d77f388..ac7694a7 100644 --- a/driver/public/mikroe/turbidity_tsd10/inc/mikroe_tsd10.h +++ b/driver/public/mikroe/turbidity_tsd10/inc/mikroe_tsd10.h @@ -40,10 +40,11 @@ #ifndef MIKROE_TURBIDITY_H #define MIKROE_TURBIDITY_H +#include "sl_status.h" +#include "sl_i2cspm.h" #include "drv_digital_out.h" #include "drv_digital_in.h" #include "drv_i2c_master.h" -#include "sl_status.h" /*! * @addtogroup turbidity Turbidity Click Driver diff --git a/driver/public/mikroe/water_detect/config/brd2703a/mikroe_water_detect_config.h b/driver/public/mikroe/water_detect/config/brd2703a/mikroe_water_detect_config.h index d5b9d07e..5da1145f 100644 --- a/driver/public/mikroe/water_detect/config/brd2703a/mikroe_water_detect_config.h +++ b/driver/public/mikroe/water_detect/config/brd2703a/mikroe_water_detect_config.h @@ -42,6 +42,10 @@ #include "em_gpio.h" +#ifdef __cplusplus +extern "C" { +#endif + // <<< sl:start pin_tool >>> // WATER_DETECT_INT @@ -52,4 +56,8 @@ // <<< sl:end pin_tool >>> -#endif /* MIKROE_WATER_DETECT_CONFIG_H_ */ +#ifdef __cplusplus +} +#endif + +#endif // MIKROE_WATER_DETECT_CONFIG_H_ diff --git a/driver/public/mikroe/water_detect/config/brd4108a/mikroe_water_detect_config.h b/driver/public/mikroe/water_detect/config/brd4108a/mikroe_water_detect_config.h index 53486d78..53db29d7 100644 --- a/driver/public/mikroe/water_detect/config/brd4108a/mikroe_water_detect_config.h +++ b/driver/public/mikroe/water_detect/config/brd4108a/mikroe_water_detect_config.h @@ -42,6 +42,10 @@ #include "em_gpio.h" +#ifdef __cplusplus +extern "C" { +#endif + // <<< sl:start pin_tool >>> // WATER_DETECT_INT @@ -52,4 +56,8 @@ // <<< sl:end pin_tool >>> -#endif /* MIKROE_WATER_DETECT_CONFIG_H_ */ +#ifdef __cplusplus +} +#endif + +#endif // MIKROE_WATER_DETECT_CONFIG_H_ diff --git a/driver/public/mikroe/water_detect/config/brd4314a/mikroe_water_detect_config.h b/driver/public/mikroe/water_detect/config/brd4314a/mikroe_water_detect_config.h index 53486d78..53db29d7 100644 --- a/driver/public/mikroe/water_detect/config/brd4314a/mikroe_water_detect_config.h +++ b/driver/public/mikroe/water_detect/config/brd4314a/mikroe_water_detect_config.h @@ -42,6 +42,10 @@ #include "em_gpio.h" +#ifdef __cplusplus +extern "C" { +#endif + // <<< sl:start pin_tool >>> // WATER_DETECT_INT @@ -52,4 +56,8 @@ // <<< sl:end pin_tool >>> -#endif /* MIKROE_WATER_DETECT_CONFIG_H_ */ +#ifdef __cplusplus +} +#endif + +#endif // MIKROE_WATER_DETECT_CONFIG_H_ diff --git a/driver/public/mikroe/water_detect/config/brd4338a/mikroe_water_detect_config.h b/driver/public/mikroe/water_detect/config/brd4338a/mikroe_water_detect_config.h new file mode 100644 index 00000000..5f3d6feb --- /dev/null +++ b/driver/public/mikroe/water_detect/config/brd4338a/mikroe_water_detect_config.h @@ -0,0 +1,61 @@ +/***************************************************************************//** + * @file mikroe_water_detect_config.h + * @brief SCL Water Detect Configuration + * @version 1.0.0 + ******************************************************************************* + * # License + * Copyright 2022 Silicon Laboratories Inc. www.silabs.com + ******************************************************************************* + * + * SPDX-License-Identifier: Zlib + * + * The licensor of this software is Silicon Laboratories Inc. + * + * This software is provided \'as-is\', without any express or implied + * warranty. In no event will the authors be held liable for any damages + * arising from the use of this software. + * + * Permission is granted to anyone to use this software for any purpose, + * including commercial applications, and to alter it and redistribute it + * freely, subject to the following restrictions: + * + * 1. The origin of this software must not be misrepresented; you must not + * claim that you wrote the original software. If you use this software + * in a product, an acknowledgment in the product documentation would be + * appreciated but is not required. + * 2. Altered source versions must be plainly marked as such, and must not be + * misrepresented as being the original software. + * 3. This notice may not be removed or altered from any source distribution. + * + ******************************************************************************* + * + * EVALUATION QUALITY + * This code has been minimally tested to ensure that it builds with the + * specified dependency versions and is suitable as a demonstration for + * evaluation purposes only. + * This code will be maintained at the sole discretion of Silicon Labs. + * + ******************************************************************************/ + +#ifndef MIKROE_WATER_DETECT_CONFIG_H_ +#define MIKROE_WATER_DETECT_CONFIG_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +// <<< sl:start pin_tool >>> + +// WATER_DETECT_INT +// $[GPIO_WATER_DETECT_INT] +#define WATER_DETECT_INT_PORT 0 +#define WATER_DETECT_INT_PIN 46 +// [GPIO_WATER_DETECT_INT]$ + +// <<< sl:end pin_tool >>> + +#ifdef __cplusplus +} +#endif + +#endif // MIKROE_WATER_DETECT_CONFIG_H_ diff --git a/driver/public/mikroe/water_detect/config/other/mikroe_water_detect_config.h b/driver/public/mikroe/water_detect/config/other/mikroe_water_detect_config.h index ccf75f18..4e61fe37 100644 --- a/driver/public/mikroe/water_detect/config/other/mikroe_water_detect_config.h +++ b/driver/public/mikroe/water_detect/config/other/mikroe_water_detect_config.h @@ -40,17 +40,27 @@ #ifndef MIKROE_WATER_DETECT_CONFIG_H_ #define MIKROE_WATER_DETECT_CONFIG_H_ +#ifndef SLI_SI917 #include "em_gpio.h" +#endif + +#ifdef __cplusplus +extern "C" { +#endif // <<< sl:start pin_tool >>> // WATER_DETECT_INT // $[GPIO_WATER_DETECT_INT] #warning "WATER_DETECT_INT is not configured" -// #define WATER_DETECT_INT_PORT gpioPortB -// #define WATER_DETECT_INT_PIN 3 +// #define WATER_DETECT_INT_PORT 0 +// #define WATER_DETECT_INT_PIN 0 // [GPIO_WATER_DETECT_INT]$ // <<< sl:end pin_tool >>> -#endif /* MIKROE_WATER_DETECT_CONFIG_H_ */ +#ifdef __cplusplus +} +#endif + +#endif // MIKROE_WATER_DETECT_CONFIG_H_ diff --git a/driver/public/mikroe/water_detect/inc/mikroe_water_detect.h b/driver/public/mikroe/water_detect/inc/mikroe_water_detect.h index 5a304fcb..19486267 100644 --- a/driver/public/mikroe/water_detect/inc/mikroe_water_detect.h +++ b/driver/public/mikroe/water_detect/inc/mikroe_water_detect.h @@ -117,4 +117,4 @@ uint8_t mikroe_water_detect_get_status(void); #endif /** @} (end addtogroup water_detect) */ -#endif /* MIKROE_WATER_DETECT_H_ */ +#endif // MIKROE_WATER_DETECT_H_ diff --git a/driver/public/mikroe/water_detect/src/mikroe_water_detect.c b/driver/public/mikroe/water_detect/src/mikroe_water_detect.c index 444a91ed..eae1c80e 100644 --- a/driver/public/mikroe/water_detect/src/mikroe_water_detect.c +++ b/driver/public/mikroe/water_detect/src/mikroe_water_detect.c @@ -37,11 +37,9 @@ * ******************************************************************************/ -#include -#include "waterdetect.h" #include "mikroe_water_detect_config.h" #include "mikroe_water_detect.h" -#include "third_party_hw_drivers_helpers.h" +#include "waterdetect.h" static waterdetect_t waterdetect; static waterdetect_cfg_t waterdetect_cfg; @@ -50,16 +48,16 @@ static waterdetect_cfg_t waterdetect_cfg; sl_status_t mikroe_water_detect_init(void) { - THIRD_PARTY_HW_DRV_RETCODE_INIT(); waterdetect_cfg_setup(&waterdetect_cfg); #if defined(WATER_DETECT_INT_PORT) && defined(WATER_DETECT_INT_PIN) waterdetect_cfg.int_pin = hal_gpio_pin_name(WATER_DETECT_INT_PORT, WATER_DETECT_INT_PIN); #endif - THIRD_PARTY_HW_DRV_RETCODE_TEST(waterdetect_init(&waterdetect, - &waterdetect_cfg)); - return THIRD_PARTY_HW_DRV_RETCODE_VALUE; + if (waterdetect_init(&waterdetect, &waterdetect_cfg) != WATERDETECT_OK) { + return SL_STATUS_INITIALIZATION; + } + return SL_STATUS_OK; } uint8_t mikroe_water_detect_get_status(void) diff --git a/driver/public/silabs/gnss_max_m10s/inc/gnss_max_m10s_driver.h b/driver/public/silabs/gnss_max_m10s/inc/gnss_max_m10s_driver.h new file mode 100644 index 00000000..4136b546 --- /dev/null +++ b/driver/public/silabs/gnss_max_m10s/inc/gnss_max_m10s_driver.h @@ -0,0 +1,1176 @@ +/***************************************************************************//** + * @file gnss_max_m10s_driver.h + * @brief MAX_M10S GNSS receiver API implementation + ******************************************************************************* + * # License + * Copyright 2020 Silicon Laboratories Inc. www.silabs.com + ******************************************************************************* + * + * SPDX-License-Identifier: Zlib + * + * The licensor of this software is Silicon Laboratories Inc. + * + * This software is provided \'as-is\', without any express or implied + * warranty. In no event will the authors be held liable for any damages + * arising from the use of this software. + * + * Permission is granted to anyone to use this software for any purpose, + * including commercial applications, and to alter it and redistribute it + * freely, subject to the following restrictions: + * + * 1. The origin of this software must not be misrepresented; you must not + * claim that you wrote the original software. If you use this software + * in a product, an acknowledgment in the product documentation would be + * appreciated but is not required. + * 2. Altered source versions must be plainly marked as such, and must not be + * misrepresented as being the original software. + * 3. This notice may not be removed or altered from any source distribution. + * + ******************************************************************************* + * # Evaluation Quality + * This code has been minimally tested to ensure that it builds and is suitable + * as a demonstration for evaluation purposes only. This code will be maintained + * at the sole discretion of Silicon Labs. + ******************************************************************************/ + +#ifndef GNSS_MAX_M10S_H_ +#define GNSS_MAX_M10S_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +/// Includes +#include "sl_status.h" +#include "gnss_max_m10s_ubx_struct.h" +#include "gnss_max_m10s_nmea_struct.h" +#include "drv_i2c_master.h" + +/******************************************************************************/ + +/******************************************************************************* + *************************** Defines / Macros ******************************** + ******************************************************************************/ +#define GNSS_ADDRESS 0x42 ///< Default GNSS receiver slave address +#define GNSS_POLL_MAX_TIMEOUT 1100 ///< Default maximum timeout value +#define RX_LEN 2 ///< Read buffer length 2 bytes +#define TX_LEN 2 ///< Write buffer length 2 bytes +#define RD_BUF 6 ///< Read buffer length 6 bytes +#define WR_BUF 1 ///< Write buffer length 1 byte +// #define I2C_BASE I2C2 ///< Value of I2C base +#define MS_DELAY_COUNTER 4600 ///< Value of delay counter for milli seconds delay +#define MAX_PAYLOAD_SIZE 276 ///< Value of maximum payload size for UBX +#define UBX_NAV_PVT_LEN 92 ///< Value for position/velocity/time type UBX packet length +#define UBX_NAV_STATUS_LEN 16 ///< Value for navigation status type UBX packet length +#define UBX_NAV_DOP_LEN 18 ///< Value for dilution precision type UBX packet length +#define UBX_NAV_CLOCK_LEN 20 ///< Value for navigation clock solution type UBX packet length +#define UBX_NAV_EOE_LEN 4 ///< Value for navigation end of epoch type UBX packet length +#define UBX_NAV_SAT_LEN 3068 ///< Value for the maximum possible length of the UBX-NAV-SAT message +#define UBX_NAV_TIMELS_LEN 24 ///< Value for length of the UBX-NAV-TIMELS message +#define UBX_NAV_TIMEUTC_LEN 20 ///< Value for length of the UBX-NAV-TIMEUTC message +#define UBX_NAV_SIG_MAX_LEN 1480 ///< Value for maximum length for UBX-NAV-SIG packet +#define UBX_NAV_POSLLH_LEN 28 ///< Value for length for UBX-NAV-POSLLH packet +#define UBX_NAV_VELNED_LEN 36 ///< Value for length for UBX-NAV-VELNED packet +#define UBX_CLASS_NAV 0x01 ///< Value for NAV type UBX class +#define UBX_CLASS_SEC 0x27 ///< Value for SEC type UBX class +#define UBX_CLASS_ACK 0x05 ///< Value for ACK type UBX class +#define UBX_CLASS_NACK 0x00 ///< Value for NACK type UBX class +#define UBX_MAX_LENGTH 3068 ///< Value for maximum UBX data length +#define UBX_ACK_ACK 0x01 ///< Value for message ID for ACK class +#define CFG_VALSET_MAX_KEYS 64 ///< Value for maximum number of keys for cfg valset type packet +#define UBX_CFG_L 0x01001000 ///< Value for bool type identification of UBX data. +#define UBLOX_CFG_I2C_INPORT_UBX UBX_CFG_L | 0x10710001 ///< Value to indicate if UBX should be an input protocol on I2C +#define UBLOX_CFG_I2C_OUTPORT_UBX UBX_CFG_L | 0x10720001 ///< Value to indicate if UBX should be an output protocol on I2C +#define UBLOX_CFG_I2C_OUTPORT_NMEA UBX_CFG_L | 0x10720002 ///< Value to indicate if NMEA should be an output protocol on I2C +#define VAL_LAYER_RAM 1 ///< Value for RAM layer +#define UBX_SYNCH_1 0xB5 ///< Value for UBX header synchronization 1 +#define UBX_SYNCH_2 0x62 ///< Value for UBX header synchronization 2 +#define UBX_CLASS_CFG 0x06 ///< Value for CFG type UBX class +#define UBX_CFG_VALGET 0x8B ///< Value for message ID for CFG type UBX data +#define UBX_CFG_VALSET 0x8A ///< Value for message ID for CFG VALSET type UBX data +#define VAL_LAYER_DEFAULT 0x7 ///< Value for default layer +#define VAL_LAYER_RAM_BBR 5 ///< Value for layer RAM and BBR +#define VAL_LAYER_BBR 2 ///< Value for BBR layer +#define VAL_LAYER_FLASH 4 ///< Value for Flash layer +#define COM_TYPE_UBX 1 ///< Value for UBX type communication +#define COM_TYPE_NMEA 2 ///< Value for UBX type communication +#define UBX_CFG_SIZE_MASK 0x0F00F000 ///< Value for mask of UBX size +#define UBX_SEC_UNIQID 0x03 ///< Value for message ID of UBX_SEC_UINQID type UBX message +#define UBX_NAV_PVT 0x07 ///< Value for message ID of UBX_NAV_PVT type UBX message +#define UBX_NAV_STATUS 0x03 ///< Value for message ID of UBX_NAV_STATUS type UBX message +#define UBX_NAV_DOP 0x04 ///< Value for message ID of UBX_NAV_DOP type UBX message +#define UBX_NAV_CLOCK 0x22 ///< Value for message ID of UBX_NAV_CLOCK type UBX message +#define UBX_NAV_EOE 0x61 ///< Value for message ID of UBX_NAV_EOE type UBX message +#define UBX_NAV_SAT 0x35 ///< Value for message ID of UBX_NAV_SAT type UBX message +#define UBX_NAV_SIG 0x43 ///< Value for message ID of UBX_NAV_SIG type UBX message +#define UBX_NAV_TIMELS 0x26 ///< Value for message ID of UBX_NAV_TIMELS type UBX message +#define UBX_NAV_TIMEUTC 0x21 ///< Value for message ID of UBX_NAV_TIMEUTC type UBX message +#define UBX_NAV_POSLLH 0x2 ///< Value for message ID of UBX_NAV_POSLLH type UBX message +#define UBX_NAV_VELNED 0x12 ///< Value for message ID of UBX_NAV_VELNED type UBX message +#define FILE_BUFFER_SIZE MAX_PAYLOAD_SIZE ///< Value for the UBX buffer size +#define I2C_TRANSACTION_SIZE 32 ///< Value for I2C transaction size +#define I2C_POLLING_WAIT 100 ///< Value to poll the I2C data +#define NMEA_MAX_BYTE_COUNT 100 ///< Value for default maximum NMEA byte count + +/******************************************************************************* + ******************************** ENUMS ************************************ + ******************************************************************************/ +/// @brief Enum for ublox status +typedef enum sl_max_m10s_ublox_status_e +{ + SL_MAX_M10S_UBLOX_STATUS_SUCCESS=0, ///< To indicate success + SL_MAX_M10S_UBLOX_STATUS_FAIL, ///< To indicate failure + SL_MAX_M10S_UBLOX_STATUS_CRC_FAIL, ///< To indicate failure in CRC of data received + SL_MAX_M10S_UBLOX_STATUS_TIMEOUT, ///< To indicate timeout for a process + SL_MAX_M10S_UBLOX_STATUS_COMMAND_NACK, ///< To indicate that the command was un-recognised, invalid or that the module is too busy to respond + SL_MAX_M10S_UBLOX_STATUS_OUT_OF_RANGE, ///< To indicate the received data is out of range + SL_MAX_M10S_UBLOX_STATUS_INVALID_ARG, ///< To indicate invalid argument + SL_MAX_M10S_UBLOX_STATUS_INVALID_OPERATION, ///< To indicate invalid operation + SL_MAX_M10S_UBLOX_STATUS_MEM_ERR, ///< To indicate memory error + SL_MAX_M10S_UBLOX_STATUS_HW_ERR, ///< To indicate hardware error + SL_MAX_M10S_UBLOX_STATUS_DATA_SENT, ///< To indicate that a data was set successfully + SL_MAX_M10S_UBLOX_STATUS_DATA_RECEIVED, ///< To indicate that a data was received successfully + SL_MAX_M10S_UBLOX_STATUS_I2C_COMM_FAILURE, ///< To indicate I2C communication error + SL_MAX_M10S_UBLOX_STATUS_DATA_OVERWRITTEN ///< To indicate data has or is being overwritten by another packet +} sl_max_m10s_ublox_status_e; + +/// @brief Enum for UBLOX packet validity +typedef enum +{ + SL_MAX_M10S_UBLOX_PACKET_VALIDITY_NOT_VALID, ///< To indicate that the ublox packet validity is not achieved + SL_MAX_M10S_UBLOX_PACKET_VALIDITY_VALID, ///< To indicate that the ublox packet validity is achieved + SL_MAX_M10S_UBLOX_PACKET_VALIDITY_NOT_DEFINED, ///< To indicate that the ublox packet validity is not defined + SL_MAX_M10S_UBLOX_PACKET_NOTACKNOWLEDGED ///< To indicate that we received a not acknowledged packet +} sl_max_m10s_ublox_packet_validity_e; + +/// @brief Enum to identify which ubx packet buffer is in use. +typedef enum +{ + SL_MAX_M10S_UBLOX_PACKET_PACKETCFG, ///< To indicate that the packet is config type UBX packet + SL_MAX_M10S_UBLOX_PACKET_PACKETACK, ///< To indicate that the packet is acknowledge type UBX packet + SL_MAX_M10S_UBLOX_PACKET_PACKETBUF, ///< To indicate that the packet is buffer for UBX packet + SL_MAX_M10S_UBLOX_PACKET_PACKETAUTO ///< To indicate that the packet will be handle automatically +} sl_max_m10s_ublox_packet_buffer_e; + +/// @brief Enum for different UBLOX sentence type. +typedef enum +{ + SL_MAX_M10S_UBLOX_SENTENCE_TYPE_NONE = 0, ///< To indicate the UBLOX sentence type is unknown or not a UBlOX sentence + SL_MAX_M10S_UBLOX_SENTENCE_TYPE_NMEA, ///< To indicate the UBLOX sentence type is NMEA + SL_MAX_M10S_UBLOX_SENTENCE_TYPE_UBX, ///< To indicate the UBLOX sentence type is UBX + SL_MAX_M10S_UBLOX_SENTENCE_TYPE_RTCM ///< To indicate the UBLOX sentence type is RTCM +} sl_max_m10s_ublox_sentence_types_e; + +/// @brief Enum for status of the gnss processes like begin, ping etc. +typedef enum sl_max_m10s_gnss_status +{ + SL_MAX_M10S_BEGIN_OK, ///< status for begin is success + SL_MAX_M10S_BEGIN_FAIL, ///< status for begin is failure + SL_MAX_M10S_PING_OK, ///< status for ping is ok + SL_MAX_M10S_PING_FAIL, ///< status for begin is failure + SL_MAX_M10S_INIT_OK, ///< status ok for init + SL_MAX_M10S_INIT_FAIL, ///< status for init is failure + SL_MAX_M10S_UBLOX_INIT_OK, ///< status for ublox init is success + SL_MAX_M10S_UBLOX_INIT_FAIL, ///< status for ublox init is failure +} sl_max_m10s_gnss_status_e; + +/// @brief to define which protocol is used to get data from receiver. +typedef enum sl_max_m10s_protocol_type +{ + SL_MAX_M10S_PROTOCOL_UBX = 0, + SL_MAX_M10S_PROTOCOL_NMEA, +}sl_max_m10s_protocol_type_e; + +/// @brief to store the signed or unsigned 8 bit data from the payload when extracting data from the UBX packet. +typedef union +{ + uint32_t unsigned8; ///< To store unsigned 32 bit value + int32_t signed8; ///< To store signed 32 bit value +} sl_max_m10s_unsigned_signed_8_t; + +/// @brief to store the signed or unsigned 32 bit data from the payload when extracting data from the UBX packet. +typedef union +{ + uint32_t unsigned32; ///< To store unsigned 32 bit value + int32_t signed32; ///< To store signed 32 bit value +} sl_max_m10s_unsigned_signed_32_t; + +/// @brief to store the signed or unsigned 16 bit data from the payload when extracting data from the UBX packet. +typedef union +{ + uint16_t unsigned16; ///< To store unsigned 16 bit value + int16_t signed16; ///< To store signed 16 bit value +} sl_max_m10s_unsigned_signed_16_t; + +/// @brief UBX binary specific variables +typedef struct sl_max_m10s_ubx_packet +{ + uint8_t cls; ///< class of the UBX packet. + uint8_t id; ///< ID for the UBX packet. + uint16_t len; ///< Length of the payload. Does not include cls, id, or checksum bytes + uint16_t counter; ///< Keeps track of number of overall bytes received. Some responses are larger than 255 bytes. + uint16_t starting_spot; ///< The counter value needed to go past before we begin recording into payload array + uint8_t *payload; ///< Used to allocate RAM for the payload if/when needed. + uint8_t checksum_a; ///< Checksum value given from the module + uint8_t checksum_b; ///< Checksum value given from the module + sl_max_m10s_ublox_packet_validity_e valid; ///< Goes from NOT_DEFINED to VALID or NOT_VALID when checksum is checked + sl_max_m10s_ublox_packet_validity_e class_and_id_match; ///< Goes from NOT_DEFINED to VALID or NOT_VALID when the Class and ID match the requestedClass and requestedID +}sl_max_m10s_ubx_packet_t; + +/// @brief to store the different types of pay load from UBX packets. +typedef struct sl_max_m10s_msg_data +{ + uint8_t payload_ack[2]; ///< To store Acknowledge message payload + uint8_t payload_buf[2]; ///< To store buffer payload + size_t packet_cfg_payloadsize; ///< Value for CFG type packet's payload size + uint8_t *payload_cfg; ///< To store the CFG type payload + uint8_t *payload_auto; ///< To store the automatic packet payload +}sl_max_m10s_msg_data_t; + +/// @brief to store the GNSS configuration data +typedef struct sl_max_m10s_cfg_data +{ + uint8_t device_address; ///< gnss receiver slave address + uint8_t num_cfg_keys; ///< Number of CFG keys + uint8_t rolling_checksum_a; ///< Rolling checksum A for UBX frame + uint8_t rolling_checksum_b; ///< Rolling checksum B for UBX frame + int8_t nmea_byte_counter; ///< Counter for NMEA type data + int8_t max_nmea_byte_count; ///< Maximum number of NMEA byte + bool signs_of_life; ///< Flag to indicate if the process is ongoing + bool reset_current_sentence_on_bus_error; ///< Flag to indicate if there is a bus error for current UBLOX sentence + bool ignore_this_payload; ///< Flag to indicate the current sentence payload should be ignored + uint16_t rtcm_frame_counter; ///< Counter for RTCM data + uint16_t file_buffer_head; ///< Value for starting of file buffer + uint16_t file_buffer_tail; ///< Value for ending of file buffer + uint16_t file_buffer_max_avail; ///< Value for maximum available size in file buffer + uint16_t ubx_frame_counter; ///< Counter for UBX frame data + sl_max_m10s_gnss_status_e status; ///< Status of the driver function + sl_max_m10s_protocol_type_e protocol_type; ///< To check the protocol type + sl_max_m10s_ublox_sentence_types_e current_sentence; ///< To show the current sentence type + sl_max_m10s_ublox_packet_buffer_e active_packet_buffer; ///< Active packet type + mikroe_i2c_handle_t i2c_instance; ///< I2C instance used by the user + uint8_t *ubx_file_buffer; ///< To store the file buffer + size_t auto_send_at_space_remaining; ///< automatic send to the remaining space of the file buffer + sl_max_m10s_ubx_nav_pvt_t *packetUBXNAVPVT; ///< UBX_NAV_PVT type UBX packet + sl_max_m10s_ubx_nav_status_t *packetUBXNAVSTATUS; ///< UBX_NAV_STATUS type UBX packet + sl_max_m10s_ubx_nav_dop_t *packetUBXNAVDOP; ///< UBX_NAV_DOP type UBX packet + sl_max_m10s_ubx_nav_clock_t *packetUBXNAVCLOCK; ///< UBX_NAV_CLOCK type UBX packet + sl_max_m10s_ubx_nav_epoch_t *packetUBXNAVEOE; ///< UBX_NAV_EOE type UBX packet + sl_max_m10s_ubx_nav_sat_t *packetUBXNAVSAT; ///< UBX_NAV_SAT type UBX packet + sl_max_m10s_ubx_navsig_t *packetUBXNAVSIG; ///< UBX_NAV_SIG type UBX packet + sl_max_m10s_ubx_nav_timels_t *packetUBXNAVTIMELS; ///< UBX_NAV_TIMELS type UBX packet + sl_max_m10s_ubx_nav_timeutc_t *packetUBXNAVTIMEUTC; ///< UBX_NAV_TIMEUTC type UBX packet + sl_max_m10s_ubx_nav_posllh_t *packetUBXNAVPOSLLH; ///< UBX_NAV_POSLLH type UBX packet + sl_max_m10s_ubx_nav_velned_t *packetUBXNAVVELNED; ///< UBX_NAV_VELNED UBX packet + sl_max_m10s_ubx_unique_id_t *packetUBXUNIQID; ///< UBX_SEC_UNIQID UBX packet + sl_max_m10s_nmea_gga_t *storageNMEAGPGGA; ///< GPGGA type NMEA sentence + sl_max_m10s_nmea_gga_t *storageNMEAGNGGA; ///< GNGGA type NMEA sentence + sl_max_m10s_nmea_rmc_t *storageNMEAGPRMC; ///< GPRMC type NMEA sentence + sl_max_m10s_nmea_rmc_t *storageNMEAGNRMC; ///< GNRMC type NMEA sentence + sl_max_m10s_nmea_data_t *nmea_data; ///< Data from the both NMEA sentences + sl_max_m10s_nmea_filtering_t processing_nmea; ///< Type of sentences to be processed + sl_max_m10s_msg_data_t msg_data; ///< structure for payload of UBX message + sl_max_m10s_ubx_packet_t packet_ack; ///< structure for UBX acknowledge type message + sl_max_m10s_ubx_packet_t packet_buf; ///< structure to store the UBX message as buffer + sl_max_m10s_ubx_packet_t packet_auto; ///< structure to store automatic type UBX message + sl_max_m10s_ubx_packet_t packet_cfg; ///< structure to store config type UBX message + char nmea_buffer[100]; ///< Buffer to store NMEA sentence. + uint8_t nmea_address_field[6]; ///< NMEA address field +} sl_max_m10s_cfg_data_t; + +// ----------------------------------------------------------------------------- +// Prototypes + +/**************************************************************************//** + * @brief De-Initialize the gnss_cfg_data structure members + * @param[in] gnss_cfg_data : pointer to the structure containing GNSS configuration data. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + *****************************************************************************/ +sl_status_t gnss_max_m10s_deinit(sl_max_m10s_cfg_data_t *gnss_cfg_data); + +/**************************************************************************//** + * @brief Initialization for the GNSS receiver module. + * @param[in] max_wait : Timeout value. + * @param[in] gnss_cfg_data : pointer to the structure containing GNSS configuration data. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + * @note User must set GNSS configuration structure member gnss_cfg_data.protocol_type + * before calling this function. + *****************************************************************************/ +sl_status_t gnss_max_m10s_begin(uint16_t max_wait, + sl_max_m10s_cfg_data_t *gnss_cfg_data); + +/**************************************************************************//** + * @brief Called regularly to check for available bytes on the user specified port + * @param[in] gnss_cfg_data : pointer to the structure containing GNSS configuration data. + * @param[in] incomingUBX : pointer to incoming UBX packet. + * @param[in] requested_class : class for the UBX packet. + * @param[in] requested_id : ID for the UBX packet. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + *****************************************************************************/ +sl_status_t gnss_max_m10s_check_ublox_internal( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + sl_max_m10s_ubx_packet_t *incomingUBX, + uint8_t requested_class, + uint8_t requested_id); + +/**************************************************************************//** + * @brief sends the UBX packet via I2C. + * @param[in] gnss_cfg_data : pointer to the structure containing GNSS configuration data. + * @param[in] max_wait : Timeout value. + * @param[in] expect_ack_only : to expect only acknowledged data. + * @return the following values are returned: + * - \ref SL_MAX_M10S_UBLOX_STATUS_DATA_RECEIVED if we got a config packet full of response data that has CLS/ID match to our query packet + * - \ref SL_MAX_M10S_UBLOX_STATUS_CRC_FAIL if we got a corrupt config packet that has CLS/ID match to our query packet + * - \ref SL_MAX_M10S_UBLOX_STATUS_TIMEOUT if we timed out + * - \ref SL_MAX_M10S_UBLOX_STATUS_DATA_OVERWRITTEN if we got an a valid packetCfg but that the packetCfg has been + * or is currently being overwritten. + *****************************************************************************/ +sl_max_m10s_ublox_status_e gnss_max_m10s_send_command( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + bool expect_ack_only); + +/**************************************************************************//** + * @brief This is used when receiving messages from module. + * @param[in] gnss_cfg_data : pointer to the structure containing GNSS configuration data. + * @param[in] incoming : a byte to add to the rolling checksum. + *****************************************************************************/ +void gnss_max_m10s_add_to_checksum(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint8_t incoming); + +/**************************************************************************//** + * @brief Check if we have storage allocated for an incoming "automatic" message + * and calculate how much RAM is needed to store the payload for a given automatic message + * @param[in] gnss_cfg_data : pointer to the structure containing GNSS configuration data. + * @param[in] max_size : pointer to maximum size. + * @return true/false. + *****************************************************************************/ +bool gnss_max_m10s_auto_lookup(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t *max_size); + +/**************************************************************************//** + * @brief Add a UBX packet to the file buffer + * @param[in] gnss_cfg_data : pointer to the structure containing GNSS configuration data. + * @param[in] msg : pointer to UBX packet. + * @return true if packet is stored properly else returns false. + *****************************************************************************/ +bool gnss_max_m10s_store_packet(sl_max_m10s_cfg_data_t *gnss_cfg_data, + sl_max_m10s_ubx_packet_t *msg); + +/**************************************************************************//** + * @brief to set output port for UBX data only. + * @param[in] gnss_cfg_data : pointer to the structure containing GNSS configuration data. + * @param[in] com_settings : communication type + * @param[in] max_wait : Timeout value. + * @param[in] layer : RAM layer. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + * @note User must call this function after calling begin function + * to set the output port as: + * 1. COM_TYPE_UBX: for UBX protocol. + * 2. COM_TYPE_NMEA: for NMEA protocol. + *****************************************************************************/ +sl_status_t gnss_max_m10s_set_i2c_output(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint8_t com_settings, + uint8_t layer, + uint16_t max_wait); + +/**************************************************************************//** + * @brief Function to get delay in millisecond + * @param[in] period : delay in milliseconds. + *****************************************************************************/ +void gnss_max_m10s_delay(uint32_t period); + +/**************************************************************************//** + * @brief Get the current fix type + * @param[in] gnss_cfg_data : pointer to the structure containing GNSS configuration data. + * @param[in] max_wait : Timeout value. + * @param[out] fix_type : pointer to store the fix_type data from UBX_NAV_PVT packet. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + * @note Can be used with UBX and NMEA protocol. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_fix_type(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + uint8_t *fix_type); + +/**************************************************************************//** + * @brief Get the number of satellites. + * @param[in] gnss_cfg_data : pointer to the structure containing GNSS configuration data. + * @param[in] max_wait : Timeout value. + * @param[out] satellite : pointer to store the number of satellite data from UBX_NAV_PVT packet. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + * @note Can be used with UBX and NMEA protocol. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_satellite_number( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + uint8_t *satellite); + +/**************************************************************************//** + * @brief Get the current longitude in degrees + * @param[in] gnss_cfg_data : pointer to the structure containing GNSS configuration data. + * @param[in] max_wait : Timeout value. + * @param[out] longitude : pointer to store the current longitude from UBX_NAV_PVT packet. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + * @note Can be used with UBX and NMEA protocol. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_longitude(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + int32_t *longitude); + +/**************************************************************************//** + * @brief Get the current latitude in degrees + * @param[in] gnss_cfg_data : pointer to the structure containing GNSS configuration data. + * @param[in] max_wait : Timeout value. + * @param[out] latitude : pointer to store the current latitude from UBX_NAV_PVT packet. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + * @note Can be used with UBX and NMEA protocol. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_latitude(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + int32_t *latitude); + +/**************************************************************************//** + * @brief Get the current altitude in mm according to mean sea level + * @param[in] gnss_cfg_data : pointer to the structure containing GNSS configuration data. + * @param[in] max_wait : Timeout value. + * @param[out] altitude_msl : pointer to store the altitude from mean sea level from UBX_NAV_PVT packet. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + * @note Can be used with UBX and NMEA protocol. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_altitude_msl( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + int32_t *altitude_msl); + +/**************************************************************************//** + * @brief Get the current day + * @param[in] gnss_cfg_data : pointer to the structure containing GNSS configuration data. + * @param[in] max_wait : Timeout value. + * @param[out] day : pointer to store the current day from UBX_NAV_PVT packet + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + * @note Can be used with UBX and NMEA protocol. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_day(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + uint8_t *day); + +/**************************************************************************//** + * @brief Get the current month + * @param[in] gnss_cfg_data : pointer to the structure containing GNSS configuration data. + * @param[in] max_wait : Timeout value. + * @param[out] month : pointer to store the current month from UBX_NAV_PVT packet + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + * @note Can be used with UBX and NMEA protocol. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_month(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + uint8_t *month); + +/**************************************************************************//** + * @brief Get the current year + * @param[in] gnss_cfg_data : pointer to the structure containing GNSS configuration data. + * @param[in] max_wait : Timeout value. + * @param[out] year : pointer to store the current year from UBX_NAV_PVT packet + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + * @note Can be used with UBX and NMEA protocol. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_year(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + uint16_t *year); + +/**************************************************************************//** + * @brief Get the hour of time in UTC format. + * @param[in] gnss_cfg_data : pointer to the structure containing GNSS configuration data. + * @param[in] max_wait : Timeout value. + * @param[out] hour : pointer to store the current hour in UTC from UBX_NAV_PVT packet + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + * @note Can be used with UBX and NMEA protocol. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_hour(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + uint8_t *hour); + +/**************************************************************************//** + * @brief Get the minute of time in UTC format. + * @param[in] gnss_cfg_data : pointer to the structure containing GNSS configuration data. + * @param[in] max_wait : Timeout value. + * @param[out] minute : pointer to store the current minute in UTC from UBX_NAV_PVT packet + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + * @note Can be used with UBX and NMEA protocol. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_minute(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + uint8_t *minute); + +/**************************************************************************//** + * @brief Get the seconds of time in UTC format. + * @param[in] gnss_cfg_data : pointer to the structure containing GNSS configuration data. + * @param[in] max_wait : Timeout value. + * @param[out] seconds : pointer to store the current seconds in UTC from UBX_NAV_PVT packet + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + * @note Can be used with UBX and NMEA protocol. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_seconds(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + uint8_t *seconds); + +/**************************************************************************//** + * @brief Get the milliseconds of time from time of the week data of UBX packet. + * @param[in] gnss_cfg_data : pointer to the structure containing GNSS configuration data. + * @param[in] max_wait : Timeout value. + * @param[out] milli_seconds : pointer to store the current millisecond in UTC from UBX_NAV_PVT packet + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + * @note Can be used with UBX protocol only. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_milliseconds( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + uint16_t *milli_seconds); + +/**************************************************************************//** + * @brief Get the nanoseconds of time in UTC format. + * @param[in] gnss_cfg_data : pointer to the structure containing GNSS configuration data. + * @param[in] max_wait : Timeout value. + * @param[out] nano : pointer to store the current nanoseconds from UBX_NAV_PVT packet + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + * @note Can be used with UBX protocol only. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_nanoseconds(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + int32_t *nano); + +/**************************************************************************//** + * @brief validate the date from the UBX packet. + * @param[in] gnss_cfg_data : pointer to the structure containing GNSS configuration data. + * @param[in] max_wait : Timeout value. + * @param[out] valid_date : to check the date validity from UBX_NAV_PVT packet + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + * @note Can be used with UBX protocol only. + *****************************************************************************/ +sl_status_t gnss_max_m10s_valid_date(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + bool *valid_date); + +/**************************************************************************//** + * @brief get the geoid separation from GGA type NMEA sentence. + * @param[in] gnss_cfg_data : pointer to the structure containing GNSS configuration data. + * @param[in] max_wait : Timeout value. + * @param[out] geoid : to store the geoid separation in mm. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + * @note Can be used with NMEA protocol only. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_geoid(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + int32_t *geoid); + +/**************************************************************************//** + * @brief get the horizontal dilution of precision from NMEA sentence. + * @param[in] gnss_cfg_data : pointer to the structure containing GNSS configuration data. + * @param[in] max_wait : Timeout value. + * @param[out] hdop : to store the horizontal dilution of precision. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + * @note Can be used with NMEA protocol only. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_horizontal_dilution( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + uint8_t *hdop); + +/**************************************************************************//** + * @brief get the course over ground from NMEA sentence. + * @param[in] gnss_cfg_data : pointer to the structure containing GNSS configuration data. + * @param[in] max_wait : Timeout value. + * @param[out] course : to store the course over ground in degrees. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + * @note Can be used with NMEA protocol only. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_course_over_ground( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + int32_t *course); + +/**************************************************************************//** + * @brief get the navigation system in use from NMEA sentence. + * @param[in] gnss_cfg_data : pointer to the structure containing GNSS configuration data. + * @param[in] max_wait : Timeout value. + * @param[out] nav_system : character representing navigation system in use. + * @details `N` = GNSS, `P` = GPS, `L` = GLONASS, `A` = Galileo, `\0` = none. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + * @note Can be used with NMEA protocol only. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_navigation_system( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + char *nav_system); + +/**************************************************************************//** + * @brief validate the time from the UBX packet. + * @param[in] gnss_cfg_data : pointer to the structure containing GNSS configuration data. + * @param[in] max_wait : Timeout value. + * @param[out] valid_time : to check the time from UBX_NAV_PVT packet + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + * @note Can be used with UBX protocol only. + *****************************************************************************/ +sl_status_t gnss_max_m10s_valid_time(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + bool *valid_time); + +/**************************************************************************//** + * @brief Get the current altitude in mm according to ellipsoid model + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[in] max_wait : Timeout value. + * @param[out] altitude : pointer to store height from ellipsoid. + * @return the following values are returned: + * - \ref SL_STATUS_OK for success. + * - \ref SL_STATUS_FAIL for failure. + * @note Can be used with UBX protocol only. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_altitude(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + int32_t *altitude); + +/**************************************************************************//** + * @brief Get the carrier phase range solution status + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[in] max_wait : Timeout value. + * @param[out] carrier_solution : pointer to store carrier phase range solution. + * @return the following values are returned: + * - \ref SL_STATUS_OK for success. + * - \ref SL_STATUS_FAIL for failure. + * @note Can be used with UBX protocol only. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_carrier_solution( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + int8_t *carrier_solution); + +/**************************************************************************//** + * @brief Get whether differential corrections were applied + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[in] max_wait : Timeout value. + * @param[out] diff_solution : pointer to store the differential correctiondata. + * @return the following values are returned: + * - \ref SL_STATUS_OK for success. + * - \ref SL_STATUS_FAIL for failure. + * @note Can be used with UBX protocol only. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_differential_solution( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + bool *diff_solution); + +/**************************************************************************//** + * @brief check the heading of vehicle + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[in] max_wait : Timeout value. + * @param[out] head_vehicle_valid : pointer to store the heading of vehicle check data. + * @return the following values are returned: + * - \ref SL_STATUS_OK for success. + * - \ref SL_STATUS_FAIL for failure. + * @note Can be used with UBX protocol only. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_head_vehicle_valid( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + bool *head_vehicle_valid); + +/**************************************************************************//** + * @brief Get heading of vehicle (2-D) in degree + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[in] max_wait : Timeout value. + * @param[out] head_vehicle : pointer to store the heading of vehicle data. + * @return the following values are returned: + * - \ref SL_STATUS_OK for success. + * - \ref SL_STATUS_FAIL for failure. + * @note Can be used with UBX protocol only. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_head_vehicle( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + int32_t *head_vehicle); + +/**************************************************************************//** + * @brief Get whether we have a valid fix + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[in] max_wait : Timeout value. + * @param[out] gnss_fix_ok : pointer to store the valid fix data. + * @return the following values are returned: + * - \ref SL_STATUS_OK for success. + * - \ref SL_STATUS_FAIL for failure. + * @note Can be used with UBX protocol only. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_gnss_fix_ok(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + bool *gnss_fix_ok); + +/**************************************************************************//** + * @brief get the Magnetic declination accuracy + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[in] max_wait : Timeout value. + * @param[out] magnetic_accuracy : pointer to store the magnetic declination accuracy data from the UBX packet. + * @return the following values are returned: + * - \ref SL_STATUS_OK for success. + * - \ref SL_STATUS_FAIL for failure. + * @note Can be used with UBX protocol only. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_magnetic_declination_accuracy( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + uint16_t *magnetic_accuracy); + +/**************************************************************************//** + * @brief get the Magnetic declination + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[in] max_wait : Timeout value. + * @param[out] magnetic_declination : pointer to store the magnetic declination data from the UBX packet. + * @return the following values are returned: + * - \ref SL_STATUS_OK for success. + * - \ref SL_STATUS_FAIL for failure. + * @note Can be used with UBX protocol only. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_magnetic_declination( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + int16_t *magnetic_declination); + +/**************************************************************************//** + * @brief Check to see if the UTC time has been fully resolved + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[in] max_wait : Timeout value. + * @param[out] fully_resolved : pointer pointer to store the validity of time and date from the UBX packet. + * @return the following values are returned: + * - \ref SL_STATUS_OK for success. + * - \ref SL_STATUS_FAIL for failure. + * @note Can be used with UBX protocol only. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_fully_resolved( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + bool *fully_resolved); + +/**************************************************************************//** + * @brief get the data to check the invalid latitude, longitude, height from mean sea level and height from ellipsoid + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[in] max_wait : Timeout value. + * @param[out] invalid_data : pointer to store invalid data. + * @return the following values are returned: + * - \ref SL_STATUS_OK for success. + * - \ref SL_STATUS_FAIL for failure. + * @note Can be used with UBX protocol only. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_invalid_data( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + bool *invalid_data); + +/**************************************************************************//** + * @brief Get the time of week data from UBX packet + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[in] max_wait : Timeout value. + * @param[out] time_of_week : pointer to store the time of week data. + * @return the following values are returned: + * - \ref SL_STATUS_OK for success. + * - \ref SL_STATUS_FAIL for failure. + * @note Can be used with UBX protocol only. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_time_of_week( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + uint32_t *time_of_week); + +/**************************************************************************//** + * @brief Get the horizontal accuracy estimate in mm + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[in] max_wait : Timeout value. + * @param[out] horizontal_accuracy : pointer to store the horizontal accuracy estimate. + * @return the following values are returned: + * - \ref SL_STATUS_OK for success. + * - \ref SL_STATUS_FAIL for failure. + * @note Can be used with UBX protocol only. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_horizontal_accuracy( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + int32_t *horizontal_accuracy); + +/**************************************************************************//** + * @brief Get the vertical accuracy estimate in mm + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[in] max_wait : Timeout value. + * @param[out] vertical_accuracy : pointer to store the vertical accuracy estimate. + * @return the following values are returned: + * - \ref SL_STATUS_OK for success. + * - \ref SL_STATUS_FAIL for failure. + * @note Can be used with UBX protocol only. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_vertical_accuracy( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + int32_t *vertical_accuracy); + +/**************************************************************************//** + * @brief Get the NED north velocity in mm/s + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[in] max_wait : Timeout value. + * @param[out] ned_north : pointer to store the NED north velocity. + * @return the following values are returned: + * - \ref SL_STATUS_OK for success. + * - \ref SL_STATUS_FAIL for failure. + * @note Can be used with UBX protocol only. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_ned_north(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + int32_t *ned_north); + +/**************************************************************************//** + * @brief Get the NED east velocity in mm/s + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[in] max_wait : Timeout value. + * @param[out] ned_east : pointer to store the NED east velocity. + * @return the following values are returned: + * - \ref SL_STATUS_OK for success. + * - \ref SL_STATUS_FAIL for failure. + * @note Can be used with UBX protocol only. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_ned_east(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + int32_t *ned_east); + +/**************************************************************************//** + * @brief Get the NED down velocity in mm/s + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[in] max_wait : Timeout value. + * @param[out] ned_down : pointer to store the NED down velocity. + * @return the following values are returned: + * - \ref SL_STATUS_OK for success. + * - \ref SL_STATUS_FAIL for failure. + * @note Can be used with UBX protocol only. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_ned_down(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + int32_t *ned_down); + +/**************************************************************************//** + * @brief Get the heading of motion (as opposed to heading of car) in degrees * 10^-5. + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[in] max_wait : Timeout value. + * @param[out] head_of_motion : pointer to store the heading of motion. + * @return the following values are returned: + * - \ref SL_STATUS_OK for success. + * - \ref SL_STATUS_FAIL for failure. + * @note Can be used with UBX protocol only. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_heading_of_motion( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + int32_t *head_of_motion); + +/**************************************************************************//** + * @brief Get the ground speed in mm/s. + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[in] max_wait : Timeout value. + * @param[out] ground_speed : pointer to store the ground speed in mm/s + * @return the following values are returned: + * - \ref SL_STATUS_OK for success. + * - \ref SL_STATUS_FAIL for failure. + * @note 1. Can be used with UBX and NMEA protocol. + * 2. In NMEA protocol the unit for speed is in knots. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_ground_speed( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + int32_t *ground_speed); + +/**************************************************************************//** + * @brief Get the heading accuracy estimate (both motion and vehicle) in degree. + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[in] max_wait : Timeout value. + * @param[out] heading_accuracy : pointer to store the heading accuracy estimate (both motion and vehicle) in degree + * @return the following values are returned: + * - \ref SL_STATUS_OK for success. + * - \ref SL_STATUS_FAIL for failure. + * @note Can be used with UBX protocol only. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_heading_accuracy( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + int32_t *heading_accuracy); + +/**************************************************************************//** + * @brief to check the confirm time is available or not. + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[in] max_wait : Timeout value. + * @param[out] confirm_time : pointer to store the confirm time check data. + * @return the following values are returned: + * - \ref SL_STATUS_OK for success. + * - \ref SL_STATUS_FAIL for failure. + * @note Can be used with UBX protocol only. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_confirm_time( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + bool *confirm_time); + +/**************************************************************************//** + * @brief to check the confirm date is available or not. + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[in] max_wait : Timeout value. + * @param[out] confirm_date : pointer to store the confirm date check data. + * @return the following values are returned: + * - \ref SL_STATUS_OK for success. + * - \ref SL_STATUS_FAIL for failure. + * @note Can be used with UBX protocol only. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_confirm_date( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + bool *confirm_date); + +/**************************************************************************//** + * @brief get the speed accuracy estimate of the space vehicle + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[in] max_wait : Timeout value. + * @param[out] speed_accuracy : pointer pointer to store the speed accuracy estimate. + * @return the following values are returned: + * - \ref SL_STATUS_OK for success. + * - \ref SL_STATUS_FAIL for failure. + * @note Can be used with UBX protocol only. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_speed_accuracy( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + int32_t *speed_accuracy); + +/**************************************************************************//** + * @brief Get the UBX-NAV-PVT type data from UBX packet + * @param[in] gnss_cfg_data : pointer to the structure containing GNSS configuration data. + * @param[in] max_wait : Timeout value. + * @return following values + * - \ref SL_STATUS_OK if data is available. + * - \ref SL_STATUS_FAIL if data is not available. + * @note 1.To access the any data use: gnss_cfg_data.packetUBXNAVPVT.data.data_to_access + * 2. Scaling factor of 10^-7 should be applied while reading the latitude and longitude data. + * 3. Can be used with UBX protocol only. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_nav_pvt(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait); + +/**************************************************************************//** + * @brief Get the UBX-NAV-STATUS type data from UBX packet + * @param[in] gnss_cfg_data : pointer to the structure containing GNSS configuration data. + * @param[in] max_wait : Timeout value. + * @return following values + * - \ref SL_STATUS_OK if data is available. + * - \ref SL_STATUS_FAIL if data is not available. + * @note 1. To access the any data use: gnss_cfg_data.packetUBXNAVSTATUS.data.data_to_access + * 2. Can be used with UBX protocol only. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_navstatus(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait); + +/**************************************************************************//** + * @brief Get the UBX-NAV-SAT type data from UBX packet + * @param[in] gnss_cfg_data : pointer to the structure containing GNSS configuration data. + * @param[in] max_wait : Timeout value. + * @return following values + * - \ref SL_STATUS_OK if data is available. + * - \ref SL_STATUS_FAIL if data is not available. + * @note 1. To access the any data use: gnss_cfg_data.packetUBXNAVSAT.data.block/header.data_to_access + * 2. Can be used with UBX protocol only. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_navsat(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait); + +/**************************************************************************//** + * @brief Get the UBX-NAV-SIG type data from UBX packet + * @param[in] gnss_cfg_data : pointer to the structure containing GNSS configuration data. + * @param[in] max_wait : Timeout value. + * @return following values + * - \ref SL_STATUS_OK if data is available. + * - \ref SL_STATUS_FAIL if data is not available. + * @note 1. To access the any data use: + * gnss_cfg_data.packetUBXNAVSIG.data.block/header.data_to_access + * 2. Can be used with UBX protocol only. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_navsig(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait); + +/**************************************************************************//** + * @brief Get the UBX-NAV-EOE type data from UBX packet + * @param[in] gnss_cfg_data : pointer to the structure containing GNSS configuration data. + * @param[in] max_wait : Timeout value. + * @return following values + * - \ref SL_STATUS_OK if data is available. + * - \ref SL_STATUS_FAIL if data is not available. + * @note 1. To access the any data use: + * gnss_cfg_data.packetUBXNAVEOE.data.data_to_access + * 2. Can be used with UBX protocol only. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_navepoch(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait); + +/**************************************************************************//** + * @brief Get the UBX-NAV-DOP type data from UBX packet + * @param[in] gnss_cfg_data : pointer to the structure containing GNSS configuration data. + * @param[in] max_wait : Timeout value. + * @return following values + * - \ref SL_STATUS_OK if data is available. + * - \ref SL_STATUS_FAIL if data is not available. + * @note 1.Multiply with scaling factor of 0.01 while getting all the data from this function. + * 2.To access the any data use: + * gnss_cfg_data.packetUBXNAVDOP.data.data_to_access + * 3.Can be used with UBX protocol only. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_navdop(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait); + +/**************************************************************************//** + * @brief Get the UBX-NAV-POSLLH type data from UBX packet + * @param[in] gnss_cfg_data : pointer to the structure containing GNSS configuration data. + * @param[in] max_wait : Timeout value. + * @return following values + * - \ref SL_STATUS_OK if data is available. + * - \ref SL_STATUS_FAIL if data is not available. + * @note 1. To access the any data use: + * gnss_cfg_data.packetUBXNAVPOSLLH.data.data_to_access + * 2. Scaling factor of 10^-7 should be applied while measuring + * latitude and longitude in degree decimal format. + * 3. Can be used with UBX protocol only. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_navposllh(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait); + +/**************************************************************************//** + * @brief Get the UBX-NAV-TIMELS type data from UBX packet + * @param[in] gnss_cfg_data : pointer to the structure containing GNSS configuration data. + * @param[in] max_wait : Timeout value. + * @return following values + * - \ref SL_STATUS_OK if data is available. + * - \ref SL_STATUS_FAIL if data is not available. + * @note 1. To access the any data use: + * gnss_cfg_data.packetUBXNAVTIMELS.data.data_to_access + * 2. Can be used with UBX protocol only. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_navtimels(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait); + +/**************************************************************************//** + * @brief Get the UBX-NAV-TIMEUTC type data from UBX packet + * @param[in] gnss_cfg_data : pointer to the structure containing GNSS configuration data. + * @param[in] max_wait : Timeout value. + * @return following values + * - \ref SL_STATUS_OK if data is available. + * - \ref SL_STATUS_FAIL if data is not available. + * @note 1. To access the any data use: + * gnss_cfg_data.packetUBXNAVTIMEUTC.data.data_to_access + * 2. Can be used with UBX protocol only. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_navtimeutc(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait); + +/**************************************************************************//** + * @brief Get the UBX-NAV-CLOCK type data from UBX packet + * @param[in] gnss_cfg_data : pointer to the structure containing GNSS configuration data. + * @param[in] max_wait : Timeout value. + * @return following values + * - \ref SL_STATUS_OK if data is available. + * - \ref SL_STATUS_FAIL if data is not available. + * @note 1. To access the any data use: + * gnss_cfg_data.packetUBXNAVCLOCK.data.data_to_access + * 2. Can be used with UBX protocol only. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_navclock(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait); + +/**************************************************************************//** + * @brief Get the UBX-NAV-VELNED type data from UBX packet + * @param[in] gnss_cfg_data : pointer to the structure containing GNSS configuration data. + * @param[in] max_wait : Timeout value. + * @return following values + * - \ref SL_STATUS_OK if data is available. + * - \ref SL_STATUS_FAIL if data is not available. + * @note 1. To access the any data use: + * gnss_cfg_data.packetUBXNAVVELNED.data.data_to_access + * 2. Scaling factor of 10^-5 should be applied while reading the data for + * heading accuracy and course accuracy. + * 3. Can be used with UBX protocol only. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_navvelned(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait); + +/**************************************************************************//** + * @brief Get the position dilution type data from UBX packet + * @param[in] gnss_cfg_data : pointer to the structure containing GNSS configuration data. + * @param[in] max_wait : Timeout value. + * @param[out] position_dillution : pointer pointer to store the position dilution data. + * @return following values + * - \ref SL_STATUS_OK if data is available. + * - \ref SL_STATUS_FAIL if data is not available. + * @note Can be used with UBX protocol only. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_positional_dillution( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + int16_t *position_dillution); + +/**************************************************************************//** + * @brief Check how much time has passed since the program started. + * @return time taken in milliseconds. + *****************************************************************************/ +uint32_t gnss_max_m10s_milli_sec(); + +#ifdef __cplusplus +} +#endif + +#endif // GNSS_MAX_M10S_H_ + +/******************************************************************************/ +/* EOF */ +/******************************************************************************/ diff --git a/driver/public/silabs/gnss_max_m10s/inc/gnss_max_m10s_micro_nmea.h b/driver/public/silabs/gnss_max_m10s/inc/gnss_max_m10s_micro_nmea.h new file mode 100644 index 00000000..cf99dfa3 --- /dev/null +++ b/driver/public/silabs/gnss_max_m10s/inc/gnss_max_m10s_micro_nmea.h @@ -0,0 +1,208 @@ +/***************************************************************************//** + * @file gnss_max_m10s_micro_nmea.h + * @brief MAX_M10S GNSS receiver driver micro-NMEA related external APIs. + ******************************************************************************* + * # License + * Copyright 2020 Silicon Laboratories Inc. www.silabs.com + ******************************************************************************* + * + * SPDX-License-Identifier: Zlib + * + * The licensor of this software is Silicon Laboratories Inc. + * + * This software is provided \'as-is\', without any express or implied + * warranty. In no event will the authors be held liable for any damages + * arising from the use of this software. + * + * Permission is granted to anyone to use this software for any purpose, + * including commercial applications, and to alter it and redistribute it + * freely, subject to the following restrictions: + * + * 1. The origin of this software must not be misrepresented; you must not + * claim that you wrote the original software. If you use this software + * in a product, an acknowledgment in the product documentation would be + * appreciated but is not required. + * 2. Altered source versions must be plainly marked as such, and must not be + * misrepresented as being the original software. + * 3. This notice may not be removed or altered from any source distribution. + * + ******************************************************************************* + * # Evaluation Quality + * This code has been minimally tested to ensure that it builds and is suitable + * as a demonstration for evaluation purposes only. This code will be maintained + * at the sole discretion of Silicon Labs. + ******************************************************************************/ + +#ifndef GNSS_MAX_M10S_MICRO_NMEA_H_ +#define GNSS_MAX_M10S_MICRO_NMEA_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +/// Includes +#include +#include "gnss_max_m10s_nmea_struct.h" +#include "gnss_max_m10s_nmea.h" + +/******************************************************************************* + *************************** Defines / Macros ******************************** + ******************************************************************************/ + +/******************************************************************************* + ************************* ENUMS and Structures ***************************** + ******************************************************************************/ + +// ----------------------------------------------------------------------------- +// Prototypes + +/**************************************************************************//** + * @brief initializes buffer allocated to micro nmea library. + * @param[in] gnss_cfg_data : pointer to the GNSS cfg data structure. + *****************************************************************************/ +void gnss_max_m10s_init_micro_nmea(sl_max_m10s_cfg_data_t *gnss_cfg_data); + +/**************************************************************************//** + * @brief Clear all information related to NMEA data. + * @param[in] nmea_data : pointer to the NMEA data structure. + *****************************************************************************/ +void gnss_max_m10s_clear_nmea_data(sl_max_m10s_nmea_data_t *nmea_data); + +/**************************************************************************//** + * @brief Get the horizontal dilution of precision. + * @param[in] nmea_data : pointer to the NMEA data structure. + * @return horizontal dilution of precision value. + *****************************************************************************/ +uint8_t gnss_max_m10s_nmea_get_hdop(sl_max_m10s_nmea_data_t *nmea_data); + +/**************************************************************************//** + * @brief check if latest fix is valid. + * @param[in] nmea_data : pointer to the NMEA data structure. + * @return true if valid. + * false if not valid. + *****************************************************************************/ +bool gnss_max_m10s_nmea_is_valid(sl_max_m10s_nmea_data_t *nmea_data); + +/**************************************************************************//** + * @brief Get the navigation system in use. + * @param[in] nmea_data : pointer to the NMEA data structure. + * @return navigation system in use. + *****************************************************************************/ +char gnss_max_m10s_nmea_get_nav_system(sl_max_m10s_nmea_data_t *nmea_data); + +/**************************************************************************//** + * @brief Get the number of satellites from NMEA sentence. + * @param[in] nmea_data : pointer to the NMEA data structure. + * @return number of satellites. + *****************************************************************************/ +uint8_t gnss_max_m10s_nmea_get_num_satellites( + sl_max_m10s_nmea_data_t *nmea_data); + +/**************************************************************************//** + * @brief Get the latitude from NMEA sentence. + * @param[in] nmea_data : pointer to the NMEA data structure. + * @return current latitude in millionth of degree. + *****************************************************************************/ +int32_t gnss_max_m10s_nmea_get_latitude(sl_max_m10s_nmea_data_t *nmea_data); + +/**************************************************************************//** + * @brief Get the longitude from NMEA sentence. + * @param[in] nmea_data : pointer to the NMEA data structure. + * @return current longitude in millionth of degree. + *****************************************************************************/ +int32_t gnss_max_m10s_nmea_get_longitude(sl_max_m10s_nmea_data_t *nmea_data); + +/**************************************************************************//** + * @brief Get the altitude from mean sea level from NMEA sentence. + * @param[in] nmea_data : pointer to the NMEA data structure. + * @param[out] alt : pointer to value of altitude in mm. + * @return true altitude is valid + * false altitude not valid + *****************************************************************************/ +bool gnss_max_m10s_nmea_get_altitude_msl(int32_t *alt, + sl_max_m10s_nmea_data_t *nmea_data); + +/**************************************************************************//** + * @brief Get the height above WGS84 Geoid in mm. + * @param[in] nmea_data : pointer to the NMEA data structure. + * @param[out] alt : pointer to value of altitude in mm. + * @return true altitude is valid + * false altitude not valid + *****************************************************************************/ +bool gnss_max_m10s_nmea_get_geoid_height(int32_t *alt, + sl_max_m10s_nmea_data_t *nmea_data); + +/**************************************************************************//** + * @brief Get the current year. + * @param[in] nmea_data : pointer to the NMEA data structure. + * @return current year in UTC format. + *****************************************************************************/ +uint16_t gnss_max_m10s_nmea_get_year(sl_max_m10s_nmea_data_t *nmea_data); + +/**************************************************************************//** + * @brief Get the current month of year. + * @param[in] nmea_data : pointer to the NMEA data structure. + * @return current month of year in UTC format. + *****************************************************************************/ +uint8_t gnss_max_m10s_nmea_get_month(sl_max_m10s_nmea_data_t *nmea_data); + +/**************************************************************************//** + * @brief Get the current day. + * @param[in] nmea_data : pointer to the NMEA data structure. + * @return current day in UTC format. + *****************************************************************************/ +uint8_t gnss_max_m10s_nmea_get_day(sl_max_m10s_nmea_data_t *nmea_data); + +/**************************************************************************//** + * @brief Get the current hour. + * @param[in] nmea_data : pointer to the NMEA data structure. + * @return current hour in UTC format. + *****************************************************************************/ +uint8_t gnss_max_m10s_nmea_get_hour(sl_max_m10s_nmea_data_t *nmea_data); + +/**************************************************************************//** + * @brief Get the current minute. + * @param[in] nmea_data : pointer to the NMEA data structure. + * @return current minute in UTC format. + *****************************************************************************/ +uint8_t gnss_max_m10s_nmea_get_minute(sl_max_m10s_nmea_data_t *nmea_data); + +/**************************************************************************//** + * @brief Get the current second. + * @param[in] nmea_data : pointer to the NMEA data structure. + * @return current second in UTC format. + *****************************************************************************/ +uint8_t gnss_max_m10s_nmea_get_second(sl_max_m10s_nmea_data_t *nmea_data); + +/**************************************************************************//** + * @brief Get the speed over ground. + * @param[in] nmea_data : pointer to the NMEA data structure. + * @return speed over ground in knots. + *****************************************************************************/ +int32_t gnss_max_m10s_nmea_get_speed(sl_max_m10s_nmea_data_t *nmea_data); + +/**************************************************************************//** + * @brief Get the course over ground. + * @param[in] nmea_data : pointer to the NMEA data structure. + * @return course over ground in degrees. + *****************************************************************************/ +int32_t gnss_max_m10s_nmea_get_course(sl_max_m10s_nmea_data_t *nmea_data); + +/**************************************************************************//** + * @brief To process a character. + * @param[in] nmea_data : pointer to the NMEA data structure. + * @param[in] c : Character to process + * @return true A complete non-empty sentence has been processed + * false End of sentence not detected + *****************************************************************************/ +bool gnss_max_m10s_process_nmea(char c, sl_max_m10s_nmea_data_t *nmea_data); + +#ifdef __cplusplus +} +#endif + +#endif // GNSS_MAX_M10S_MICRO_NMEA_H_ + +/******************************************************************************/ +/* EOF */ +/******************************************************************************/ diff --git a/driver/public/silabs/gnss_max_m10s/inc/gnss_max_m10s_nmea.h b/driver/public/silabs/gnss_max_m10s/inc/gnss_max_m10s_nmea.h new file mode 100644 index 00000000..1a5f0e43 --- /dev/null +++ b/driver/public/silabs/gnss_max_m10s/inc/gnss_max_m10s_nmea.h @@ -0,0 +1,382 @@ +/***************************************************************************//** + * @file gnss_max_m10s_nmea.h + * @brief MAX_M10S GNSS receiver driver external APIs for NMEA sentence data + ******************************************************************************* + * # License + * Copyright 2020 Silicon Laboratories Inc. www.silabs.com + ******************************************************************************* + * + * SPDX-License-Identifier: Zlib + * + * The licensor of this software is Silicon Laboratories Inc. + * + * This software is provided \'as-is\', without any express or implied + * warranty. In no event will the authors be held liable for any damages + * arising from the use of this software. + * + * Permission is granted to anyone to use this software for any purpose, + * including commercial applications, and to alter it and redistribute it + * freely, subject to the following restrictions: + * + * 1. The origin of this software must not be misrepresented; you must not + * claim that you wrote the original software. If you use this software + * in a product, an acknowledgment in the product documentation would be + * appreciated but is not required. + * 2. Altered source versions must be plainly marked as such, and must not be + * misrepresented as being the original software. + * 3. This notice may not be removed or altered from any source distribution. + * + ******************************************************************************* + * # Evaluation Quality + * This code has been minimally tested to ensure that it builds and is suitable + * as a demonstration for evaluation purposes only. This code will be maintained + * at the sole discretion of Silicon Labs. + ******************************************************************************/ + +#ifndef GNSS_MAX_M10S_NMEA_H_ +#define GNSS_MAX_M10S_NMEA_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +#include "gnss_max_m10s_driver.h" +#include "gnss_max_m10s_micro_nmea.h" +#include "gnss_max_m10s_nmea_struct.h" + +/******************************************************************************/ + +/******************************************************************************* + *************************** Defines / Macros ******************************** + ******************************************************************************/ + +/******************************************************************************* + ******************************** ENUMS ************************************ + ******************************************************************************/ + +// ----------------------------------------------------------------------------- +// Prototypes + +/**************************************************************************//** + * @brief To initialize the NMEA buffer and NMEA data structure. + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @return the following values are returned: + * true for success. + * false for failure. + *****************************************************************************/ +sl_status_t gnss_max_m10s_nmea_init(sl_max_m10s_cfg_data_t *gnss_cfg_data); + +/**************************************************************************//** + * @brief To check if the header of the NMEA sentence is valid. + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @return the following values are returned: + * true for success. + * false for failure. + *****************************************************************************/ +bool gnss_max_m10s_is_nmea_header_valid(sl_max_m10s_cfg_data_t *gnss_cfg_data); + +/**************************************************************************//** + * @brief To check if we should pass this NMEA message + * to process from micro nmea library. + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @return true for success and fail for failure. + *****************************************************************************/ +bool gnss_max_m10s_process_current_nmea(sl_max_m10s_cfg_data_t *gnss_cfg_data); + +/**************************************************************************//** + * @brief Get a pointer to the automatic NMEA flags. + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @return pointer to the automatic NMEA flags. + *****************************************************************************/ +sl_max_m10s_nmea_automatic_flags_t * gnss_max_m10s_get_nmea_flags_ptr( + sl_max_m10s_cfg_data_t *gnss_cfg_data); + +/**************************************************************************//** + * @brief Get a pointer to the complete copy NMEA data. + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @return pointer to the complete copy of the NMEA data structure. + *****************************************************************************/ +uint8_t * gnss_max_m10s_get_complete_copy_nmea( + sl_max_m10s_cfg_data_t *gnss_cfg_data); + +/**************************************************************************//** + * @brief Get a pointer to the complete copy length. + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @return pointer to the complete copy length of the NMEA data structure. + ****************************************************************************/ +uint8_t * gnss_max_m10s_get_nmea_complete_length_ptr( + sl_max_m10s_cfg_data_t *gnss_cfg_data); + +/**************************************************************************//** + * @brief Get the maximum length of given NMEA message. + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @return the maximum length of the NMEA message. + ****************************************************************************/ +uint8_t gnss_max_m10s_get_nmea_max_length( + sl_max_m10s_cfg_data_t *gnss_cfg_data); + +/**************************************************************************//** + * @brief Get a pointer to the working copy NMEA data. + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @return pointer to working copy of NMEA data. + ****************************************************************************/ +uint8_t * gnss_max_m10s_get_nmea_working_ptr( + sl_max_m10s_cfg_data_t *gnss_cfg_data); + +/**************************************************************************//** + * @brief Get a pointer to the working copy length of NMEA data. + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @return pointer to the working copy length of NMEA data. + ****************************************************************************/ +uint8_t * gnss_max_m10s_get_nmea_working_length_ptr( + sl_max_m10s_cfg_data_t *gnss_cfg_data); + +/**************************************************************************//** + * @brief Check if the NMEA message is "auto" and has dedicated RAM allocated for it. + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @return the following values are returned: + * - \ref SL_STATUS_OK for success. + * - \ref SL_STATUS_FAIL for failure. + *****************************************************************************/ +sl_status_t gnss_max_m10s_is_nmea_auto(sl_max_m10s_cfg_data_t *gnss_cfg_data); + +/**************************************************************************//** + * @brief Get the latitude value from NMEA sentence. + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[out] latitude : value of latitude in degree minutes format. + * @param[in] max_time : max timeout value. + * @return the following values are returned: + * - \ref SL_STATUS_OK for success. + * - \ref SL_STATUS_FAIL for failure. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_latitude_nmea( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + int32_t *latitude, + uint16_t max_time); + +/**************************************************************************//** + * @brief Get the longitude value from NMEA sentence. + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[out] longitude : value of longitude in degree minutes format. + * @param[in] max_time : max timeout value. + * @return the following values are returned: + * - \ref SL_STATUS_OK for success. + * - \ref SL_STATUS_FAIL for failure. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_longitude_nmea( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + int32_t *longitude, + uint16_t max_time); + +/**************************************************************************//** + * @brief Get the altitude from mean sea level value from NMEA sentence. + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[out] altitude_msl : value of altitude from mean sea level in mm. + * @param[in] max_time : max timeout value. + * @return the following values are returned: + * - \ref SL_STATUS_OK for success. + * - \ref SL_STATUS_FAIL for failure. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_altitude_msl_nmea( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + int32_t *altitude_msl, + uint16_t max_time); + +/**************************************************************************//** + * @brief Get the geoid separation from NMEA sentence. + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[out] geoid : geoid separation in mm. + * @param[in] max_time : max timeout value. + * @return the following values are returned: + * - \ref SL_STATUS_OK for success. + * - \ref SL_STATUS_FAIL for failure. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_geoid_nmea(sl_max_m10s_cfg_data_t *gnss_cfg_data, + int32_t *geoid, + uint16_t max_time); + +/**************************************************************************//** + * @brief Get the quality of fix from NMEA sentence. + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[out] quality : value of quality of fix. + * @param[in] max_time : max timeout value. + * @return the following values are returned: + * - \ref SL_STATUS_OK for success. + * - \ref SL_STATUS_FAIL for failure. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_quality_nmea( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint8_t *quality, + uint16_t max_time); + +/**************************************************************************//** + * @brief Get the number of satellites from NMEA sentence. + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[out] num_sat : number of satellites. + * @param[in] max_time : max timeout value. + * @return the following values are returned: + * - \ref SL_STATUS_OK for success. + * - \ref SL_STATUS_FAIL for failure. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_satellite_nmea( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint8_t *num_sat, + uint16_t max_time); + +/**************************************************************************//** + * @brief Get the current day from NMEA sentence. + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[out] day : current day. + * @param[in] max_time : max timeout value. + * @return the following values are returned: + * - \ref SL_STATUS_OK for success. + * - \ref SL_STATUS_FAIL for failure. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_day_nmea(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint8_t *day, + uint16_t max_time); + +/**************************************************************************//** + * @brief Get the current month value from NMEA sentence. + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[out] month : current month. + * @param[in] max_time : max timeout value. + * @return the following values are returned: + * - \ref SL_STATUS_OK for success. + * - \ref SL_STATUS_FAIL for failure. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_month_nmea(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint8_t *month, + uint16_t max_time); + +/**************************************************************************//** + * @brief Get the current year from NMEA sentence. + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[out] year : current year. + * @param[in] max_time : max timeout value. + * @return the following values are returned: + * - \ref SL_STATUS_OK for success. + * - \ref SL_STATUS_FAIL for failure. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_year_nmea(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t *year, + uint16_t max_time); + +/**************************************************************************//** + * @brief Get the hour in UTC from NMEA sentence. + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[out] hour : current hour in UTC format. + * @param[in] max_time : max timeout value. + * @return the following values are returned: + * - \ref SL_STATUS_OK for success. + * - \ref SL_STATUS_FAIL for failure. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_hour_nmea(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint8_t *hour, + uint16_t max_time); + +/**************************************************************************//** + * @brief Get the current minute of hour from NMEA sentence. + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[out] min : minute of hour in UTC format. + * @param[in] max_time : max timeout value. + * @return the following values are returned: + * - \ref SL_STATUS_OK for success. + * - \ref SL_STATUS_FAIL for failure. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_min_nmea(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint8_t *min, + uint16_t max_time); + +/**************************************************************************//** + * @brief Get the current second in UTC format. + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[out] second : value of current second in UTC format. + * @param[in] max_time : max timeout value. + * @return the following values are returned: + * - \ref SL_STATUS_OK for success. + * - \ref SL_STATUS_FAIL for failure. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_second_nmea(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint8_t *second, + uint16_t max_time); + +/**************************************************************************//** + * @brief Get the horizontal dilution of precision value from NMEA sentence. + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[out] hdop : value of horizontal dilution of precision. + * @param[in] max_time : max timeout value. + * @return the following values are returned: + * - \ref SL_STATUS_OK for success. + * - \ref SL_STATUS_FAIL for failure. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_horizontal_dilution_nmea( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint8_t *hdop, + uint16_t max_time); + +/**************************************************************************//** + * @brief Get the speed over ground value from NMEA sentence. + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[out] speed : value of speed over ground in knots. + * @param[in] max_time : max timeout value. + * @return the following values are returned: + * - \ref SL_STATUS_OK for success. + * - \ref SL_STATUS_FAIL for failure. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_speed_nmea(sl_max_m10s_cfg_data_t *gnss_cfg_data, + int32_t *speed, + uint16_t max_time); + +/**************************************************************************//** + * @brief Get the course over ground value from NMEA sentence. + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[out] course : value of course over ground in degree. + * @param[in] max_time : max timeout value. + * @return the following values are returned: + * - \ref SL_STATUS_OK for success. + * - \ref SL_STATUS_FAIL for failure. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_ground_course_nmea( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + int32_t *course, + uint16_t max_time); + +/**************************************************************************//** + * @brief Get the horizontal dilution of precision value from NMEA sentence. + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[out] hdop : value of horizontal dilution of precision. + * @param[in] max_time : max timeout value. + * @return the following values are returned: + * - \ref SL_STATUS_OK for success. + * - \ref SL_STATUS_FAIL for failure. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_horizontal_dilution_nmea( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint8_t *hdop, + uint16_t max_time); + +/**************************************************************************//** + * @brief Get the navigation system from NMEA sentence. + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[out] nav_system : value of horizontal dilution of precision. + * @details `N` = GNSS, `P` = GPS, `L` = GLONASS, `A` = Galileo, `\0` = none + * @param[in] max_time : max timeout value. + * @return the following values are returned: + * - \ref SL_STATUS_OK for success. + * - \ref SL_STATUS_FAIL for failure. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_nav_system_nmea( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + char *nav_system, + uint16_t max_time); + +#ifdef __cplusplus +} +#endif + +#endif // GNSS_MAX_M10S_NMEA_H_ + +/******************************************************************************/ +/* EOF */ +/******************************************************************************/ diff --git a/driver/public/silabs/gnss_max_m10s/inc/gnss_max_m10s_nmea_struct.h b/driver/public/silabs/gnss_max_m10s/inc/gnss_max_m10s_nmea_struct.h new file mode 100644 index 00000000..9133bda9 --- /dev/null +++ b/driver/public/silabs/gnss_max_m10s/inc/gnss_max_m10s_nmea_struct.h @@ -0,0 +1,169 @@ +/***************************************************************************//** + * @file gnss_max_m10s_nmea_struct.h + * @brief MAX_M10S GNSS receiver NMEA sentence structures + ******************************************************************************* + * # License + * Copyright 2020 Silicon Laboratories Inc. www.silabs.com + ******************************************************************************* + * + * SPDX-License-Identifier: Zlib + * + * The licensor of this software is Silicon Laboratories Inc. + * + * This software is provided \'as-is\', without any express or implied + * warranty. In no event will the authors be held liable for any damages + * arising from the use of this software. + * + * Permission is granted to anyone to use this software for any purpose, + * including commercial applications, and to alter it and redistribute it + * freely, subject to the following restrictions: + * + * 1. The origin of this software must not be misrepresented; you must not + * claim that you wrote the original software. If you use this software + * in a product, an acknowledgment in the product documentation would be + * appreciated but is not required. + * 2. Altered source versions must be plainly marked as such, and must not be + * misrepresented as being the original software. + * 3. This notice may not be removed or altered from any source distribution. + * + ******************************************************************************* + * # Evaluation Quality + * This code has been minimally tested to ensure that it builds and is suitable + * as a demonstration for evaluation purposes only. This code will be maintained + * at the sole discretion of Silicon Labs. + ******************************************************************************/ + +#ifndef GNSS_MAX_M10S_NMEA_STRUCT_H_ +#define GNSS_MAX_M10S_NMEA_STRUCT_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +#include +#include + +/******************************************************************************/ + +/******************************************************************************* + *************************** Defines / Macros ******************************** + ******************************************************************************/ + +#define SL_MAX_M10S_NMEA_GGA_MAX_LENGTH 100 ///< Maximum length for GGA type NMEA sentence +#define SL_MAX_M10S_NMEA_RMC_MAX_LENGTH 100 ///< Maximum length for RMC type NMEA sentence +#define SL_MAX_M10S_NMEA_BYTE_COUNT SL_MAX_M10S_NMEA_GGA_MAX_LENGTH ///< Maximum byte counts for any NMEA sentence type + +/******************************************************************************* + ******************************** ENUMS ************************************ + ******************************************************************************/ + +/// @brief type of NMEA sentence to be processed +typedef enum +{ + SL_MAX_M10S_FILTER_NMEA_ALL = 0x01, ///< To allow all NMEA sentence to be processed. + SL_MAX_M10S_FILTER_NMEA_GGA = 0x02, ///< To allow only GGA type NMEA sentence to be processed. + SL_MAX_M10S_FILTER_NMEA_RMC = 0x04, ///< To allow only RMC type NMEA sentence to be processed. +} sl_max_m10s_filter_nmea_e; + +/// @brief Additional flags and pointers that need to be stored with each NMEA sentence type +typedef struct sl_max_m10s_nmea_automatic_flags +{ + union + { + uint8_t all; + struct + { + uint8_t complete_copy_valid : 1; ///< Check if the copy of the data struct valid/fresh + uint8_t complete_copy_read : 1; ///< Check if the complete copy been read + uint8_t callback_copy_valid : 1; ///< Check if the copy of the data struct used by the callback valid/fresh + } bits; + } flags; ///< Automatic flags +} sl_max_m10s_nmea_automatic_flags_t; + +/// @brief to store length and buffer for GGA type NMEA sentence +typedef struct +{ + uint8_t length; ///< The number of bytes in nmea + uint8_t nmea[SL_MAX_M10S_NMEA_GGA_MAX_LENGTH]; ///< Buffer to store the GGA type NMEA sentence +} sl_max_m10s_nmea_gga_data_t; + +/// @brief to store the GGA type NMEA sentence +typedef struct +{ + sl_max_m10s_nmea_automatic_flags_t automatic_flags; ///< Automatic flags + sl_max_m10s_nmea_gga_data_t working_copy; ///< Incoming data is added to the working copy + sl_max_m10s_nmea_gga_data_t complete_copy; ///< The working copy is copied into the complete copy when all data has been received and the checksum is valid + void (*callback_pointer_ptr)(sl_max_m10s_nmea_gga_data_t *); ///< Callback pointer + sl_max_m10s_nmea_gga_data_t *callback_copy; ///< The callback gets its own preserved copy of the complete copy +} sl_max_m10s_nmea_gga_t; + +/// @brief to store the length and buffer for RMC type NMEA sentence +typedef struct +{ + uint8_t length; ///< The number of bytes in nmea + uint8_t nmea[SL_MAX_M10S_NMEA_RMC_MAX_LENGTH]; ///< Buffer to store RMC type NMEA sentence +} sl_max_m10s_nmea_rmc_data_t; + +/// @brief struct to store RMC type NMEA sentence +typedef struct +{ + sl_max_m10s_nmea_automatic_flags_t automatic_flags; ///< Automatic flags + sl_max_m10s_nmea_rmc_data_t working_copy; ///< Incoming data is added to the working copy + sl_max_m10s_nmea_rmc_data_t complete_copy; ///< The working copy is copied into the complete copy when all data has been received and the checksum is valid + void (*callback_pointer_ptr)(sl_max_m10s_nmea_rmc_data_t *); ///< pointer to callback + sl_max_m10s_nmea_rmc_data_t *callbackCopy; ///< The callback gets its own preserved copy of the complete copy +} sl_max_m10s_nmea_rmc_t; + +/// @brief struct to allow selective logging / processing of NMEA messages +typedef struct +{ + union + { + uint8_t all; + struct + { + uint8_t all : 1; + uint8_t UBX_NMEA_GGA : 1; + uint8_t UBX_NMEA_RMC : 1; + } bits; + }; +} sl_max_m10s_nmea_filtering_t; + +/// @brief to store the data used in micro-NMEA library and data parsed from NMEA sentence +typedef struct sl_max_m10s_nmea_data +{ + uint8_t buffer_len; ///< NMEA sentence buffer length + uint8_t month; ///< Current month in UTC format + uint8_t day; ///< Current day in UTC format + uint8_t hour; ///< Current hour in UTC format + uint8_t minute; ///< Current minute in UTC format + uint8_t second; ///< Current second in UTC format + uint8_t quality; ///< Quality indicator for position fix + uint8_t num_sat; ///< number of satellites tracked + uint8_t hdop; ///< Horizontal dilution of precision. + bool altitude_valid; ///< Flag to check the validity of altitude + bool geoid_height_valid;///< Flag to check the validity of geoid height + bool is_valid; ///< Flag to check the valid data + char talker_id; ///< Talker ID of NMEA sentence + char nav_system; ///< navigation system from the NMEA sentence + uint16_t year; ///< Current year in UTC format + uint32_t geoid_height; ///< the height above WGS84 Geoid in milli-metres + int32_t latitude; ///< Latitude of current position in degrees and minutes + int32_t longitude; ///< Longitude of current position in degrees and minutes + int32_t altitude; ///< Altitude from mean sea level in milli-metres + int32_t speed; ///< Speed over ground in knots + int32_t course; ///< Course over ground in degrees + char *buffer; ///< Pointer to the start of the buffer + char *ptr; ///< Pointer to track the current position in NMEA sentence buffer. + char message_id[6]; ///< message ID of the NMEA sentence +} sl_max_m10s_nmea_data_t; + +#ifdef __cplusplus +} +#endif + +#endif // GNSS_MAX_M10S_NMEA_STRUCT_H_ + +/******************************************************************************/ +/* EOF */ +/******************************************************************************/ diff --git a/driver/public/silabs/gnss_max_m10s/inc/gnss_max_m10s_ubx.h b/driver/public/silabs/gnss_max_m10s/inc/gnss_max_m10s_ubx.h new file mode 100644 index 00000000..abb51f63 --- /dev/null +++ b/driver/public/silabs/gnss_max_m10s/inc/gnss_max_m10s_ubx.h @@ -0,0 +1,344 @@ +/***************************************************************************//** + * @file gnss_max_m10s_ubx.h + * @brief MAX_M10S GNSS receiver driver external APIs for UBX sentence data. + ******************************************************************************* + * # License + * Copyright 2020 Silicon Laboratories Inc. www.silabs.com + ******************************************************************************* + * + * SPDX-License-Identifier: Zlib + * + * The licensor of this software is Silicon Laboratories Inc. + * + * This software is provided \'as-is\', without any express or implied + * warranty. In no event will the authors be held liable for any damages + * arising from the use of this software. + * + * Permission is granted to anyone to use this software for any purpose, + * including commercial applications, and to alter it and redistribute it + * freely, subject to the following restrictions: + * + * 1. The origin of this software must not be misrepresented; you must not + * claim that you wrote the original software. If you use this software + * in a product, an acknowledgment in the product documentation would be + * appreciated but is not required. + * 2. Altered source versions must be plainly marked as such, and must not be + * misrepresented as being the original software. + * 3. This notice may not be removed or altered from any source distribution. + * + ******************************************************************************* + * # Evaluation Quality + * This code has been minimally tested to ensure that it builds and is suitable + * as a demonstration for evaluation purposes only. This code will be maintained + * at the sole discretion of Silicon Labs. + ******************************************************************************/ + +#ifndef GNSS_MAX_M10S_UBX_H_ +#define GNSS_MAX_M10S_UBX_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +#include "gnss_max_m10s_driver.h" + +/******************************************************************************/ + +/******************************************************************************* + *************************** Defines / Macros ******************************** + ******************************************************************************/ + +/******************************************************************************* + ******************************** ENUMS ************************************ + ******************************************************************************/ + +// ----------------------------------------------------------------------------- +// Prototypes + +/**************************************************************************//** + * @brief To process all the data from all UBX packets. + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[in] msg : pointer to the packet payload. + *****************************************************************************/ +void gnss_max_m10s_process_ubx_packet(sl_max_m10s_cfg_data_t *gnss_cfg_data, + sl_max_m10s_ubx_packet_t *msg); + +/**************************************************************************//** + * @brief To process all the data from the UBX_NAV_STATUS packet. + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[in] msg : pointer to the packet payload. + *****************************************************************************/ +void sl_max_m10s_ubx_navstatus_process(sl_max_m10s_cfg_data_t *gnss_cfg_data, + sl_max_m10s_ubx_packet_t *msg); + +/**************************************************************************//** + * @brief To process all the data from the UBX_NAV_DOP packet. + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[in] msg : pointer to the packet payload. + *****************************************************************************/ +void sl_max_m10s_ubx_navdop_process(sl_max_m10s_cfg_data_t *gnss_cfg_data, + sl_max_m10s_ubx_packet_t *msg); + +/**************************************************************************//** + * @brief To process all the data from the UBX_NAV_CLOCK packet. + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[in] msg : pointer to the packet payload. + *****************************************************************************/ +void sl_max_m10s_ubx_navclock_process(sl_max_m10s_cfg_data_t *gnss_cfg_data, + sl_max_m10s_ubx_packet_t *msg); + +/**************************************************************************//** + * @brief To process all the data from the UBX_NAV_EOE packet. + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[in] msg : pointer to the packet payload. + *****************************************************************************/ +void sl_max_m10s_ubx_navepoch_process(sl_max_m10s_cfg_data_t *gnss_cfg_data, + sl_max_m10s_ubx_packet_t *msg); + +/**************************************************************************//** + * @brief To process all the data from the UBX_NAV_SAT packet. + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[in] msg : pointer to the packet payload. + *****************************************************************************/ +void sl_max_m10s_ubx_navsat_process(sl_max_m10s_cfg_data_t *gnss_cfg_data, + sl_max_m10s_ubx_packet_t *msg); + +/**************************************************************************//** + * @brief To process all the data from the UBX_NAV_SIG packet. + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[in] msg : pointer to the packet payload. + *****************************************************************************/ +void sl_max_m10s_ubx_navsig_process(sl_max_m10s_cfg_data_t *gnss_cfg_data, + sl_max_m10s_ubx_packet_t *msg); + +/**************************************************************************//** + * @brief To process all the data from the UBX_NAV_TIMELS packet. + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[in] msg : pointer to the packet payload. + *****************************************************************************/ +void sl_max_m10s_ubx_navtimels_process(sl_max_m10s_cfg_data_t *gnss_cfg_data, + sl_max_m10s_ubx_packet_t *msg); + +/**************************************************************************//** + * @brief To process all the data from the UBX_NAV_TIMEUTC packet. + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[in] msg : pointer to the packet payload. + *****************************************************************************/ +void sl_max_m10s_ubx_navtimeutc_process(sl_max_m10s_cfg_data_t *gnss_cfg_data, + sl_max_m10s_ubx_packet_t *msg); + +/**************************************************************************//** + * @brief To process all the data from the UBX_NAV_POSLLH packet. + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[in] msg : pointer to the packet payload. + *****************************************************************************/ +void sl_max_m10s_ubx_navposllh_process(sl_max_m10s_cfg_data_t *gnss_cfg_data, + sl_max_m10s_ubx_packet_t *msg); + +/**************************************************************************//** + * @brief To process all the data from the UBX_NAV_VELNED packet. + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[in] msg : pointer to the packet payload. + *****************************************************************************/ +void sl_max_m10s_ubx_navvelned_process(sl_max_m10s_cfg_data_t *gnss_cfg_data, + sl_max_m10s_ubx_packet_t *msg); + +/**************************************************************************//** + * @brief To process all the data from the UBX_NAV_PVT packet. + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[in] msg : pointer to the packet payload. + *****************************************************************************/ +void sl_max_m10s_ubx_navpvt_process(sl_max_m10s_cfg_data_t *gnss_cfg_data, + sl_max_m10s_ubx_packet_t *msg); + +/**************************************************************************//** + * @brief Get the unique ID from UBX_SEC_UNIQID packet. + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[in] msg : pointer to the packet payload. + *****************************************************************************/ +void sl_max_m10s_get_unique_id(sl_max_m10s_cfg_data_t *gnss_cfg_data, + sl_max_m10s_ubx_packet_t *msg); + +/**************************************************************************//** + * @brief To get all the data from the UBX_NAV_PVT packet. + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[in] max_wait : Timeout value. + * @return the following values are returned: + * - \ref SL_STATUS_OK for success. + * - \ref SL_STATUS_FAIL for failure. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_navpvt_data(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait); + +/**************************************************************************//** + * @brief Given a spot, extract a byte from the payload + * @param[in] msg : pointer to the payload + * @param[in] spot_to_start : starting spot for the extraction. + * @return byte extracted from the payload. + *****************************************************************************/ +uint8_t gnss_max_m10s_extract_byte(sl_max_m10s_ubx_packet_t *msg, + uint16_t spot_to_start); + +/**************************************************************************//** + * @brief Given a character, file it away into the ubx packet structure and + * set valid to VALID or NOT_VALID once sentence is completely received + * and passes or fails CRC + * @param[in] gnss_cfg_data : pointer to the structure containing + * GNSS configuration data. + * @param[in] incoming : character to check + * @param[in] requested_class : class of the UBX packet. + * @param[in] requested_id : ID for the UBX packet. + *****************************************************************************/ +void gnss_max_m10s_process_ubx(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint8_t incoming, + uint8_t requested_class, + uint8_t requested_id); + +/**************************************************************************//** + * @brief To Initialize the UBX_NAV_PVT packet and to get all the data + * from the UBX_NAV_PVT packet. + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[in] max_wait : Timeout value. + * @return the following values are returned: + * - \ref SL_STATUS_OK for success. + * - \ref SL_STATUS_FAIL for failure. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_navpvt_ubx(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait); + +/**************************************************************************//** + * @brief To Initialize the UBX_NAV_EOE packet and to get all the data + * from the UBX_NAV_EOE packet. + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[in] max_wait : Timeout value. + * @return the following values are returned: + * - \ref SL_STATUS_OK for success. + * - \ref SL_STATUS_FAIL for failure. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_navepoch_ubx( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait); + +/**************************************************************************//** + * @brief To Initialize the UBX_NAV_SAT packet and to get all the data + * from the UBX_NAV_SAT packet. + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[in] max_wait : Timeout value. + * @return the following values are returned: + * - \ref SL_STATUS_OK for success. + * - \ref SL_STATUS_FAIL for failure. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_navsat_ubx(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait); + +/**************************************************************************//** + * @brief To Initialize the UBX_NAV_SIG packet and to get all the data + * from the UBX_NAV_SIG packet. + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[in] max_wait : Timeout value. + * @return the following values are returned: + * - \ref SL_STATUS_OK for success. + * - \ref SL_STATUS_FAIL for failure. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_navsig_ubx(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait); + +/**************************************************************************//** + * @brief To Initialize the UBX_NAV_STATUS packet and to get all the data + * from the UBX_NAV_STATUS packet. + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[in] max_wait : Timeout value. + * @return the following values are returned: + * - \ref SL_STATUS_OK for success. + * - \ref SL_STATUS_FAIL for failure. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_navstatus_ubx( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait); + +/**************************************************************************//** + * @brief To Initialize the UBX_NAV_TIMELS packet and to get all the data + * from the UBX_NAV_TIMELS packet. + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[in] max_wait : Timeout value. + * @return the following values are returned: + * - \ref SL_STATUS_OK for success. + * - \ref SL_STATUS_FAIL for failure. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_navtimels_ubx( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait); + +/**************************************************************************//** + * @brief To Initialize the UBX_NAV_TIMEUTC packet and to get all the data + * from the UBX_NAV_TIMEUTC packet. + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[in] max_wait : Timeout value. + * @return the following values are returned: + * - \ref SL_STATUS_OK for success. + * - \ref SL_STATUS_FAIL for failure. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_navtimeutc_ubx( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait); + +/**************************************************************************//** + * @brief To Initialize the UBX_NAV_DOP packet and to get all the data + * from the UBX_NAV_DOP packet. + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[in] max_wait : Timeout value. + * @return the following values are returned: + * - \ref SL_STATUS_OK for success. + * - \ref SL_STATUS_FAIL for failure. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_navdop_ubx(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait); + +/**************************************************************************//** + * @brief To Initialize the UBX_NAV_POSLLH packet and to get all the data + * from the UBX_NAV_POSLLH packet. + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[in] max_wait : Timeout value. + * @return the following values are returned: + * - \ref SL_STATUS_OK for success. + * - \ref SL_STATUS_FAIL for failure. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_navposllh_ubx( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait); + +/**************************************************************************//** + * @brief To Initialize the UBX_NAV_CLOCK packet and to get all the data + * from the UBX_NAV_CLOCK packet. + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[in] max_wait : Timeout value. + * @return the following values are returned: + * - \ref SL_STATUS_OK for success. + * - \ref SL_STATUS_FAIL for failure. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_navclock_ubx( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait); + +/**************************************************************************//** + * @brief To Initialize the UBX_NAV_VELNED packet and to get all the data + * from the UBX_NAV_VELNED packet. + * @param[in] gnss_cfg_data : pointer to the GNSS config data. + * @param[in] max_wait : Timeout value. + * @return the following values are returned: + * - \ref SL_STATUS_OK for success. + * - \ref SL_STATUS_FAIL for failure. + *****************************************************************************/ +sl_status_t gnss_max_m10s_get_navvelned_ubx( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait); + +#ifdef __cplusplus +} +#endif + +#endif // GNSS_MAX_M10S_UBX_H_ + +/******************************************************************************/ +/* EOF */ +/******************************************************************************/ diff --git a/driver/public/silabs/gnss_max_m10s/inc/gnss_max_m10s_ubx_struct.h b/driver/public/silabs/gnss_max_m10s/inc/gnss_max_m10s_ubx_struct.h new file mode 100644 index 00000000..5664ace0 --- /dev/null +++ b/driver/public/silabs/gnss_max_m10s/inc/gnss_max_m10s_ubx_struct.h @@ -0,0 +1,511 @@ +/***************************************************************************//** + * @file gnss_max_m10s_ubx_struct.h + * @brief MAX_M10S GNSS receiver UBX packet structures + ******************************************************************************* + * # License + * Copyright 2020 Silicon Laboratories Inc. www.silabs.com + ******************************************************************************* + * + * SPDX-License-Identifier: Zlib + * + * The licensor of this software is Silicon Laboratories Inc. + * + * This software is provided \'as-is\', without any express or implied + * warranty. In no event will the authors be held liable for any damages + * arising from the use of this software. + * + * Permission is granted to anyone to use this software for any purpose, + * including commercial applications, and to alter it and redistribute it + * freely, subject to the following restrictions: + * + * 1. The origin of this software must not be misrepresented; you must not + * claim that you wrote the original software. If you use this software + * in a product, an acknowledgment in the product documentation would be + * appreciated but is not required. + * 2. Altered source versions must be plainly marked as such, and must not be + * misrepresented as being the original software. + * 3. This notice may not be removed or altered from any source distribution. + * + ******************************************************************************* + * # Evaluation Quality + * This code has been minimally tested to ensure that it builds and is suitable + * as a demonstration for evaluation purposes only. This code will be maintained + * at the sole discretion of Silicon Labs. + ******************************************************************************/ + +#ifndef GNSS_MAX_M10S_UBX_STRUCT_H_ +#define GNSS_MAX_M10S_UBX_STRUCT_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +/******************************************************************************/ + +/******************************************************************************* + *************************** Defines / Macros ******************************** + ******************************************************************************/ + +/******************************************************************************* + ******************************** ENUMS ************************************ + ******************************************************************************/ + +/// @brief Flags to check the UBX packet update +typedef struct sl_max_m10s_ubx_automatic_flags +{ + union + { + uint8_t all; ///< Used to check all the data type of the UBX packet + struct + { + uint8_t automatic : 1; ///< Used to check if this message be delivered and parsed "automatically" (without polling) + uint8_t implicitUpdate : 1; ///< Used to check if the update triggered by accessing stale data (=true) or by a call to checkUblox (=false) + uint8_t addToFileBuffer : 1; ///< Used to check if the raw UBX data be added to the file buffer + uint8_t callbackCopyValid : 1; ///< Used to check if the copy of the data struct used by the callback valid/fresh + } bits; ///< bits to represent different data + } flags; ///< To store the flags to check the UBX packet update +}sl_max_m10s_ubx_automatic_flags_t; + +/// @brief structure to store the data for UBX-NAV-PVT +typedef struct sl_max_m10s_ubx_nav_pvt_data +{ + uint32_t iTOW; ///< GPS time of week of the navigation epoch: ms + uint8_t fixType; ///< GNSSfix Type + uint8_t numSV; ///< Number of satellites used in navigation Solution + int32_t lon; ///< Longitude: deg * 1e-7 + int32_t lat; ///< Latitude: deg * 1e-7 + int32_t height; ///< Height above ellipsoid: mm + int32_t hMSL; ///< Height above mean sea level: mm + uint8_t hour; ///< Hour of day, range 0..23 (UTC) + uint8_t min; ///< Minute of hour, range 0..59 (UTC) + uint8_t sec; ///< Seconds of minute, range 0..60 (UTC) + uint8_t nano; ///< nano seconds of time (UTC) + uint8_t tAcc; ///< time accuracy estimate (nano seconds) + uint16_t year; ///< Year (UTC) + uint8_t month; ///< Month, range 1..12 (UTC) + uint8_t day; ///< Day of month, range 1..31 (UTC) + uint32_t hAcc; ///< Horizontal accuracy estimate: mm + uint32_t vAcc; ///< Vertical accuracy estimate: mm + int32_t velN; ///< NED north velocity: mm/s + int32_t velE; ///< NED east velocity: mm/s + int32_t velD; ///< NED down velocity: mm/s + int32_t gSpeed; ///< Ground Speed (2-D): mm/s + int32_t headMot; ///< Heading of motion (2-D): deg * 1e-5 + uint32_t sAcc; ///< Speed accuracy estimate: mm/s + uint32_t headAcc; ///< Heading accuracy estimate (both motion and vehicle): deg * 1e-5 + uint16_t pDOP; ///< Position DOP * 0.01 + uint8_t reserved1[5]; ///< Reserved data + int32_t headVeh; ///< Heading of vehicle (2-D): deg * 1e-5 + int16_t magDec; ///< Magnetic declination: deg * 1e-2 + uint16_t magAcc; ///< Magnetic declination accuracy: deg * 1e-2 + union + { + uint8_t all; ///< To store different data represented in bits. + struct + { + uint8_t valid_date : 1; ///< 1 = valid UTC Date + uint8_t valid_time : 1; ///< 1 = valid UTC time of day + uint8_t fullyResolved : 1; ///< 1 = UTC time of day has been fully resolved (no seconds uncertainty). + uint8_t validMag : 1; ///< 1 = valid magnetic declination + } bits; ///< bits to represent different data + } valid; ///< Validity flags + + union + { + uint8_t all; ///< To store different data represented in bits. + struct + { + uint8_t reserved : 5; ///< Reserved bits + uint8_t confirmed_available : 1; ///< 1 = information about UTC Date and Time of Day validity confirmation is available + uint8_t confirmed_date : 1; ///< 1 = UTC Date validity could be confirmed + uint8_t confirmed_time : 1; ///< 1 = UTC Time of Day could be confirmed + }confirm_data; ///< Confirmation data + }confirm_flags; ///< Confirmation flags + union + { + uint8_t all; ///< To store different data represented in bits. + struct + { + uint8_t invalidLlh : 1; ///< 1 = Invalid lon, lat, height and hMSL + uint8_t lastCorrectionAge : 4; ///< Age of the most recently received differential correction + } bits; ///< bits to represent different data + } correction_flags; ///< Correction data flags + union + { + uint8_t all; + struct + { + uint8_t gnssFixOK : 1; ///< 1 = valid fix (i.e within DOP & accuracy masks) + uint8_t diffSoln : 1; ///< 1 = differential corrections were applied + uint8_t psmState : 3; ///< Power save mode state + uint8_t headVehValid : 1; ///< 1 = heading of vehicle is valid, only set if the receiver is in sensor fusion mode + uint8_t carrSoln : 2; ///< Carrier phase range solution status + } bits; ///< bits to represent different data + } solution_flags; ///< Solution flags +} sl_max_m10s_ubx_nav_pvt_data_t; + +/// @brief To store the UBX packet with data, flags and updated values. +typedef struct sl_max_m10s_ubx_nav_pvt +{ + sl_max_m10s_ubx_automatic_flags_t automatic_flags; ///< To store automatic flags for the UBX packet + sl_max_m10s_ubx_nav_pvt_data_t data; ///< To store the data for the UBX packet + void (*callback_pointer_ptr)(sl_max_m10s_ubx_nav_pvt_data_t *); ///< To store the callback pointer for UBX packet + sl_max_m10s_ubx_nav_pvt_data_t *callback_data; ///< To get the callback data +} sl_max_m10s_ubx_nav_pvt_t; + +/// @brief structure to store the data for UBX-NAV-STATUS +typedef struct sl_max_m10s_ubx_nav_status_data +{ + uint32_t iTOW; ///< GPS time of week of the navigation epoch: ms + uint8_t gps_fix; ///< GPS fix Type + union + { + uint8_t all; ///< To store different data represented in bits. + struct + { + uint8_t gps_fix_ok : 1; ///< 1 = position and velocity valid and within DOP and ACC Masks. + uint8_t differential_solution : 1; ///< 1 = differential corrections were applied + uint8_t week_number : 1; ///< 1 = Week Number valid (see Time Validity section for details) + uint8_t time_of_week : 1; ///< 1 = Time of Week valid (see Time Validity section for details) + } bits; ///< bits to represent different data + } flags; ///< Fix status flags + union + { + uint8_t all; ///< To store different data represented in bits. + struct + { + uint8_t differential_correction : 1; ///< 1 = differential corrections available + uint8_t correction_valid : 1; ///< 1 = valid carrSoln + uint8_t reserved : 4; ///< reserved bits + uint8_t map_matching : 2; ///< map matching status + } bits; ///< bits to represent different data + } fix_status; ///< Fix Status Information + union + { + uint8_t all; ///< To store different data represented in bits. + struct + { + uint8_t psm_state : 2; ///< power save mode stateE + uint8_t reserved_1 : 1; ///< reserved bit + uint8_t spoof_state : 2; ///< Spoofing detection state + uint8_t reserved_2 : 1; ///< reserved bits + uint8_t carrier_solution : 2; ///< Carrier phase range solution status + } bits; ///< bits to represent different data + } flags_2; ///< Additional flags + uint32_t time_to_first_fix; ///< Time to first fix (millisecond time tag): ms + uint32_t milli_sec_since_startup; ///< Milliseconds since Startup / Reset: ms +} sl_max_m10s_ubx_nav_status_data_t; + +/// @brief structure to store the UBX-NAV-STATUS packet +typedef struct +{ + sl_max_m10s_ubx_automatic_flags_t automatic_flags; ///< Automatic flags for UBX packet + sl_max_m10s_ubx_nav_status_data_t data; ///< Data from the UBX packet + void (*callback_pointer_ptr)(sl_max_m10s_ubx_nav_status_data_t *); ///< Callback pointer + sl_max_m10s_ubx_nav_status_data_t *callback_data; ///< Pointer to callback data +} sl_max_m10s_ubx_nav_status_t; + +/// @brief structure to store the data for UBX-NAV-DOP +typedef struct +{ + uint32_t iTOW; ///< GPS time of week of the navigation epoch: ms + uint16_t geometric; ///< Geometric DOP: * 0.01 + uint16_t position; ///< Position DOP: * 0.01 + uint16_t time; ///< Time DOP: * 0.01 + uint16_t vertical; ///< Vertical DOP: * 0.01 + uint16_t horizontal; ///< Horizontal DOP: * 0.01 + uint16_t north; ///< Northing DOP: * 0.01 + uint16_t east; ///< Easting DOP: * 0.01 +} sl_max_m10s_ubx_nav_dop_data_t; + +/// @brief structure to store the UBX-NAV-DOP packet +typedef struct sl_max_m10s_ubx_nav_dop +{ + sl_max_m10s_ubx_automatic_flags_t automatic_flags; ///< Automatic flags for UBX packet + sl_max_m10s_ubx_nav_dop_data_t data; ///< Data from the UBX packet + void (*callback_pointer_ptr)(sl_max_m10s_ubx_nav_dop_data_t *); ///< Callback pointer + sl_max_m10s_ubx_nav_dop_data_t *callback_data; ///< Pointer to callback data +} sl_max_m10s_ubx_nav_dop_t; + +/// @brief structure to store the data for UBX-NAV-CLOCK +typedef struct +{ + uint32_t iTOW; ///< GPS time of week of the navigation epoch: ms + int32_t clock_bias; ///< Clock bias: ns + int32_t clock_drift; ///< Clock drift: ns/s + uint32_t time_accuracy; ///< Time accuracy estimate: ns + uint32_t freq_accuracy; ///< Frequency accuracy estimate: ps/s +} sl_max_m10s_ubx_nav_clock_data_t; + +/// @brief structure to store the UBX-NAV-CLOCK packet +typedef struct sl_max_m10s_ubx_nav_clock +{ + sl_max_m10s_ubx_automatic_flags_t automatic_flags; ///< Automatic flags for UBX packet + sl_max_m10s_ubx_nav_clock_data_t data; ///< Data from the UBX packet + void (*callback_pointer_ptr)(sl_max_m10s_ubx_nav_clock_data_t *); ///< Callback pointer + sl_max_m10s_ubx_nav_clock_data_t *callback_data; ///< Pointer to callback data +} sl_max_m10s_ubx_nav_clock_t; + +/// @brief structure to store the data for UBX-NAV-EOE +typedef struct +{ + uint32_t iTOW; ///< GPS time of week of the navigation epoch: ms +} sl_max_m10s_ubx_nav_epoch_data_t; + +/// @brief structure to store the UBX-NAV-EOE packet +typedef struct sl_max_m10s_ubx_nav_epoch +{ + sl_max_m10s_ubx_automatic_flags_t automatic_flags; ///< Automatic flags for UBX packet + sl_max_m10s_ubx_nav_epoch_data_t data; ///< Data from the UBX packet + void (*callback_pointer_ptr)(sl_max_m10s_ubx_nav_epoch_data_t *); ///< Callback pointer + sl_max_m10s_ubx_nav_epoch_data_t *callback_data; ///< Pointer to callback data +} sl_max_m10s_ubx_nav_epoch_t; + +/// @brief structure to store common data for UBX-NAV-SAT packet +typedef struct +{ + uint32_t iTOW; ///< GPS time of week + uint8_t version; ///< Message version (0x01 for this version) + uint8_t num_sv; ///< Number of satellites + uint8_t reserved1[2]; ///< Reserved bits +} sl_max_m10s_ubx_navsat_header_t; + +/// @brief structure to store the data specific to subset of signal identifier for UBX-NAV-SAT +typedef struct +{ + uint8_t gnss_id; ///< GNSS identifier + uint8_t sv_id; ///< Satellite identifier + uint8_t carrier_noise_ratio; ///< Carrier-to-noise density ratio: dB-Hz + int8_t elevation; ///< Elevation (range: +/-90): deg + int16_t azimuth; ///< Azimuth (range 0-360): deg + int16_t pseudo_range; ///< Pseudorange residual: m * 0.1 + union + { + uint32_t all; ///< Used to check all the data type of the UBX packet + struct + { + uint32_t quality_indicator : 3; ///< Signal quality indicator: 0: no signal + uint32_t sv_used : 1; ///< 1 = Signal in the subset specified in Signal Identifiers is currently being used for navigation + uint32_t health : 2; ///< Signal health flag: 0: unknown 1: healthy 2: unhealthy + uint32_t diff_correction : 1; ///< 1 = differential correction data is available for this SV + uint32_t smoothed : 1; ///< 1 = carrier smoothed pseudorange used + uint32_t orbit_source : 3; ///< Orbit source + uint32_t ephemeris_avail : 1; ///< 1 = ephemeris is available for this SV + uint32_t almanac_avail : 1; ///< 1 = almanac is available for this SV + uint32_t assist_now_avail : 1; ///< 1 = AssistNow Offline data is available for this SV + uint32_t assist_now_autonomous_avail : 1; ///< 1 = AssistNow Autonomous data is available for this SV + uint32_t reserved_1 : 1; ///< reserved bit + uint32_t sbas_correction_used : 1; ///< 1 = SBAS corrections have been used for a signal in the subset specified in Signal Identifiers + uint32_t rtcm_correction_used : 1; ///< 1 = RTCM corrections have been used for a signal in the subset specified in Signal Identifiers + uint32_t slas_correction_used : 1; ///< 1 = QZSS SLAS corrections have been used for a signal in the subset specified in Signal Identifiers + uint32_t spartn_correction_used : 1; ///< 1 = SPARTN corrections have been used for a signal in the subset specified in Signal Identifiers + uint32_t psuedorange_correction_used : 1; ///< 1 = Pseudorange corrections have been used for a signal in the subset specified in Signal Identifiers + uint32_t carrier_range_correction_used : 1; ///< 1 = Carrier range corrections have been used for a signal in the subset specified in Signal Identifiers + uint32_t doppler_correction_used : 1; ///< 1 = Range rate (Doppler) corrections have been used for a signal in the subset specified in Signal Identifiers + uint32_t reserved_2 : 9; ///< reserved bits + } bits; ///< bits to represent different data + } flags; ///< Bitmask for different data +} sl_max_m10s_ubx_navsat_block_t; + +/// @brief structure to store the whole data of UBX-NAV-SAT packet +typedef struct +{ + sl_max_m10s_ubx_navsat_header_t header; ///< Data common for all satellites + sl_max_m10s_ubx_navsat_block_t blocks[255]; ///< Data for specific satellite +} sl_max_m10s_ubx_navsat_data_t; + +/// @brief structure to store the data for UBX-NAV-SAT +typedef struct sl_max_m10s_ubx_nav_sat +{ + sl_max_m10s_ubx_automatic_flags_t automatic_flags; ///< Automatic flags for UBX packet + sl_max_m10s_ubx_navsat_data_t data; ///< Data from the UBX packet + void (*callback_pointer_ptr)(sl_max_m10s_ubx_navsat_data_t *); ///< Callback pointer + sl_max_m10s_ubx_navsat_data_t *callback_data; ///< Pointer to callback data +} sl_max_m10s_ubx_nav_sat_t; + +/// @brief structure to store the data of UBX-NAV-TIMLS packet. +typedef struct +{ + uint32_t iTOW; ///< GPS time of week of the navigation epoch: ms + uint8_t version; ///< Message version (0x00 for this version) + uint8_t reserved_1[3]; ///< reserved + uint8_t src_of_current_leap; ///< Information source for the current number of leap seconds + int8_t current_leap_sec; ///< Current number of leap seconds since start of GPS (Jan 6, 1980), s + uint8_t src_of_leap_sec_change; ///< Information source for the future leap second event + int8_t leap_sec_change; ///< Future leap second change if one is scheduled, +1, 0, -1s + int32_t time_to_leap_sec_event; ///< Number of seconds until the next or from the last leap second, s + uint16_t date_of_leap_sec_gps_week; ///< GPS week num (WN) of the next or the last leap second event + uint16_t day_of_leap_sec_gps; ///< GPS day of week num (DN) for the next or last leap second event + uint8_t reserved_2[3]; ///< Reserved bits + union + { + uint8_t all; ///< To store different data represented in bits. + struct + { + uint8_t valid_current_leap_sec : 1; ///< 1 = Valid current number of leap seconds value + uint8_t valid_time_to_leap_sec_event : 1; ///< 1 = Valid time to next leap second event or from the last leap second event if no future event scheduled + } bits; ///< bits to represent different data + } valid; ///< Validity Flags +} sl_max_m10s_ubx_nav_timels_data_t; + +/// @brief To store the UBX-NAV-TIMELS packet. +typedef struct sl_max_m10s_ubx_nav_timels +{ + sl_max_m10s_ubx_automatic_flags_t automatic_flags; ///< Automatic flags for UBX packet + sl_max_m10s_ubx_nav_timels_data_t data; ///< Data from the UBX packet + void (*callback_pointer_ptr)(sl_max_m10s_ubx_nav_timels_data_t *); ///< Callback pointer + sl_max_m10s_ubx_nav_timels_data_t *callback_data; ///< Pointer to callback data +} sl_max_m10s_ubx_nav_timels_t; + +/// @brief To store the UBX-NAV-TIMEUTC packet data. +typedef struct +{ + uint32_t iTOW; ///< GPS time of week of the navigation epoch: ms + uint32_t time_accuracy; ///< Time accuracy estimate (UTC): ns + int32_t nano; ///< Fraction of second, range -1e9 .. 1e9 (UTC): ns + uint16_t year; ///< Year (UTC) + uint8_t month; ///< Month, range 1..12 (UTC) + uint8_t day; ///< Day of month, range 1..31 (UTC) + uint8_t hour; ///< Hour of day, range 0..23 (UTC) + uint8_t min; ///< Minute of hour, range 0..59 (UTC) + uint8_t sec; ///< Seconds of minute, range 0..60 (UTC) + union + { + uint8_t all; ///< To store different data represented in bits. + struct + { + uint8_t valid_tow : 1; ///< 1 = Valid Time of Week + uint8_t valid_week_number : 1; ///< 1 = Valid Week Number + uint8_t valid_utc : 1; ///< 1 = Valid UTC Time + uint8_t reserved : 1; ///< reserved bit + uint8_t utc_standard : 4; ///< UTC standard identifier + } bits; ///< bits to represent different data + } valid; ///< Validity flags +} sl_max_m10s_ubx_nav_timeutc_data_t; + +/// @brief To store the UBX-NAV-TIMEUTC packet. +typedef struct +{ + sl_max_m10s_ubx_automatic_flags_t automatic_flags; ///< Automatic flags for UBX packet + sl_max_m10s_ubx_nav_timeutc_data_t data; ///< Data from the UBX packet + void (*callback_pointer_ptr)(sl_max_m10s_ubx_nav_timeutc_data_t *); ///< Callback pointer + sl_max_m10s_ubx_nav_timeutc_data_t *callback_data; ///< Pointer to callback data +} sl_max_m10s_ubx_nav_timeutc_t; + +/// @brief To store the UBX-NAV-SIG packet data common for all signals. +typedef struct +{ + uint32_t iTOW; ///< GPS time of week + uint8_t version; ///< Message version (0x00 for this version) + uint8_t num_signals; ///< Number of signals + uint8_t reserved0[2]; ///< reserved +} sl_max_m10s_ubx_navsig_header_t; + +/// @brief To store the UBX-NAV-SIG packet data for a specific signal. +typedef struct +{ + uint8_t gnss_id; ///< GNSS identifier + uint8_t sv_id; ///< Satellite identifier + uint8_t sig_id; ///< New signal identifier + uint8_t freq_id; ///< GLONASS frequency slot + int16_t psuedo_range; ///< Pseudorange residual: m * 0.1 + uint8_t carrier_noise_ratio; ///< Carrier-to-noise density ratio: dB-Hz + uint8_t quality_ind; ///< Signal quality indicator: + uint8_t corr_source; ///< Correction source: + uint8_t iono_model; ///< Ionospheric model used: + union + { + uint16_t all; ///< To store different data represented in bits. + struct + { + uint16_t health : 1; ///< Signal health flag: 0 = unknown; 1 = healthy; 2 = unhealthy + uint16_t pr_smoothed : 1; ///< 1 = Pseudorange has been smoothed + uint16_t pr_used : 1; ///< 1 = Pseudorange has been used for this signal + uint16_t cr_used : 1; ///< 1 = Carrier range has been used for this signal + uint16_t doppler_used : 1; ///< 1 = Range rate (Doppler) has been used for this signal + uint16_t pr_corr_used : 1; ///< 1 = Pseudorange corrections have been used for this signal + uint16_t carrier_corr_used : 1; ///< 1 = Carrier range corrections have been used for this signal + uint16_t doppler_corr_used : 1; ///< 1 = Range rate (Doppler) corrections have been usedfor this signal + uint16_t authentication_status : 1; ///< Authentication status of the navigation data: 0 = Unknown; 1 = Authenticated + } bits; ///< bits to represent different data + } sig_flags; ///< Signal related flags + uint8_t reserved1[4]; ///< Reserved bytes +} sl_max_m10s_ubx_navsig_block_t; + +/// @brief To store the UBX-NAV-SIG packet whole data. +typedef struct +{ + sl_max_m10s_ubx_navsig_header_t header; ///< Data common to all signals + sl_max_m10s_ubx_navsig_block_t blocks[92]; ///< Data for specific signal +} sl_max_m10s_ubx_navsig_data_t; + +/// @brief To store the UBX-NAV-SIG packet. +typedef struct +{ + sl_max_m10s_ubx_automatic_flags_t automatic_flags; ///< Automatic flags for UBX packet + sl_max_m10s_ubx_navsig_data_t data; ///< Data from the UBX packet + void (*callback_pointer_ptr)(sl_max_m10s_ubx_navsig_data_t *); ///< Callback pointer + sl_max_m10s_ubx_navsig_data_t *callback_data; ///< Pointer to callback data +} sl_max_m10s_ubx_navsig_t; + +/// @brief To store the UBX-NAV-POSLLH packet data. +typedef struct +{ + uint32_t iTOW; ///< GPS time of week of the navigation epoch: ms + int32_t lon; ///< Longitude: Degrees * 1e-7 + int32_t lat; ///< Latitude: Degrees * 1e-7 + int32_t height; ///< Height above ellipsoid: mm + int32_t hMSL; ///< Height above mean sea level: mm + uint32_t h_acc; ///< Horizontal Accuracy Estimate: mm + uint32_t v_acc; ///< Vertical Accuracy Estimate: mm +} sl_max_m10s_ubx_nav_posllh_data_t; + +/// @brief To store the UBX-NAV-POSLLH packet. +typedef struct +{ + sl_max_m10s_ubx_automatic_flags_t automatic_flags; ///< Automatic flags for UBX packet + sl_max_m10s_ubx_nav_posllh_data_t data; ///< Data from the UBX packet + void (*callback_pointer_ptr)(sl_max_m10s_ubx_nav_posllh_data_t *); ///< Callback pointer + sl_max_m10s_ubx_nav_posllh_data_t *callback_data; ///< Pointer to callback data +} sl_max_m10s_ubx_nav_posllh_t; + +/// @brief To store the UBX-SEC_UNIQID packet. +typedef struct +{ + uint8_t version; ///< GNSS receiver module version + uint8_t reserved0[3]; ///< reserved + uint8_t unique_id[6]; ///< Unique id of the GNSS module +} sl_max_m10s_ubx_unique_id_t; + +/// @brief To store the UBX-NAV-VELNED packet data. +typedef struct +{ + uint32_t iTOW; ///< GPS time of week of the navigation epoch: ms + int32_t velN; ///< North velocity component: cm/s + int32_t velE; ///< East velocity component: cm/s + int32_t velD; ///< Down velocity component: cm/s + uint32_t speed; ///< Speed (3-D): cm/s + uint32_t ground_speed; ///< Ground Speed (2-D): cm/s + int32_t heading; ///< Heading of motion 2-D: Degrees * 1e-5 + uint32_t speed_acc; ///< Speed accuracy estimate: cm/s + uint32_t course_acc; ///< Course/Heading accuracy estimate: Degrees * 1e-5 +} sl_max_m10s_ubx_nav_velned_data_t; + +/// @brief To store the UBX-NAV-VELNED packet. +typedef struct sl_max_m10s_ubx_nav_velned +{ + sl_max_m10s_ubx_automatic_flags_t automatic_flags; ///< Automatic flags for UBX packet + sl_max_m10s_ubx_nav_velned_data_t data; ///< Data from the UBX packet + void (*callback_pointer_ptr)(sl_max_m10s_ubx_nav_velned_data_t *); ///< Callback pointer + sl_max_m10s_ubx_nav_velned_data_t *callback_data; ///< Pointer to callback data +} sl_max_m10s_ubx_nav_velned_t; + +#ifdef __cplusplus +} +#endif + +#endif // GNSS_MAX_M10S_UBX_STRUCT_H_ + +/******************************************************************************/ +/* EOF */ +/******************************************************************************/ diff --git a/driver/public/silabs/gnss_max_m10s/src/gnss_max_m10s_driver.c b/driver/public/silabs/gnss_max_m10s/src/gnss_max_m10s_driver.c new file mode 100644 index 00000000..5fa16014 --- /dev/null +++ b/driver/public/silabs/gnss_max_m10s/src/gnss_max_m10s_driver.c @@ -0,0 +1,2645 @@ +/***************************************************************************//** + * @file gnss_max_m10s_driver.c + * @brief GNSS receiver module API implementation + ******************************************************************************* + * # License + * Copyright 2020 Silicon Laboratories Inc. www.silabs.com + ******************************************************************************* + * + * SPDX-License-Identifier: Zlib + * + * The licensor of this software is Silicon Laboratories Inc. + * + * This software is provided \'as-is\', without any express or implied + * warranty. In no event will the authors be held liable for any damages + * arising from the use of this software. + * + * Permission is granted to anyone to use this software for any purpose, + * including commercial applications, and to alter it and redistribute it + * freely, subject to the following restrictions: + * + * 1. The origin of this software must not be misrepresented; you must not + * claim that you wrote the original software. If you use this software + * in a product, an acknowledgment in the product documentation would be + * appreciated but is not required. + * 2. Altered source versions must be plainly marked as such, and must not be + * misrepresented as being the original software. + * 3. This notice may not be removed or altered from any source distribution. + * + ******************************************************************************* + * # Evaluation Quality + * This code has been minimally tested to ensure that it builds and is suitable + * as a demonstration for evaluation purposes only. This code will be maintained + * at the sole discretion of Silicon Labs. + ******************************************************************************/ +#include +#include "sl_sleeptimer.h" +#include "gnss_max_m10s_driver.h" +#include "gnss_max_m10s_ubx.h" +#include "gnss_max_m10s_nmea.h" +#ifdef SLI_SI917 +#include "si91x_device.h" +#endif + +typedef i2c_master_t max_m10s_i2c_t; + +static max_m10s_i2c_t max_m10s_i2c; + +/**************************************************************************//** + * @brief Initialize the UBX packet structure members + * @param[in] gnss_cfg_data : pointer to the structure + * containing GNSS configuration data. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + *****************************************************************************/ +static sl_status_t gnss_max_m10s_init_packet_data( + sl_max_m10s_cfg_data_t *gnss_cfg_data); + +/**************************************************************************//** + * @brief Initialize the gnss_cfg_data structure members + * @param[in] gnss_cfg_data : pointer to the structure + * containing GNSS configuration data. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + *****************************************************************************/ +static sl_status_t gnss_max_m10s_init(sl_max_m10s_cfg_data_t *gnss_cfg_data); + +/**************************************************************************//** + * @brief Check if the device is connected by sending the slave address + * through I2C. + * @param[in] gnss_cfg_data : pointer to the structure + * containing GNSS configuration data. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + *****************************************************************************/ +static sl_status_t gnss_max_m10s_ping(sl_max_m10s_cfg_data_t *gnss_cfg_data); + +/**************************************************************************//** + * @brief Returns the number of bytes available to read. + * @param[in] gnss_cfg_data : pointer to the structure + * containing GNSS configuration data. + * @param[in] data : pointer to the data to send. + * @param[in] length : length of the data to send. + * @return length of data written. + *****************************************************************************/ +static uint8_t gnss_max_m10s_write_bytes(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint8_t *data, + uint8_t length); + +/**************************************************************************//** + * @brief Returns the number of bytes available to read. + * @param[in] gnss_cfg_data : pointer to the structure + * containing GNSS configuration data. + * @param[in] data : pointer to the buffer to store data. + * @param[in] length : length of the data to be read. + * @return length of data read. + *****************************************************************************/ +static uint8_t gnss_max_m10s_read_bytes(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint8_t *data, + uint8_t length); + +/**************************************************************************//** + * @brief Returns the number of bytes available to read. + * @param[in] gnss_cfg_data : pointer to the structure + * containing GNSS configuration data. + * @param[in] max_wait : Timeout value. + * @param[in] assumeSuccess : success or failure of function. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + *****************************************************************************/ +static sl_status_t gnss_max_m10s_ublox_init( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait); + +/**************************************************************************//** + * @brief Checks if the GNSS receiver module is connected. + * @param[in] gnss_cfg_data : pointer to the structure + * containing GNSS configuration data. + * @param[in] max_wait : Timeout value. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + *****************************************************************************/ +static sl_status_t gnss_max_m10s_ublox_is_connected( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait); + +/**************************************************************************//** + * @brief to change packet_cfg_payload_size. + * @param[in] gnss_cfg_data : pointer to the structure + * containing GNSS configuration data. + * @param[in] payload_size : size of the UBX payload. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + *****************************************************************************/ +static sl_status_t gnss_max_m10s_set_packet_cfg_payload_size( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + size_t payload_size); + +/**************************************************************************//** + * @brief create the UBX file buffer. + * @param[in] gnss_cfg_data : pointer to the structure + * containing GNSS configuration data. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + *****************************************************************************/ +static sl_status_t gnss_max_m10s_create_file_buffer( + sl_max_m10s_cfg_data_t *gnss_cfg_data); + +/**************************************************************************//** + * @brief Given an UBX key, load the payload with data + * that can then be extracted to 8, 16, or 32 bits + * @param[in] gnss_cfg_data : pointer to the structure + * containing GNSS configuration data. + * @param[in] key : key to the UBX packet. + * @param[in] layer : layer for the UBX. + * @param[in] max_wait : timeout value. + * @return the following values are returned: + * - \ref SL_MAX_M10S_UBLOX_STATUS_DATA_RECEIVED if we got a config packet full + * of response data that has CLS/ID match to our query packet + * - \ref SL_MAX_M10S_UBLOX_STATUS_CRC_FAIL if we got a corrupt config packet + * that has CLS/ID match to our query packet + * - \ref SL_MAX_M10S_UBLOX_STATUS_TIMEOUT if we timed out + * - \ref SL_MAX_M10S_UBLOX_STATUS_DATA_OVERWRITTEN if we got an a valid packetCfg + * but that the packetCfg has been or is currently being overwritten + *****************************************************************************/ +static sl_max_m10s_ublox_status_e gnss_max_m10s_getval( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint32_t key, + uint8_t layer, + uint16_t max_wait); + +/**************************************************************************//** + * @brief Given an UBX key, return its value. + * @param[in] gnss_cfg_data : pointer to the structure + * containing GNSS configuration data. + * @param[in] key : key to the UBX packet. + * @param[in] val : to store the value of the UBX key. + * @param[in] layer : layer for the UBX. + * @param[in] max_wait : timeout value. + * @return none. + *****************************************************************************/ +static bool gnss_max_m10s_getval8(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint32_t key, + uint8_t *val, + uint8_t layer, + uint16_t max_wait); + +/**************************************************************************//** + * @brief calculate and store the two byte checksum over + * the entirety of the message. + * @param[in] msg : pointer to the UBX packet. + *****************************************************************************/ +static void gnss_max_m10s_calc_checksum(sl_max_m10s_ubx_packet_t *msg); + +/**************************************************************************//** + * @brief sends the UBX packet via I2C. + * @param[in] gnss_cfg_data : pointer to the structure + * containing GNSS configuration data. + * @param[in] outgoingUBX : pointer to the UBX packet. + * @return the following values are returned: + * - \ref SL_MAX_M10S_UBLOX_STATUS_DATA_RECEIVED if we got a config packet full + * of response data that has CLS/ID match to our query packet + * - \ref SL_MAX_M10S_UBLOX_STATUS_CRC_FAIL if we got a corrupt config packet + * that has CLS/ID match to our query packet + * - \ref SL_MAX_M10S_UBLOX_STATUS_TIMEOUT if we timed out + * - \ref SL_MAX_M10S_UBLOX_STATUS_DATA_OVERWRITTEN if we got an a valid packetCfg + * but that the packetCfg has been or is currently being overwritten + * (remember that Serial data can arrive very slowly) + *****************************************************************************/ +static sl_max_m10s_ublox_status_e gnss_max_m10s_send_i2c_command( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + sl_max_m10s_ubx_packet_t *outgoingUBX); + +/**************************************************************************//** + * @brief checks for ACK when the module is responding with register content + * @param[in] gnss_cfg_data : pointer to the structure + * containing GNSS configuration data. + * @param[in] incomingUBX : pointer to UBX packet. + * @param[in] requested_class : class for the UBX packet. + * @param[in] requested_id : ID for the UBX packet. + * @param[in] max_time : timeout value. + * @return the following values are returned: + * - \ref SL_MAX_M10S_UBLOX_STATUS_DATA_RECEIVED if we got a config packet full + * of response data that has CLS/ID match to our query packet + * - \ref SL_MAX_M10S_UBLOX_STATUS_CRC_FAIL if we got a corrupt config packet + * that has CLS/ID match to our query packet + * - \ref SL_MAX_M10S_UBLOX_STATUS_TIMEOUT if we timed out + * - \ref SL_MAX_M10S_UBLOX_STATUS_DATA_OVERWRITTEN if we got an a valid packetCfg + * but that the packetCfg has been or is currently being overwritten + * (remember that Serial data can arrive very slowly) + *****************************************************************************/ +static sl_max_m10s_ublox_status_e gnss_max_m10s_wait_for_ack_response( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + sl_max_m10s_ubx_packet_t *outgoingUBX, + uint8_t requested_class, + uint8_t requested_id, + uint16_t max_time); + +/**************************************************************************//** + * @brief For non-CFG queries no ACK is sent so we use this function + * @param[in] gnss_cfg_data : pointer to the structure + * containing GNSS configuration data. + * @param[in] incomingUBX : pointer to UBX packet. + * @param[in] requested_class : class for the UBX packet. + * @param[in] requested_id : ID for the UBX packet. + * @param[in] max_time : timeout value. + * @return the following values are returned: + * - \ref SL_MAX_M10S_UBLOX_STATUS_DATA_RECEIVED if we got a config packet full + * of response data that has CLS/ID match to our query packet + * - \ref SL_MAX_M10S_UBLOX_STATUS_CRC_FAIL if we got a corrupt config packet + * that has CLS/ID match to our query packet + * - \ref SL_MAX_M10S_UBLOX_STATUS_TIMEOUT if we timed out + * - \ref SL_MAX_M10S_UBLOX_STATUS_DATA_OVERWRITTEN if we got an a valid packetCfg + * but that the packetCfg has been or is currently being overwritten + * (remember that Serial data can arrive very slowly) + *****************************************************************************/ +static sl_max_m10s_ublox_status_e gnss_max_m10s_wait_for_no_ack_response( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + sl_max_m10s_ubx_packet_t *outgoingUBX, + uint8_t requested_class, + uint8_t requested_id, + uint16_t max_time); + +/**************************************************************************//** + * @brief Polls I2C for data, passing any new bytes to gnss_m10s_process() + * @param[in] gnss_cfg_data : pointer to the structure + * containing GNSS configuration data. + * @param[in] incomingUBX : pointer to incoming UBX packet. + * @param[in] requested_class : class for the UBX packet. + * @param[in] requested_id : ID for the UBX packet. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + *****************************************************************************/ +static sl_status_t gnss_max_m10s_check_ublox_i2c( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + sl_max_m10s_ubx_packet_t *incomingUBX, + uint8_t requested_class, + uint8_t requested_id); + +/**************************************************************************//** + * @brief Processes UBX binary sentences one byte at a time, take a given byte + * and file it into the proper array + * @param[in] gnss_cfg_data : pointer to the structure + * containing GNSS configuration data. + * @param[in] incoming : character to check + * @param[in] incomingUBX : UBX packet to process. + * @param[in] requested_class : class of the UBX packet. + * @param[in] requested_id : ID for the UBX packet. + *****************************************************************************/ +static void gnss_max_m10s_process(sl_max_m10s_cfg_data_t *gnss_cfg_data_data, + uint8_t incoming, + sl_max_m10s_ubx_packet_t *incomingUBX, + uint8_t requested_class, + uint8_t requested_id); + +/**************************************************************************//** + * @brief Check how much space is available in the buffer + * @param[in] gnss_cfg_data : pointer to the structure + * containing GNSS configuration data. + * @return number of bytes available in the file buffer. + *****************************************************************************/ +static uint16_t gnss_max_m10s_file_buffer_space_available( + sl_max_m10s_cfg_data_t *gnss_cfg_data); + +/**************************************************************************//** + * @brief Check how much space is used in the buffer + * @param[in] gnss_cfg_data : pointer to the structure + * containing GNSS configuration data. + * @return number of bytes used in the file buffer. + *****************************************************************************/ +static uint16_t gnss_max_m10s_file_buffer_used( + sl_max_m10s_cfg_data_t *gnss_cfg_data); + +/**************************************************************************//** + * @brief Write the_bytes to the file buffer + * @param[in] gnss_cfg_data : pointer to the structure + * containing GNSS configuration data. + * @param[in] the_bytes : pointer to bytes to write. + * @param[in] num_bytes : number of bytes. + *****************************************************************************/ +static void gnss_max_m10s_write_file_buffer( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint8_t *the_bytes, + uint16_t num_bytes); + +/**************************************************************************//** + * @brief Start defining a new (empty) UBX-CFG-VALSET ubx packet. + * @param[in] gnss_cfg_data : pointer to the structure + * containing GNSS configuration data. + * @param[in] layer : RAM layer. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + *****************************************************************************/ +static sl_status_t gnss_max_m10s_new_cfg_valset( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint8_t layer); + +/**************************************************************************//** + * @brief Add another key and value to an existing UBX-CFG-VALSET ubx packet + * @param[in] gnss_cfg_data : pointer to the structure + * containing GNSS configuration data. + * @param[in] key : UBX packet key. + * @param[in] value : UBX type communication. + * @param[in] max_wait : Timeout value. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + *****************************************************************************/ +static sl_status_t gnss_max_m10s_add_cfg_valset( + sl_max_m10s_cfg_data_t *gnss_cfg_data_data, + uint32_t key, + uint8_t *value, + uint8_t N); + +/**************************************************************************//** + * @brief Send the UBX-CFG-VALSET ubx packet + * @param[in] gnss_cfg_data : pointer to the structure + * containing GNSS configuration data. + * @param[in] max_wait : Timeout value. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + *****************************************************************************/ +static sl_status_t gnss_max_m10s_send_cfg_valset( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait); + +static sl_status_t gnss_max_m10s_init_packet_data( + sl_max_m10s_cfg_data_t *gnss_cfg_data) +{ + gnss_cfg_data->packet_ack.cls = 0; + gnss_cfg_data->packet_ack.id = 0; + gnss_cfg_data->packet_ack.len = 0; + gnss_cfg_data->packet_ack.counter = 0; + gnss_cfg_data->packet_ack.starting_spot = 0; + gnss_cfg_data->packet_ack.payload = gnss_cfg_data->msg_data.payload_ack; + gnss_cfg_data->packet_ack.checksum_a = 0; + gnss_cfg_data->packet_ack.checksum_b = 0; + gnss_cfg_data->packet_ack.valid = + SL_MAX_M10S_UBLOX_PACKET_VALIDITY_NOT_DEFINED; + gnss_cfg_data->packet_ack.class_and_id_match = + SL_MAX_M10S_UBLOX_PACKET_VALIDITY_NOT_DEFINED; + + gnss_cfg_data->packet_buf.cls = 0; + gnss_cfg_data->packet_buf.id = 0; + gnss_cfg_data->packet_buf.len = 0; + gnss_cfg_data->packet_buf.counter = 0; + gnss_cfg_data->packet_buf.starting_spot = 0; + gnss_cfg_data->packet_buf.payload = gnss_cfg_data->msg_data.payload_buf; + gnss_cfg_data->packet_buf.checksum_a = 0; + gnss_cfg_data->packet_buf.checksum_b = 0; + gnss_cfg_data->packet_buf.valid = + SL_MAX_M10S_UBLOX_PACKET_VALIDITY_NOT_DEFINED; + gnss_cfg_data->packet_buf.class_and_id_match = + SL_MAX_M10S_UBLOX_PACKET_VALIDITY_NOT_DEFINED; + + gnss_cfg_data->packet_auto.cls = 0; + gnss_cfg_data->packet_auto.id = 0; + gnss_cfg_data->packet_auto.len = 0; + gnss_cfg_data->packet_auto.counter = 0; + gnss_cfg_data->packet_auto.starting_spot = 0; + gnss_cfg_data->packet_auto.payload = NULL; + gnss_cfg_data->packet_auto.checksum_a = 0; + gnss_cfg_data->packet_auto.checksum_b = 0; + gnss_cfg_data->packet_auto.valid = + SL_MAX_M10S_UBLOX_PACKET_VALIDITY_NOT_DEFINED; + gnss_cfg_data->packet_auto.class_and_id_match = + SL_MAX_M10S_UBLOX_PACKET_VALIDITY_NOT_DEFINED; + + gnss_cfg_data->packet_cfg.cls = 0; + gnss_cfg_data->packet_cfg.id = 0; + gnss_cfg_data->packet_cfg.len = 0; + gnss_cfg_data->packet_cfg.counter = 0; + gnss_cfg_data->packet_cfg.starting_spot = 0; + gnss_cfg_data->packet_cfg.payload = NULL; + gnss_cfg_data->packet_cfg.checksum_a = 0; + gnss_cfg_data->packet_cfg.checksum_b = 0; + gnss_cfg_data->packet_cfg.valid = + SL_MAX_M10S_UBLOX_PACKET_VALIDITY_NOT_DEFINED; + gnss_cfg_data->packet_cfg.class_and_id_match = + SL_MAX_M10S_UBLOX_PACKET_VALIDITY_NOT_DEFINED; + + return SL_STATUS_OK; +} + +static sl_status_t gnss_max_m10s_init(sl_max_m10s_cfg_data_t *gnss_cfg_data) +{ + sl_status_t status; + i2c_master_config_t max_m10s_cfg; + + if (NULL == gnss_cfg_data->i2c_instance) { + return SL_STATUS_INVALID_PARAMETER; + } + + // Configure default i2csmp instance + max_m10s_i2c.handle = gnss_cfg_data->i2c_instance; + + i2c_master_configure_default(&max_m10s_cfg); + + max_m10s_cfg.addr = gnss_cfg_data->device_address; + max_m10s_cfg.timeout_pass_count = 0; + + if (i2c_master_open(&max_m10s_i2c, &max_m10s_cfg) == I2C_MASTER_ERROR) { + return SL_STATUS_INITIALIZATION; + } + + gnss_max_m10s_init_packet_data(gnss_cfg_data); + + gnss_cfg_data->msg_data.packet_cfg_payloadsize = 0; + gnss_cfg_data->msg_data.payload_cfg = NULL; + gnss_cfg_data->msg_data.payload_auto = NULL; + gnss_cfg_data->reset_current_sentence_on_bus_error = true; + gnss_cfg_data->auto_send_at_space_remaining = 0; + gnss_cfg_data->ubx_file_buffer = NULL; + gnss_cfg_data->file_buffer_head = 0; + gnss_cfg_data->file_buffer_tail = 0; + gnss_cfg_data->file_buffer_max_avail = 0; + gnss_cfg_data->ignore_this_payload = false; + gnss_cfg_data->max_nmea_byte_count = SL_MAX_M10S_NMEA_BYTE_COUNT; + gnss_cfg_data->packetUBXNAVPVT = NULL; + gnss_cfg_data->packetUBXNAVCLOCK = NULL; + gnss_cfg_data->packetUBXNAVDOP = NULL; + gnss_cfg_data->packetUBXNAVEOE = NULL; + gnss_cfg_data->packetUBXNAVPOSLLH = NULL; + gnss_cfg_data->packetUBXNAVSAT = NULL; + gnss_cfg_data->packetUBXNAVSTATUS = NULL; + gnss_cfg_data->packetUBXNAVSIG = NULL; + gnss_cfg_data->packetUBXNAVTIMELS = NULL; + gnss_cfg_data->packetUBXNAVTIMEUTC = NULL; + gnss_cfg_data->packetUBXNAVVELNED = NULL; + gnss_cfg_data->packetUBXUNIQID = NULL; + gnss_cfg_data->storageNMEAGNGGA = NULL; + gnss_cfg_data->storageNMEAGNRMC = NULL; + gnss_cfg_data->storageNMEAGPGGA = NULL; + gnss_cfg_data->storageNMEAGPRMC = NULL; + gnss_cfg_data->nmea_data = NULL; + gnss_cfg_data->active_packet_buffer = SL_MAX_M10S_UBLOX_PACKET_PACKETBUF; + gnss_cfg_data->current_sentence = SL_MAX_M10S_UBLOX_SENTENCE_TYPE_NONE; + + if (gnss_cfg_data->protocol_type == SL_MAX_M10S_PROTOCOL_NMEA) { + status = gnss_max_m10s_nmea_init(gnss_cfg_data); + } else { + status = SL_STATUS_OK; + } + return status; +} + +sl_status_t gnss_max_m10s_deinit(sl_max_m10s_cfg_data_t *gnss_cfg_data) +{ + sl_status_t status = SL_STATUS_OK; + + if (gnss_cfg_data->packetUBXNAVPVT != NULL) { + free(gnss_cfg_data->packetUBXNAVPVT); + gnss_cfg_data->packetUBXNAVPVT = NULL; + } + + if (gnss_cfg_data->packetUBXNAVCLOCK != NULL) { + free(gnss_cfg_data->packetUBXNAVCLOCK); + gnss_cfg_data->packetUBXNAVCLOCK = NULL; + } + + if (gnss_cfg_data->packetUBXNAVDOP != NULL) { + free(gnss_cfg_data->packetUBXNAVDOP); + gnss_cfg_data->packetUBXNAVDOP = NULL; + } + + if (gnss_cfg_data->packetUBXNAVEOE != NULL) { + free(gnss_cfg_data->packetUBXNAVEOE); + gnss_cfg_data->packetUBXNAVEOE = NULL; + } + + if (gnss_cfg_data->packetUBXNAVPOSLLH != NULL) { + free(gnss_cfg_data->packetUBXNAVPOSLLH); + gnss_cfg_data->packetUBXNAVPOSLLH = NULL; + } + + if (gnss_cfg_data->packetUBXNAVSAT != NULL) { + free(gnss_cfg_data->packetUBXNAVSAT); + gnss_cfg_data->packetUBXNAVSAT = NULL; + } + + if (gnss_cfg_data->packetUBXNAVSIG != NULL) { + free(gnss_cfg_data->packetUBXNAVSIG); + gnss_cfg_data->packetUBXNAVSIG = NULL; + } + + if (gnss_cfg_data->packetUBXNAVSTATUS != NULL) { + free(gnss_cfg_data->packetUBXNAVSTATUS); + gnss_cfg_data->packetUBXNAVSTATUS = NULL; + } + + if (gnss_cfg_data->packetUBXNAVVELNED != NULL) { + free(gnss_cfg_data->packetUBXNAVVELNED); + gnss_cfg_data->packetUBXNAVVELNED = NULL; + } + + if (gnss_cfg_data->packetUBXNAVTIMELS != NULL) { + free(gnss_cfg_data->packetUBXNAVTIMELS); + gnss_cfg_data->packetUBXNAVTIMELS = NULL; + } + + if (gnss_cfg_data->packetUBXNAVTIMEUTC != NULL) { + free(gnss_cfg_data->packetUBXNAVTIMEUTC); + gnss_cfg_data->packetUBXNAVTIMEUTC = NULL; + } + + if (gnss_cfg_data->packetUBXUNIQID != NULL) { + free(gnss_cfg_data->packetUBXUNIQID); + gnss_cfg_data->packetUBXUNIQID = NULL; + } + + if (gnss_cfg_data->nmea_data != NULL) { + free(gnss_cfg_data->nmea_data); + gnss_cfg_data->nmea_data = NULL; + } + + return status; +} + +sl_status_t gnss_max_m10s_begin(uint16_t max_wait, + sl_max_m10s_cfg_data_t *gnss_cfg_data) +{ + sl_status_t status; + status = gnss_max_m10s_init(gnss_cfg_data); + if (SL_STATUS_OK == status) { + /// printf("gnss_max_m10s_init is successful\r\n"); + gnss_cfg_data->status = SL_MAX_M10S_INIT_OK; + } else { + gnss_cfg_data->status = SL_MAX_M10S_INIT_FAIL; + /// printf("gnss_max_m10s_init failed!!\r\n"); + return status; + } + + status = gnss_max_m10s_ublox_init(gnss_cfg_data, max_wait); + if (SL_STATUS_OK == status) { + /// printf("gnss_max_m10s_ublox_init is successful\r\n"); + gnss_cfg_data->status = SL_MAX_M10S_INIT_OK; + } else { + gnss_cfg_data->status = SL_MAX_M10S_INIT_FAIL; + /// printf("gnss_max_m10s_ublox_init failed!!\r\n"); + return status; + } + + gnss_cfg_data->status = SL_MAX_M10S_BEGIN_OK; + return status; +} + +static sl_status_t gnss_max_m10s_ping(sl_max_m10s_cfg_data_t *gnss_cfg_data) +{ + size_t write_buffer_size = 1; + uint8_t i2c_write_data[write_buffer_size]; + + i2c_write_data[0] = 0; + + if (NULL == gnss_cfg_data->i2c_instance) { + return SL_STATUS_INVALID_PARAMETER; + } + + if (I2C_MASTER_SUCCESS != i2c_master_write(&max_m10s_i2c, + i2c_write_data, + write_buffer_size)) { + return SL_STATUS_FAIL; + } + + return SL_STATUS_OK; +} + +static uint8_t gnss_max_m10s_write_bytes(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint8_t *data, uint8_t length) +{ + if (NULL == gnss_cfg_data->i2c_instance) { + return SL_STATUS_INVALID_PARAMETER; + } + + if (0 == length) { + return 0; + } + + if (I2C_MASTER_SUCCESS != i2c_master_write(&max_m10s_i2c, + data, + length)) { + return 0; + } + + return length; +} + +static uint8_t gnss_max_m10s_read_bytes(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint8_t *data, uint8_t length) +{ + if (NULL == gnss_cfg_data->i2c_instance) { + return SL_STATUS_INVALID_PARAMETER; + } + + if (0 == length) { + return 0; + } + + if (I2C_MASTER_SUCCESS != i2c_master_read(&max_m10s_i2c, + data, + length)) { + return 0; + } + + return length; +} + +static sl_status_t gnss_max_m10s_create_file_buffer( + sl_max_m10s_cfg_data_t *gnss_cfg_data) +{ + if (0 == FILE_BUFFER_SIZE) { + return SL_STATUS_FAIL; + } + + if (gnss_cfg_data->ubx_file_buffer != NULL) { + return SL_STATUS_FAIL; + } + + gnss_cfg_data->ubx_file_buffer = + (uint8_t *)malloc(FILE_BUFFER_SIZE * sizeof(uint8_t)); + + if (NULL == gnss_cfg_data->ubx_file_buffer) { + return SL_STATUS_FAIL; + } + + gnss_cfg_data->file_buffer_head = 0; + gnss_cfg_data->file_buffer_tail = 0; + + return SL_STATUS_OK; +} + +static sl_status_t gnss_max_m10s_ublox_init( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait) +{ + sl_status_t status = SL_STATUS_OK; + + gnss_cfg_data->signs_of_life = false; + + if (0 == gnss_cfg_data->msg_data.packet_cfg_payloadsize) { + gnss_max_m10s_set_packet_cfg_payload_size(gnss_cfg_data, MAX_PAYLOAD_SIZE); + } + + status = gnss_max_m10s_create_file_buffer(gnss_cfg_data); + + if (status != SL_STATUS_OK) { + goto return_failure; + } + + status = gnss_max_m10s_ublox_is_connected(gnss_cfg_data, max_wait); + + if (status != SL_STATUS_OK) { + goto return_failure; + } + + return_failure: + return status; +} + +static sl_status_t gnss_max_m10s_set_packet_cfg_payload_size( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + size_t payload_size) +{ + sl_status_t success = SL_STATUS_OK; + sl_max_m10s_msg_data_t *msg_data_local = &(gnss_cfg_data->msg_data); + + if ((payload_size == 0) && (msg_data_local->payload_cfg != NULL)) { + free(msg_data_local->payload_cfg); + msg_data_local->payload_cfg = NULL; + gnss_cfg_data->packet_cfg.payload = msg_data_local->payload_cfg; + msg_data_local->packet_cfg_payloadsize = payload_size; + } else if (msg_data_local->payload_cfg == NULL) { + msg_data_local->payload_cfg = + (uint8_t *)malloc(payload_size * sizeof(uint8_t)); + gnss_cfg_data->packet_cfg.payload = msg_data_local->payload_cfg; + + if (msg_data_local->payload_cfg == NULL) { + success = SL_STATUS_FAIL; + msg_data_local->packet_cfg_payloadsize = 0; + } else { + msg_data_local->packet_cfg_payloadsize = payload_size; + } + } else { + uint8_t *new_payload = (uint8_t *)malloc(payload_size * sizeof(uint8_t)); + + if (new_payload == NULL) { + success = SL_STATUS_FAIL; + } else { + memcpy(new_payload, + msg_data_local->payload_cfg, + payload_size + <= msg_data_local->packet_cfg_payloadsize ? payload_size : msg_data_local->packet_cfg_payloadsize); + + free(msg_data_local->payload_cfg); + msg_data_local->payload_cfg = new_payload; + gnss_cfg_data->packet_cfg.payload = msg_data_local->payload_cfg; + msg_data_local->packet_cfg_payloadsize = payload_size; + } + } + + return (success); +} + +static sl_status_t gnss_max_m10s_ublox_is_connected( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait) +{ + uint8_t en; + bool result; + + if (gnss_max_m10s_ping(gnss_cfg_data) != SL_STATUS_OK) { + return SL_STATUS_FAIL; + } + + result = gnss_max_m10s_getval8(gnss_cfg_data, + UBLOX_CFG_I2C_INPORT_UBX, + &en, + VAL_LAYER_RAM, + max_wait); + + if (false == result) { + return SL_STATUS_FAIL; + } + + return SL_STATUS_OK; +} + +static sl_max_m10s_ublox_status_e gnss_max_m10s_getval( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint32_t key, + uint8_t layer, + uint16_t max_wait) +{ + uint8_t get_layer; + sl_max_m10s_ublox_status_e ret_val; + + gnss_cfg_data->packet_cfg.cls = UBX_CLASS_CFG; + gnss_cfg_data->packet_cfg.id = UBX_CFG_VALGET; + gnss_cfg_data->packet_cfg.len = 4 + 4 * 1; + gnss_cfg_data->packet_cfg.starting_spot = 0; + + memset(gnss_cfg_data->msg_data.payload_cfg, 0, gnss_cfg_data->packet_cfg.len); + + get_layer = VAL_LAYER_DEFAULT; + + if (layer == VAL_LAYER_RAM) { + get_layer = 0; + } else if (layer == VAL_LAYER_BBR) { + get_layer = 1; + } else if (layer == VAL_LAYER_FLASH) { + get_layer = 2; + } + + gnss_cfg_data->msg_data.payload_cfg[0] = 0; + gnss_cfg_data->msg_data.payload_cfg[1] = get_layer; + key &= ~UBX_CFG_SIZE_MASK; + gnss_cfg_data->msg_data.payload_cfg[4] = key >> 8 * 0; + gnss_cfg_data->msg_data.payload_cfg[5] = key >> 8 * 1; + gnss_cfg_data->msg_data.payload_cfg[6] = key >> 8 * 2; + gnss_cfg_data->msg_data.payload_cfg[7] = key >> 8 * 3; + gnss_cfg_data->active_packet_buffer = SL_MAX_M10S_UBLOX_PACKET_PACKETCFG; + + /// printf("getVal key: %lu\r\n",key); + ret_val = gnss_max_m10s_send_command(gnss_cfg_data, + max_wait, + false); + + return ret_val; +} + +static bool gnss_max_m10s_getval8(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint32_t key, + uint8_t *val, + uint8_t layer, + uint16_t max_wait) +{ + bool result = + (SL_MAX_M10S_UBLOX_STATUS_DATA_RECEIVED + == gnss_max_m10s_getval(gnss_cfg_data, key, layer, max_wait)); + + if (result) { + *val = gnss_max_m10s_extract_byte(&(gnss_cfg_data->packet_cfg), 8); + } + return result; +} + +sl_max_m10s_ublox_status_e gnss_max_m10s_send_command( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + bool expect_ack_only) +{ + sl_max_m10s_ubx_packet_t *outgoingUBX; + sl_max_m10s_ublox_status_e ret_val = SL_MAX_M10S_UBLOX_STATUS_SUCCESS; + + if (gnss_cfg_data->active_packet_buffer + == SL_MAX_M10S_UBLOX_PACKET_PACKETCFG) { + outgoingUBX = &(gnss_cfg_data->packet_cfg); + } else if (gnss_cfg_data->active_packet_buffer + == SL_MAX_M10S_UBLOX_PACKET_PACKETAUTO) { + outgoingUBX = &(gnss_cfg_data->packet_auto); + } else { + outgoingUBX = &(gnss_cfg_data->packet_buf); + } + + gnss_max_m10s_calc_checksum(outgoingUBX); + + ret_val = gnss_max_m10s_send_i2c_command(gnss_cfg_data, outgoingUBX); + + if (ret_val != SL_MAX_M10S_UBLOX_STATUS_SUCCESS) { + return ret_val; + } + + if (max_wait > 0) { + if ((outgoingUBX->cls == UBX_CLASS_CFG) || (expect_ack_only == true)) { + ret_val = gnss_max_m10s_wait_for_ack_response(gnss_cfg_data, + outgoingUBX, + outgoingUBX->cls, + outgoingUBX->id, + max_wait); + } else { + ret_val = gnss_max_m10s_wait_for_no_ack_response(gnss_cfg_data, + outgoingUBX, + outgoingUBX->cls, + outgoingUBX->id, + max_wait); + } + } + + return ret_val; +} + +static void gnss_max_m10s_calc_checksum(sl_max_m10s_ubx_packet_t *msg) +{ + msg->checksum_a = 0; + msg->checksum_b = 0; + + msg->checksum_a += msg->cls; + msg->checksum_b += msg->checksum_a; + + msg->checksum_a += msg->id; + msg->checksum_b += msg->checksum_a; + + msg->checksum_a += (msg->len & 0xFF); + msg->checksum_b += msg->checksum_a; + + msg->checksum_a += (msg->len >> 8); + msg->checksum_b += msg->checksum_a; + + for (uint16_t i = 0; i < msg->len; i++) { + msg->checksum_a += msg->payload[i]; + msg->checksum_b += msg->checksum_a; + } +} + +void gnss_max_m10s_add_to_checksum(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint8_t incoming) +{ + gnss_cfg_data->rolling_checksum_a += incoming; + gnss_cfg_data->rolling_checksum_b += gnss_cfg_data->rolling_checksum_a; +} + +static sl_max_m10s_ublox_status_e gnss_max_m10s_send_i2c_command( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + sl_max_m10s_ubx_packet_t *outgoingUBX) +{ + uint16_t bytes_left_to_send = outgoingUBX->len; + uint16_t start_spot = 0; + uint16_t i = 0; + + if (bytes_left_to_send + 8 <= I2C_TRANSACTION_SIZE) { + uint8_t buf[I2C_TRANSACTION_SIZE]; + buf[0] = UBX_SYNCH_1; + buf[1] = UBX_SYNCH_2; + buf[2] = outgoingUBX->cls; + buf[3] = outgoingUBX->id; + buf[4] = outgoingUBX->len & 0xFF; + buf[5] = outgoingUBX->len >> 8; + + for (; i < outgoingUBX->len; i++) { + buf[i + 6] = outgoingUBX->payload[start_spot + i]; + } + + buf[i + 6] = outgoingUBX->checksum_a; + buf[i + 7] = outgoingUBX->checksum_b; + + /// TODO : Debugging purpose. + + /** + * printf("sendI2cCommand dump\n"); + * for(i=0; i < bytes_left_to_send + 8; i++) { + * printf("0x%x ",buf[i]); + * } + */ + + if (gnss_max_m10s_write_bytes(gnss_cfg_data, buf, bytes_left_to_send + 8) + != bytes_left_to_send + 8) { + return SL_MAX_M10S_UBLOX_STATUS_I2C_COMM_FAILURE; + } + } else { + uint8_t buf[6]; + + buf[0] = UBX_SYNCH_1; + buf[1] = UBX_SYNCH_2; + buf[2] = outgoingUBX->cls; + buf[3] = outgoingUBX->id; + buf[4] = outgoingUBX->len & 0xFF; /// LSB + buf[5] = outgoingUBX->len >> 8; /// MSB + + if (gnss_max_m10s_write_bytes(gnss_cfg_data, buf, 6) != 6) { + return SL_MAX_M10S_UBLOX_STATUS_I2C_COMM_FAILURE; + } + + while (bytes_left_to_send > 1) { + uint16_t len = bytes_left_to_send; + uint16_t x; + + if (len > I2C_TRANSACTION_SIZE) { + len = I2C_TRANSACTION_SIZE; + } + + bytes_left_to_send -= len; + x = len; + + if ((start_spot + x) >= (outgoingUBX->len)) { + x = outgoingUBX->len - start_spot; + } + + if (gnss_max_m10s_write_bytes(gnss_cfg_data, + &outgoingUBX->payload[start_spot], + x) != x) { + return SL_MAX_M10S_UBLOX_STATUS_I2C_COMM_FAILURE; + } + + start_spot += x; + } + + if (bytes_left_to_send == 1) { + buf[0] = outgoingUBX->payload[start_spot]; + buf[1] = outgoingUBX->checksum_a; + buf[2] = outgoingUBX->checksum_b; + + if (gnss_max_m10s_write_bytes(gnss_cfg_data, buf, 3) != 3) { + return SL_MAX_M10S_UBLOX_STATUS_I2C_COMM_FAILURE; + } + } else { + buf[0] = outgoingUBX->checksum_a; + buf[1] = outgoingUBX->checksum_b; + + if (gnss_max_m10s_write_bytes(gnss_cfg_data, buf, 2) != 2) { + return SL_MAX_M10S_UBLOX_STATUS_I2C_COMM_FAILURE; + } + } + } + + return SL_MAX_M10S_UBLOX_STATUS_SUCCESS; +} + +static sl_max_m10s_ublox_status_e gnss_max_m10s_wait_for_ack_response( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + sl_max_m10s_ubx_packet_t *outgoingUBX, + uint8_t requested_class, + uint8_t requested_id, + uint16_t max_time) +{ + unsigned long start_time; + + gnss_cfg_data->packet_ack.valid = + SL_MAX_M10S_UBLOX_PACKET_VALIDITY_NOT_DEFINED; + gnss_cfg_data->packet_buf.valid = + SL_MAX_M10S_UBLOX_PACKET_VALIDITY_NOT_DEFINED; + gnss_cfg_data->packet_auto.valid = + SL_MAX_M10S_UBLOX_PACKET_VALIDITY_NOT_DEFINED; + gnss_cfg_data->packet_ack.class_and_id_match = + SL_MAX_M10S_UBLOX_PACKET_VALIDITY_NOT_DEFINED; + gnss_cfg_data->packet_buf.class_and_id_match = + SL_MAX_M10S_UBLOX_PACKET_VALIDITY_NOT_DEFINED; + gnss_cfg_data->packet_auto.class_and_id_match = + SL_MAX_M10S_UBLOX_PACKET_VALIDITY_NOT_DEFINED; + outgoingUBX->class_and_id_match = + SL_MAX_M10S_UBLOX_PACKET_VALIDITY_NOT_DEFINED; + outgoingUBX->valid = SL_MAX_M10S_UBLOX_PACKET_VALIDITY_NOT_DEFINED; + + start_time = gnss_max_m10s_milli_sec(); + + while (gnss_max_m10s_milli_sec() < (start_time + (unsigned long)max_time)) { + if (gnss_max_m10s_check_ublox_internal(gnss_cfg_data, + outgoingUBX, + requested_class, + requested_id) == SL_STATUS_OK) { + if ((outgoingUBX->class_and_id_match + == SL_MAX_M10S_UBLOX_PACKET_VALIDITY_VALID) + && (gnss_cfg_data->packet_ack.class_and_id_match + == SL_MAX_M10S_UBLOX_PACKET_VALIDITY_VALID) + && (outgoingUBX->valid == SL_MAX_M10S_UBLOX_PACKET_VALIDITY_VALID) + && (outgoingUBX->cls == requested_class) + && (outgoingUBX->id == requested_id)) { + return SL_MAX_M10S_UBLOX_STATUS_DATA_RECEIVED; + } else if ((outgoingUBX->class_and_id_match + == SL_MAX_M10S_UBLOX_PACKET_VALIDITY_NOT_DEFINED) + && (gnss_cfg_data->packet_ack.class_and_id_match + == SL_MAX_M10S_UBLOX_PACKET_VALIDITY_VALID)) { + return SL_MAX_M10S_UBLOX_STATUS_DATA_SENT; + } else if ((outgoingUBX->class_and_id_match + == SL_MAX_M10S_UBLOX_PACKET_VALIDITY_VALID) + && (gnss_cfg_data->packet_ack.class_and_id_match + == SL_MAX_M10S_UBLOX_PACKET_VALIDITY_VALID) + && ((outgoingUBX->cls != requested_class) + || (outgoingUBX->id != requested_id))) { + return SL_MAX_M10S_UBLOX_STATUS_DATA_OVERWRITTEN; + } else if ((gnss_cfg_data->packet_ack.class_and_id_match + == SL_MAX_M10S_UBLOX_PACKET_VALIDITY_VALID) + && (outgoingUBX->class_and_id_match + == SL_MAX_M10S_UBLOX_PACKET_VALIDITY_NOT_VALID) + && (outgoingUBX->valid + == SL_MAX_M10S_UBLOX_PACKET_VALIDITY_NOT_VALID)) { + return SL_MAX_M10S_UBLOX_STATUS_CRC_FAIL; + } else if (gnss_cfg_data->packet_ack.class_and_id_match + == SL_MAX_M10S_UBLOX_PACKET_NOTACKNOWLEDGED) { + return SL_MAX_M10S_UBLOX_STATUS_COMMAND_NACK; + } else if ((outgoingUBX->class_and_id_match + == SL_MAX_M10S_UBLOX_PACKET_VALIDITY_VALID) + && (gnss_cfg_data->packet_ack.class_and_id_match + == SL_MAX_M10S_UBLOX_PACKET_VALIDITY_NOT_VALID) + && (outgoingUBX->valid + == SL_MAX_M10S_UBLOX_PACKET_VALIDITY_VALID) + && (outgoingUBX->cls == requested_class) + && (outgoingUBX->id == requested_id)) { + return SL_MAX_M10S_UBLOX_STATUS_DATA_RECEIVED; + } else if ((outgoingUBX->class_and_id_match + == SL_MAX_M10S_UBLOX_PACKET_VALIDITY_NOT_VALID) + && (gnss_cfg_data->packet_ack.class_and_id_match + == SL_MAX_M10S_UBLOX_PACKET_VALIDITY_NOT_VALID)) { + return SL_MAX_M10S_UBLOX_STATUS_FAIL; + } else if ((outgoingUBX->class_and_id_match + == SL_MAX_M10S_UBLOX_PACKET_VALIDITY_VALID) + && (gnss_cfg_data->packet_ack.class_and_id_match + == SL_MAX_M10S_UBLOX_PACKET_VALIDITY_NOT_DEFINED)) { + } + } + + gnss_max_m10s_delay(1); + } + + if ((outgoingUBX->class_and_id_match + == SL_MAX_M10S_UBLOX_PACKET_VALIDITY_VALID) + && (gnss_cfg_data->packet_ack.class_and_id_match + == SL_MAX_M10S_UBLOX_PACKET_VALIDITY_NOT_DEFINED) + && (outgoingUBX->valid == SL_MAX_M10S_UBLOX_PACKET_VALIDITY_VALID) + && (outgoingUBX->cls == requested_class) + && (outgoingUBX->id == requested_id)) { + return SL_MAX_M10S_UBLOX_STATUS_DATA_RECEIVED; + } + + return SL_MAX_M10S_UBLOX_STATUS_TIMEOUT; +} + +static sl_max_m10s_ublox_status_e gnss_max_m10s_wait_for_no_ack_response( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + sl_max_m10s_ubx_packet_t *outgoingUBX, + uint8_t requested_class, + uint8_t requested_id, + uint16_t max_time) +{ + unsigned long start_time; + + gnss_cfg_data->packet_ack.valid = + SL_MAX_M10S_UBLOX_PACKET_VALIDITY_NOT_DEFINED; + gnss_cfg_data->packet_buf.valid = + SL_MAX_M10S_UBLOX_PACKET_VALIDITY_NOT_DEFINED; + gnss_cfg_data->packet_auto.valid = + SL_MAX_M10S_UBLOX_PACKET_VALIDITY_NOT_DEFINED; + gnss_cfg_data->packet_ack.class_and_id_match = + SL_MAX_M10S_UBLOX_PACKET_VALIDITY_NOT_DEFINED; + gnss_cfg_data->packet_buf.class_and_id_match = + SL_MAX_M10S_UBLOX_PACKET_VALIDITY_NOT_DEFINED; + gnss_cfg_data->packet_auto.class_and_id_match = + SL_MAX_M10S_UBLOX_PACKET_VALIDITY_NOT_DEFINED; + outgoingUBX->class_and_id_match = + SL_MAX_M10S_UBLOX_PACKET_VALIDITY_NOT_DEFINED; + outgoingUBX->valid = SL_MAX_M10S_UBLOX_PACKET_VALIDITY_NOT_DEFINED; + + start_time = gnss_max_m10s_milli_sec(); + + while (gnss_max_m10s_milli_sec() - start_time < max_time) { + if (gnss_max_m10s_check_ublox_internal(gnss_cfg_data, + outgoingUBX, + requested_class, + requested_id) == SL_STATUS_OK) { + if ((outgoingUBX->class_and_id_match + == SL_MAX_M10S_UBLOX_PACKET_VALIDITY_VALID) + && (outgoingUBX->valid == SL_MAX_M10S_UBLOX_PACKET_VALIDITY_VALID) + && (outgoingUBX->cls == requested_class) + && (outgoingUBX->id == requested_id)) { + return SL_MAX_M10S_UBLOX_STATUS_DATA_RECEIVED; + } else if ((outgoingUBX->class_and_id_match + == SL_MAX_M10S_UBLOX_PACKET_VALIDITY_VALID) + && ((outgoingUBX->cls != requested_class) + || (outgoingUBX->id != requested_id))) { + return SL_MAX_M10S_UBLOX_STATUS_DATA_OVERWRITTEN; + } else if ((outgoingUBX->class_and_id_match + == SL_MAX_M10S_UBLOX_PACKET_VALIDITY_NOT_DEFINED) + && (outgoingUBX->valid + == SL_MAX_M10S_UBLOX_PACKET_VALIDITY_VALID)) { + } else if (outgoingUBX->class_and_id_match + == SL_MAX_M10S_UBLOX_PACKET_VALIDITY_NOT_VALID) { + return SL_MAX_M10S_UBLOX_STATUS_CRC_FAIL; + } + } + + gnss_max_m10s_delay(1); + } + + return SL_MAX_M10S_UBLOX_STATUS_TIMEOUT; +} + +sl_status_t gnss_max_m10s_check_ublox_internal( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + sl_max_m10s_ubx_packet_t *incomingUBX, + uint8_t requested_class, + uint8_t requested_id) +{ + sl_status_t status = SL_STATUS_OK; + + status = gnss_max_m10s_check_ublox_i2c(gnss_cfg_data, + incomingUBX, + requested_class, + requested_id); + + return status; +} + +void gnss_max_m10s_delay(uint32_t period) +{ + for (uint32_t x = 0; x < MS_DELAY_COUNTER * period; x++) { + __NOP(); + } +} + +static sl_status_t gnss_max_m10s_check_ublox_i2c( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + sl_max_m10s_ubx_packet_t *incomingUBX, + uint8_t requested_class, + uint8_t requested_id) +{ + uint16_t bytes_to_read; + uint8_t bytes_returned; + uint8_t rx_byte = 0; + bool bytes_valid = true; + + bytes_to_read = 1; + + while (bytes_valid) { + bytes_returned = gnss_max_m10s_read_bytes(gnss_cfg_data, &rx_byte, + (uint8_t)bytes_to_read); + + if (bytes_returned) { + gnss_max_m10s_process(gnss_cfg_data, rx_byte, incomingUBX, + requested_class, requested_id); + + if (rx_byte == 0xFF) { + bytes_valid = false; + } + } else { + if (gnss_cfg_data->reset_current_sentence_on_bus_error) { + gnss_cfg_data->current_sentence = SL_MAX_M10S_UBLOX_SENTENCE_TYPE_NONE; + return SL_STATUS_FAIL; + } + } + } + + return SL_STATUS_OK; +} + +bool gnss_max_m10s_auto_lookup(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t *max_size) +{ + uint8_t ID; + + if (gnss_cfg_data->active_packet_buffer + == SL_MAX_M10S_UBLOX_PACKET_PACKETCFG) { + ID = gnss_cfg_data->packet_cfg.id; + } else if (gnss_cfg_data->active_packet_buffer + == SL_MAX_M10S_UBLOX_PACKET_PACKETAUTO) { + ID = gnss_cfg_data->packet_auto.id; + } else { + ID = gnss_cfg_data->packet_buf.id; + } + + if (max_size != NULL) { + *max_size = 0; + } + + if (ID == UBX_NAV_PVT) { + if (max_size != NULL) { + *max_size = UBX_NAV_PVT_LEN; + } + + return (gnss_cfg_data->packetUBXNAVPVT != NULL); + } else if (ID == UBX_NAV_CLOCK) { + if (max_size != NULL) { + *max_size = UBX_NAV_CLOCK_LEN; + } + + return (gnss_cfg_data->packetUBXNAVCLOCK != NULL); + } else if (ID == UBX_NAV_DOP) { + if (max_size != NULL) { + *max_size = UBX_NAV_DOP_LEN; + } + + return (gnss_cfg_data->packetUBXNAVDOP != NULL); + } else if (ID == UBX_NAV_EOE) { + if (max_size != NULL) { + *max_size = UBX_NAV_EOE_LEN; + } + + return (gnss_cfg_data->packetUBXNAVEOE != NULL); + } else if (ID == UBX_NAV_POSLLH) { + if (max_size != NULL) { + *max_size = UBX_NAV_POSLLH_LEN; + } + + return (gnss_cfg_data->packetUBXNAVPOSLLH != NULL); + } else if (ID == UBX_NAV_SAT) { + if (max_size != NULL) { + *max_size = UBX_NAV_SAT_LEN; + } + + return (gnss_cfg_data->packetUBXNAVSAT != NULL); + } else if (ID == UBX_NAV_SIG) { + if (max_size != NULL) { + *max_size = UBX_NAV_SIG_MAX_LEN; + } + + return (gnss_cfg_data->packetUBXNAVSIG != NULL); + } else if (ID == UBX_NAV_STATUS) { + if (max_size != NULL) { + *max_size = UBX_NAV_STATUS_LEN; + } + + return (gnss_cfg_data->packetUBXNAVSTATUS != NULL); + } else if (ID == UBX_NAV_TIMELS) { + if (max_size != NULL) { + *max_size = UBX_NAV_TIMELS_LEN; + } + + return (gnss_cfg_data->packetUBXNAVTIMELS != NULL); + } else if (ID == UBX_NAV_TIMEUTC) { + if (max_size != NULL) { + *max_size = UBX_NAV_TIMEUTC_LEN; + } + + return (gnss_cfg_data->packetUBXNAVTIMEUTC != NULL); + } else if (ID == UBX_NAV_VELNED) { + if (max_size != NULL) { + *max_size = UBX_NAV_VELNED_LEN; + } + + return (gnss_cfg_data->packetUBXNAVVELNED != NULL); + } + + return false; +} + +static void gnss_max_m10s_process(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint8_t incoming, + sl_max_m10s_ubx_packet_t *incomingUBX, + uint8_t requested_class, + uint8_t requested_id) +{ + static volatile uint8_t stored_class = 0; + static volatile uint8_t stored_id = 0; + uint16_t maxPayload = 0; + + if (requested_class || requested_id) { + stored_class = requested_class; + stored_id = requested_id; + } + + if ((gnss_cfg_data->current_sentence == SL_MAX_M10S_UBLOX_SENTENCE_TYPE_NONE) + || (gnss_cfg_data->current_sentence + == SL_MAX_M10S_UBLOX_SENTENCE_TYPE_NMEA)) { + if (incoming == UBX_SYNCH_1) { + gnss_cfg_data->ubx_frame_counter = 0; + gnss_cfg_data->current_sentence = SL_MAX_M10S_UBLOX_SENTENCE_TYPE_UBX; + gnss_cfg_data->packet_buf.counter = 0; + gnss_cfg_data->ignore_this_payload = false; + gnss_cfg_data->active_packet_buffer = SL_MAX_M10S_UBLOX_PACKET_PACKETBUF; + } else if (incoming == '$') { + gnss_cfg_data->nmea_byte_counter = 0; + gnss_cfg_data->current_sentence = SL_MAX_M10S_UBLOX_SENTENCE_TYPE_NMEA; + } else if (incoming == 0xD3) { + gnss_cfg_data->rtcm_frame_counter = 0; + gnss_cfg_data->current_sentence = SL_MAX_M10S_UBLOX_SENTENCE_TYPE_RTCM; + } else { + // printf("Unknown character"); + } + } + + if (gnss_cfg_data->current_sentence == SL_MAX_M10S_UBLOX_SENTENCE_TYPE_UBX) { + if ((gnss_cfg_data->ubx_frame_counter == 0) && (incoming != UBX_SYNCH_1)) { + gnss_cfg_data->current_sentence = SL_MAX_M10S_UBLOX_SENTENCE_TYPE_NONE; + } else if ((gnss_cfg_data->ubx_frame_counter == 1) + && (incoming != UBX_SYNCH_2)) { + gnss_cfg_data->current_sentence = SL_MAX_M10S_UBLOX_SENTENCE_TYPE_NONE; + } else if (gnss_cfg_data->ubx_frame_counter == 2) { + gnss_cfg_data->packet_buf.cls = incoming; + gnss_cfg_data->rolling_checksum_a = 0; + gnss_cfg_data->rolling_checksum_b = 0; + gnss_cfg_data->packet_buf.counter = 0; + gnss_cfg_data->packet_buf.valid = + SL_MAX_M10S_UBLOX_PACKET_VALIDITY_NOT_DEFINED; + gnss_cfg_data->packet_buf.starting_spot = incomingUBX->starting_spot; + } else if (gnss_cfg_data->ubx_frame_counter == 3) { + gnss_cfg_data->active_packet_buffer = SL_MAX_M10S_UBLOX_PACKET_PACKETBUF; + gnss_cfg_data->packet_buf.id = incoming; + + if (gnss_cfg_data->packet_buf.cls != UBX_CLASS_ACK) { + bool log_because_auto = + gnss_max_m10s_auto_lookup(gnss_cfg_data, + &maxPayload); + + if ((gnss_cfg_data->packet_buf.cls == stored_class) + && (gnss_cfg_data->packet_buf.id == stored_id)) { + gnss_cfg_data->active_packet_buffer = + SL_MAX_M10S_UBLOX_PACKET_PACKETCFG; + incomingUBX->cls = gnss_cfg_data->packet_buf.cls; + incomingUBX->id = gnss_cfg_data->packet_buf.id; + incomingUBX->counter = gnss_cfg_data->packet_buf.counter; + } else if (log_because_auto) { + if (gnss_cfg_data->msg_data.payload_auto != NULL) { + free(gnss_cfg_data->msg_data.payload_auto); + + gnss_cfg_data->msg_data.payload_auto = NULL; + gnss_cfg_data->packet_auto.payload = + gnss_cfg_data->msg_data.payload_auto; + } + + if ((!log_because_auto)) { + maxPayload = UBX_MAX_LENGTH; + } + + gnss_cfg_data->packet_auto.payload = (uint8_t *)malloc( + maxPayload * sizeof(uint8_t)); + + if (gnss_cfg_data->packet_auto.payload == NULL) { + gnss_cfg_data->active_packet_buffer = + SL_MAX_M10S_UBLOX_PACKET_PACKETCFG; + incomingUBX->cls = gnss_cfg_data->packet_buf.cls; + incomingUBX->id = gnss_cfg_data->packet_buf.id; + incomingUBX->counter = gnss_cfg_data->packet_buf.counter; + } else { + gnss_cfg_data->active_packet_buffer = + SL_MAX_M10S_UBLOX_PACKET_PACKETAUTO; + gnss_cfg_data->packet_auto.cls = gnss_cfg_data->packet_buf.cls; + gnss_cfg_data->packet_auto.id = gnss_cfg_data->packet_buf.id; + gnss_cfg_data->packet_auto.counter = + gnss_cfg_data->packet_buf.counter; + gnss_cfg_data->packet_auto.starting_spot = + gnss_cfg_data->packet_buf.starting_spot; + } + } else { + gnss_cfg_data->ignore_this_payload = true; + } + } + } else if (gnss_cfg_data->ubx_frame_counter == 4) { + gnss_cfg_data->packet_buf.len = incoming; + } else if (gnss_cfg_data->ubx_frame_counter == 5) { + gnss_cfg_data->packet_buf.len |= incoming << 8; + } else if (gnss_cfg_data->ubx_frame_counter == 6) { + if (gnss_cfg_data->packet_buf.len == 0) { + gnss_cfg_data->packet_buf.checksum_a = incoming; + } else { + gnss_cfg_data->packet_buf.payload[0] = incoming; + } + } else if (gnss_cfg_data->ubx_frame_counter == 7) { + if (gnss_cfg_data->packet_buf.len == 0) { + gnss_cfg_data->packet_buf.checksum_b = incoming; + } else if (gnss_cfg_data->packet_buf.len == 1) { + gnss_cfg_data->packet_buf.checksum_a = incoming; + } else { /// Length is >= 2 so this must be a payload byte + gnss_cfg_data->packet_buf.payload[1] = incoming; + } + + /// if a packet is already in process or ack, class or ID of the packet matches + if ((gnss_cfg_data->active_packet_buffer + == SL_MAX_M10S_UBLOX_PACKET_PACKETBUF) + && (gnss_cfg_data->packet_buf.cls == UBX_CLASS_ACK) + && (gnss_cfg_data->packet_buf.payload[0] == stored_class) + && (gnss_cfg_data->packet_buf.payload[1] == stored_id)) { + /// Check if .len is 2 + if (gnss_cfg_data->packet_buf.len == 2) { + gnss_cfg_data->active_packet_buffer = + SL_MAX_M10S_UBLOX_PACKET_PACKETACK; + gnss_cfg_data->packet_ack.cls = gnss_cfg_data->packet_buf.cls; + gnss_cfg_data->packet_ack.id = gnss_cfg_data->packet_buf.id; + gnss_cfg_data->packet_ack.len = gnss_cfg_data->packet_buf.len; + gnss_cfg_data->packet_ack.counter = gnss_cfg_data->packet_buf.counter; + gnss_cfg_data->packet_ack.payload[0] = + gnss_cfg_data->packet_buf.payload[0]; + gnss_cfg_data->packet_ack.payload[1] = + gnss_cfg_data->packet_buf.payload[1]; + } + } + } + + gnss_max_m10s_process_ubx(gnss_cfg_data, incoming, stored_class, stored_id); + + gnss_cfg_data->ubx_frame_counter++; + } else if (gnss_cfg_data->current_sentence + == SL_MAX_M10S_UBLOX_SENTENCE_TYPE_NMEA) { /// Process incoming NMEA mesages. + if ((gnss_cfg_data->nmea_byte_counter == 0) && (incoming != '$')) { + gnss_cfg_data->current_sentence = SL_MAX_M10S_UBLOX_SENTENCE_TYPE_NONE; /// Reset. + } else if ((gnss_cfg_data->nmea_byte_counter == 1) && (incoming != 'G')) { + gnss_cfg_data->current_sentence = SL_MAX_M10S_UBLOX_SENTENCE_TYPE_NONE; /// Reset. + } else if ((gnss_cfg_data->nmea_byte_counter >= 0) + && (gnss_cfg_data->nmea_byte_counter <= 5)) { + gnss_cfg_data->nmea_address_field[gnss_cfg_data->nmea_byte_counter] = + incoming; /// Store the start character and NMEA address field + } + + if (gnss_cfg_data->nmea_byte_counter == 5) { + /// set gnss_cfg_data->signs_of_life to true if the NMEA header is valid + if (!gnss_cfg_data->signs_of_life) { + gnss_cfg_data->signs_of_life = gnss_max_m10s_is_nmea_header_valid( + gnss_cfg_data); + } + + /// Check if automatic storage is available for this message + if (gnss_max_m10s_is_nmea_auto(gnss_cfg_data)) { + uint8_t *length_ptr = + gnss_max_m10s_get_nmea_working_length_ptr(gnss_cfg_data); /// Get a pointer to the working copy length + uint8_t *nmea_ptr = gnss_max_m10s_get_nmea_working_ptr(gnss_cfg_data); /// Get a pointer to the working copy NMEA data + uint8_t nmea_max_length = gnss_max_m10s_get_nmea_max_length( + gnss_cfg_data); + *length_ptr = 6; /// Set the working copy length + + memset(nmea_ptr, 0, nmea_max_length); /// Clear the working copy + + /// Copy the start character and address field into the working copy + memcpy(nmea_ptr, &gnss_cfg_data->nmea_address_field[0], 6); + } + + /// Check if it should be passed to processNMEA + if (gnss_max_m10s_process_current_nmea(gnss_cfg_data)) { + for (uint8_t i = 0; i < 6; i++) { + /// Process the start character and address field + gnss_max_m10s_process_nmea(gnss_cfg_data->nmea_address_field[i], + gnss_cfg_data->nmea_data); + } + } + } + + if ((gnss_cfg_data->nmea_byte_counter > 5) + || (gnss_cfg_data->nmea_byte_counter < 0)) { + if (gnss_max_m10s_is_nmea_auto(gnss_cfg_data)) { + uint8_t *length_ptr = + gnss_max_m10s_get_nmea_working_length_ptr(gnss_cfg_data); /// Get a pointer to the working copy length + uint8_t *nmea_ptr = gnss_max_m10s_get_nmea_working_ptr(gnss_cfg_data); /// Get a pointer to the working copy NMEA data + uint8_t nmea_max_length = gnss_max_m10s_get_nmea_max_length( + gnss_cfg_data); + + if (*length_ptr < nmea_max_length) { + *(nmea_ptr + *length_ptr) = incoming; /// Store the character + *length_ptr = *length_ptr + 1; /// Increment the length + + if (*length_ptr == nmea_max_length) { + /// For Debugging: + + // printf("Process: NMEA buffer is full\r\n"); + } + } + } + + if (gnss_max_m10s_process_current_nmea(gnss_cfg_data)) { + gnss_max_m10s_process_nmea(incoming, + gnss_cfg_data->nmea_data); + } + } + + if (incoming == '*') { + gnss_cfg_data->nmea_byte_counter = -5; + } + + gnss_cfg_data->nmea_byte_counter++; + + if (gnss_cfg_data->nmea_byte_counter + == gnss_cfg_data->max_nmea_byte_count) { + gnss_cfg_data->nmea_byte_counter = SL_MAX_M10S_UBLOX_SENTENCE_TYPE_NONE; + } + + if (gnss_cfg_data->nmea_byte_counter == 0) { + if (gnss_max_m10s_is_nmea_auto(gnss_cfg_data)) { + uint8_t *working_length_ptr = + gnss_max_m10s_get_nmea_working_length_ptr(gnss_cfg_data); /// Get a pointer to the working copy length + uint8_t *working_nmea_ptr = + gnss_max_m10s_get_nmea_working_ptr(gnss_cfg_data); /// Get a pointer to the working copy NMEA data + uint8_t nmea_max_length = gnss_max_m10s_get_nmea_max_length( + gnss_cfg_data); + + /// Check the checksum + uint8_t nmea_checksum = 0; + uint8_t chars_checked = 1; /// Start after the $ + uint8_t this_char = '\0'; + + while ((chars_checked < (nmea_max_length - 1)) + && (chars_checked < ((*working_length_ptr) - 4)) + && (this_char != '*')) { + this_char = *(working_nmea_ptr + chars_checked); /// Get a char from the working copy + /// Ex-or the char into the checksum except '*' + if (this_char != '*') { + nmea_checksum ^= this_char; + } + chars_checked++; + } + + if (this_char == '*') { + uint8_t expected_checksum_1 = (nmea_checksum >> 4) + '0'; + + if (expected_checksum_1 >= ':') { + expected_checksum_1 += 'A' - ':'; + } + uint8_t expected_checksum_2 = (nmea_checksum & 0x0F) + '0'; + + if (expected_checksum_2 >= ':') { + expected_checksum_2 += 'A' - ':'; + } + + if ((expected_checksum_1 == *(working_nmea_ptr + chars_checked)) + && (expected_checksum_2 + == *(working_nmea_ptr + chars_checked + 1))) { + uint8_t *complete_length_ptr = + gnss_max_m10s_get_nmea_complete_length_ptr(gnss_cfg_data); /// Get a pointer to the complete copy length + uint8_t *complete_nmea_ptr = + gnss_max_m10s_get_complete_copy_nmea(gnss_cfg_data); /// Get a pointer to the complete copy NMEA data + + memset(complete_nmea_ptr, 0, nmea_max_length); /// Clear the previous complete copy + memcpy(complete_nmea_ptr, working_nmea_ptr, *working_length_ptr); /// Copy the working copy into the complete copy + + *complete_length_ptr = *working_length_ptr; /// Update the length + sl_max_m10s_nmea_automatic_flags_t *flags_ptr = + gnss_max_m10s_get_nmea_flags_ptr(gnss_cfg_data); /// Get a pointer to the flags + sl_max_m10s_nmea_automatic_flags_t flags_copy = *flags_ptr; + + flags_copy.flags.bits.complete_copy_valid = 1; /// Set the complete copy valid flag + flags_copy.flags.bits.complete_copy_read = 0; /// Clear the complete copy read flag + + *flags_ptr = flags_copy; /// Update the flags + } + } + } + gnss_cfg_data->current_sentence = SL_MAX_M10S_UBLOX_SENTENCE_TYPE_NONE; // All done! + } + } +} + +uint32_t gnss_max_m10s_milli_sec() +{ + return sl_sleeptimer_get_tick_count(); +} + +static uint16_t gnss_max_m10s_file_buffer_space_available( + sl_max_m10s_cfg_data_t *gnss_cfg_data) +{ + return (FILE_BUFFER_SIZE - gnss_max_m10s_file_buffer_used(gnss_cfg_data)); +} + +static uint16_t gnss_max_m10s_file_buffer_used( + sl_max_m10s_cfg_data_t *gnss_cfg_data) +{ + if (gnss_cfg_data->file_buffer_head >= gnss_cfg_data->file_buffer_tail) { + return (gnss_cfg_data->file_buffer_head - gnss_cfg_data->file_buffer_tail); + } else { + return ((uint16_t)(((uint32_t)(gnss_cfg_data->file_buffer_head) + + (uint32_t)FILE_BUFFER_SIZE) + - (uint32_t)(gnss_cfg_data->file_buffer_tail))); + } +} + +bool gnss_max_m10s_store_packet(sl_max_m10s_cfg_data_t *gnss_cfg_data, + sl_max_m10s_ubx_packet_t *msg) +{ + uint16_t totalLength; + uint8_t sync_chars[] = { UBX_SYNCH_1, UBX_SYNCH_2 }; /// Store the two sync chars + uint8_t msg_length[2]; + + if ((gnss_cfg_data->ubx_file_buffer == NULL) || (FILE_BUFFER_SIZE == 0)) { + return false; + } + + totalLength = msg->len + 8; /// Total length. Include sync chars, class, id, length and checksum bytes + + if (totalLength > gnss_max_m10s_file_buffer_space_available(gnss_cfg_data)) { + return false; + } + + gnss_max_m10s_write_file_buffer(gnss_cfg_data, sync_chars, 2); + + /// Store the Class & ID + gnss_max_m10s_write_file_buffer(gnss_cfg_data, &msg->cls, 1); + gnss_max_m10s_write_file_buffer(gnss_cfg_data, &msg->id, 1); + + /// Store the length + msg_length[0] = msg->len & 0xFF; + msg_length[1] = msg->len >> 8; + + gnss_max_m10s_write_file_buffer(gnss_cfg_data, msg_length, 2); + + /// Store the payload + gnss_max_m10s_write_file_buffer(gnss_cfg_data, msg->payload, msg->len); + + /// Store the checksum + gnss_max_m10s_write_file_buffer(gnss_cfg_data, &msg->checksum_a, 1); + gnss_max_m10s_write_file_buffer(gnss_cfg_data, &msg->checksum_b, 1); + + return true; +} + +static void gnss_max_m10s_write_file_buffer( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint8_t *the_bytes, + uint16_t num_bytes) +{ + uint16_t bytes_before_wrapped_around = FILE_BUFFER_SIZE + - gnss_cfg_data->file_buffer_head; + uint16_t bytes_left_to_copy; + uint16_t bytes_in_buffer; + + if (bytes_before_wrapped_around > num_bytes) { + bytes_before_wrapped_around = num_bytes; + } + + /// Copy the data into the buffer + memcpy(&(gnss_cfg_data->ubx_file_buffer[gnss_cfg_data->file_buffer_head]), + the_bytes, + bytes_before_wrapped_around); + + bytes_left_to_copy = num_bytes - bytes_before_wrapped_around; + + if (bytes_left_to_copy > 0) { + memcpy(&(gnss_cfg_data->ubx_file_buffer[0]), + &the_bytes[bytes_before_wrapped_around], + bytes_left_to_copy); + gnss_cfg_data->file_buffer_head = bytes_left_to_copy; + } else { + gnss_cfg_data->file_buffer_head += num_bytes; + } + + bytes_in_buffer = gnss_max_m10s_file_buffer_used(gnss_cfg_data); + + if (bytes_in_buffer > gnss_cfg_data->file_buffer_max_avail) { + gnss_cfg_data->file_buffer_max_avail = bytes_in_buffer; + } +} + +sl_status_t gnss_max_m10s_set_i2c_output(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint8_t comSettings, + uint8_t layer, + uint16_t max_wait) +{ + uint8_t value; + sl_status_t result; + + result = gnss_max_m10s_new_cfg_valset(gnss_cfg_data, layer); + + value = (uint8_t) (comSettings & COM_TYPE_UBX) == 0 ? 0 : 1; + result &= gnss_max_m10s_add_cfg_valset(gnss_cfg_data, + UBLOX_CFG_I2C_OUTPORT_UBX, + &value, 1); + + value = (uint8_t) (comSettings & COM_TYPE_NMEA) == 0 ? 0 : 1; + result &= gnss_max_m10s_add_cfg_valset(gnss_cfg_data, + UBLOX_CFG_I2C_OUTPORT_NMEA, + &value, 1); + + result &= gnss_max_m10s_send_cfg_valset(gnss_cfg_data, max_wait); + + return SL_STATUS_OK; +} + +static sl_status_t gnss_max_m10s_new_cfg_valset( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint8_t layer) +{ + gnss_cfg_data->packet_cfg.cls = UBX_CLASS_CFG; + gnss_cfg_data->packet_cfg.id = UBX_CFG_VALSET; + gnss_cfg_data->packet_cfg.len = 4; + gnss_cfg_data->packet_cfg.starting_spot = 0; + gnss_cfg_data->num_cfg_keys = 0; + + memset(gnss_cfg_data->msg_data.payload_cfg, + 0, + gnss_cfg_data->msg_data.packet_cfg_payloadsize); + + gnss_cfg_data->msg_data.payload_cfg[0] = 0; + gnss_cfg_data->msg_data.payload_cfg[1] = layer; + + return SL_STATUS_OK; +} + +static sl_status_t gnss_max_m10s_add_cfg_valset( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint32_t key, + uint8_t *value, + uint8_t N) +{ + gnss_cfg_data->active_packet_buffer = SL_MAX_M10S_UBLOX_PACKET_PACKETCFG; + + if ((gnss_cfg_data->auto_send_at_space_remaining > 0) + && (gnss_cfg_data->packet_cfg.len + >= (gnss_cfg_data->msg_data.packet_cfg_payloadsize + - gnss_cfg_data->auto_send_at_space_remaining))) { + if (gnss_max_m10s_send_command(gnss_cfg_data, + GNSS_POLL_MAX_TIMEOUT, + false) + != SL_MAX_M10S_UBLOX_STATUS_DATA_SENT) { + return SL_STATUS_FAIL; + } + + gnss_cfg_data->packet_cfg.len = 4; + gnss_cfg_data->packet_cfg.starting_spot = 0; + gnss_cfg_data->num_cfg_keys = 0; + + memset(&(gnss_cfg_data->msg_data.payload_cfg[4]), + 0, + gnss_cfg_data->msg_data.packet_cfg_payloadsize - 4); + } + + if (gnss_cfg_data->packet_cfg.len + >= (gnss_cfg_data->msg_data.packet_cfg_payloadsize - (4 + N))) { + return SL_STATUS_FAIL; + } + + if (gnss_cfg_data->num_cfg_keys == CFG_VALSET_MAX_KEYS) { + return SL_STATUS_FAIL; + } + + key &= ~UBX_CFG_SIZE_MASK; + + for (uint8_t i = 0; i < 4; i++) { + gnss_cfg_data->msg_data.payload_cfg[gnss_cfg_data->packet_cfg.len + + i] = key >> (8 * i); + } + + for (uint8_t i = 0; i < N; i++) { + gnss_cfg_data->msg_data.payload_cfg[gnss_cfg_data->packet_cfg.len + i + + 4] = *value++; + } + + gnss_cfg_data->packet_cfg.len = gnss_cfg_data->packet_cfg.len + 4 + N; + gnss_cfg_data->num_cfg_keys++; + + return SL_STATUS_OK; +} + +static sl_status_t gnss_max_m10s_send_cfg_valset( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait) +{ + gnss_cfg_data->active_packet_buffer = SL_MAX_M10S_UBLOX_PACKET_PACKETCFG; + + if (0 == gnss_cfg_data->num_cfg_keys) { + return SL_STATUS_OK; + } + + bool success = gnss_max_m10s_send_command(gnss_cfg_data, + max_wait, + false) + == SL_MAX_M10S_UBLOX_STATUS_DATA_SENT; + + if (success) { + gnss_cfg_data->num_cfg_keys = 0; + } + + return SL_STATUS_OK; +} + +sl_status_t gnss_max_m10s_get_nav_pvt(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait) +{ + if (gnss_cfg_data->protocol_type != SL_MAX_M10S_PROTOCOL_NMEA) { + return gnss_max_m10s_get_navpvt_ubx(gnss_cfg_data, max_wait); + } else { + return SL_STATUS_NOT_AVAILABLE; + } +} + +sl_status_t gnss_max_m10s_get_navstatus(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait) +{ + if (gnss_cfg_data->protocol_type != SL_MAX_M10S_PROTOCOL_NMEA) { + return gnss_max_m10s_get_navstatus_ubx(gnss_cfg_data, max_wait); + } else { + return SL_STATUS_NOT_AVAILABLE; + } +} + +sl_status_t gnss_max_m10s_get_navepoch(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait) +{ + if (gnss_cfg_data->protocol_type != SL_MAX_M10S_PROTOCOL_NMEA) { + return gnss_max_m10s_get_navepoch_ubx(gnss_cfg_data, + max_wait); + } else { + return SL_STATUS_NOT_AVAILABLE; + } +} + +sl_status_t gnss_max_m10s_get_navsat(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait) +{ + if (gnss_cfg_data->protocol_type != SL_MAX_M10S_PROTOCOL_NMEA) { + if (SL_STATUS_OK + == gnss_max_m10s_set_packet_cfg_payload_size(gnss_cfg_data, + UBX_NAV_SAT_LEN)) { + return gnss_max_m10s_get_navsat_ubx(gnss_cfg_data, max_wait); + } else { + return SL_STATUS_FAIL; + } + } else { + return SL_STATUS_NOT_AVAILABLE; + } +} + +sl_status_t gnss_max_m10s_get_navsig(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait) +{ + if (gnss_cfg_data->protocol_type != SL_MAX_M10S_PROTOCOL_NMEA) { + if (SL_STATUS_OK == gnss_max_m10s_set_packet_cfg_payload_size(gnss_cfg_data, + UBX_NAV_SAT_LEN)) + { + return gnss_max_m10s_get_navsig_ubx(gnss_cfg_data, max_wait); + } else { + return SL_STATUS_FAIL; + } + } else { + return SL_STATUS_NOT_AVAILABLE; + } +} + +sl_status_t gnss_max_m10s_get_navdop(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait) +{ + if (gnss_cfg_data->protocol_type != SL_MAX_M10S_PROTOCOL_NMEA) { + return gnss_max_m10s_get_navdop_ubx(gnss_cfg_data, max_wait); + } else { + return SL_STATUS_NOT_AVAILABLE; + } +} + +sl_status_t gnss_max_m10s_get_navposllh(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait) +{ + if (gnss_cfg_data->protocol_type != SL_MAX_M10S_PROTOCOL_NMEA) { + return gnss_max_m10s_get_navposllh_ubx(gnss_cfg_data, max_wait); + } else { + return SL_STATUS_NOT_AVAILABLE; + } +} + +sl_status_t gnss_max_m10s_get_navtimels(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait) +{ + if (gnss_cfg_data->protocol_type != SL_MAX_M10S_PROTOCOL_NMEA) { + return gnss_max_m10s_get_navtimels_ubx(gnss_cfg_data, max_wait); + } else { + return SL_STATUS_NOT_AVAILABLE; + } +} + +sl_status_t gnss_max_m10s_get_navtimeutc(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait) +{ + if (gnss_cfg_data->protocol_type != SL_MAX_M10S_PROTOCOL_NMEA) { + return gnss_max_m10s_get_navtimeutc_ubx(gnss_cfg_data, max_wait); + } else { + return SL_STATUS_NOT_AVAILABLE; + } +} + +sl_status_t gnss_max_m10s_get_navclock(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait) +{ + if (gnss_cfg_data->protocol_type != SL_MAX_M10S_PROTOCOL_NMEA) { + return gnss_max_m10s_get_navclock_ubx(gnss_cfg_data, max_wait); + } else { + return SL_STATUS_NOT_AVAILABLE; + } +} + +sl_status_t gnss_max_m10s_get_navvelned(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait) +{ + if (gnss_cfg_data->protocol_type != SL_MAX_M10S_PROTOCOL_NMEA) { + return gnss_max_m10s_get_navvelned_ubx(gnss_cfg_data, max_wait); + } else { + return SL_STATUS_NOT_AVAILABLE; + } +} + +sl_status_t gnss_max_m10s_get_fix_type(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + uint8_t *fix_type) +{ + sl_status_t status = SL_STATUS_OK; + + if (gnss_cfg_data->protocol_type != SL_MAX_M10S_PROTOCOL_NMEA) { + status = gnss_max_m10s_get_navpvt_ubx(gnss_cfg_data, max_wait); + + *fix_type = gnss_cfg_data->packetUBXNAVPVT->data.fixType; + } else { + status = gnss_max_m10s_get_quality_nmea(gnss_cfg_data, fix_type, max_wait); + } + + return status; +} + +sl_status_t gnss_max_m10s_get_satellite_number( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + uint8_t *satellite) +{ + sl_status_t status; + + if (gnss_cfg_data->protocol_type != SL_MAX_M10S_PROTOCOL_NMEA) { + status = gnss_max_m10s_get_navpvt_ubx(gnss_cfg_data, max_wait); + + *satellite = gnss_cfg_data->packetUBXNAVPVT->data.numSV; + } else { + status = + gnss_max_m10s_get_satellite_nmea(gnss_cfg_data, satellite, max_wait); + } + return status; +} + +sl_status_t gnss_max_m10s_get_longitude(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + int32_t *longitude) +{ + sl_status_t status; + + if (gnss_cfg_data->protocol_type != SL_MAX_M10S_PROTOCOL_NMEA) { + status = gnss_max_m10s_get_navpvt_ubx(gnss_cfg_data, max_wait); + + *longitude = gnss_cfg_data->packetUBXNAVPVT->data.lon; + } else { + status = + gnss_max_m10s_get_longitude_nmea(gnss_cfg_data, longitude, max_wait); + } + return status; +} + +sl_status_t gnss_max_m10s_get_latitude(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + int32_t *latitude) +{ + sl_status_t status; + + if (gnss_cfg_data->protocol_type != SL_MAX_M10S_PROTOCOL_NMEA) { + status = gnss_max_m10s_get_navpvt_ubx(gnss_cfg_data, max_wait); + + *latitude = gnss_cfg_data->packetUBXNAVPVT->data.lat; + } else { + status = gnss_max_m10s_get_latitude_nmea(gnss_cfg_data, latitude, max_wait); + } + + return status; +} + +sl_status_t gnss_max_m10s_get_altitude_msl( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + int32_t *altitude_msl) +{ + sl_status_t status; + + if (gnss_cfg_data->protocol_type != SL_MAX_M10S_PROTOCOL_NMEA) { + status = gnss_max_m10s_get_navpvt_ubx(gnss_cfg_data, max_wait); + + *altitude_msl = gnss_cfg_data->packetUBXNAVPVT->data.hMSL; + } else { + status = gnss_max_m10s_get_altitude_msl_nmea(gnss_cfg_data, + altitude_msl, + max_wait); + } + return status; +} + +sl_status_t gnss_max_m10s_get_altitude(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + int32_t *altitude) +{ + sl_status_t status; + + if (gnss_cfg_data->protocol_type != SL_MAX_M10S_PROTOCOL_NMEA) { + status = gnss_max_m10s_get_navpvt_ubx(gnss_cfg_data, max_wait); + + *altitude = gnss_cfg_data->packetUBXNAVPVT->data.height; + } else { + status = SL_STATUS_NOT_AVAILABLE; + } + return status; +} + +sl_status_t gnss_max_m10s_get_carrier_solution( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + int8_t *carrier_solution) +{ + sl_status_t status; + + if (gnss_cfg_data->protocol_type != SL_MAX_M10S_PROTOCOL_NMEA) { + status = gnss_max_m10s_get_navpvt_ubx(gnss_cfg_data, max_wait); + + *carrier_solution = + gnss_cfg_data->packetUBXNAVPVT->data.solution_flags.bits.carrSoln; + } else { + status = SL_STATUS_NOT_AVAILABLE; + } + return status; +} + +sl_status_t gnss_max_m10s_get_differential_solution( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + bool *differential_solution) +{ + sl_status_t status; + + if (gnss_cfg_data->protocol_type != SL_MAX_M10S_PROTOCOL_NMEA) { + status = gnss_max_m10s_get_navpvt_ubx(gnss_cfg_data, max_wait); + + *differential_solution = + (bool)gnss_cfg_data->packetUBXNAVPVT->data.solution_flags.bits.diffSoln; + } else { + status = SL_STATUS_NOT_AVAILABLE; + } + return status; +} + +sl_status_t gnss_max_m10s_get_head_vehicle_valid( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + bool *head_vehicle_valid) +{ + sl_status_t status; + + if (gnss_cfg_data->protocol_type != SL_MAX_M10S_PROTOCOL_NMEA) { + status = gnss_max_m10s_get_navpvt_ubx(gnss_cfg_data, max_wait); + + *head_vehicle_valid = + (bool)gnss_cfg_data->packetUBXNAVPVT->data.solution_flags.bits. + headVehValid; + } else { + status = SL_STATUS_NOT_AVAILABLE; + } + return status; +} + +sl_status_t gnss_max_m10s_get_gnss_fix_ok(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + bool *gnss_fix_ok) +{ + sl_status_t status; + + if (gnss_cfg_data->protocol_type != SL_MAX_M10S_PROTOCOL_NMEA) { + status = gnss_max_m10s_get_navpvt_ubx(gnss_cfg_data, max_wait); + + *gnss_fix_ok = + (bool)gnss_cfg_data->packetUBXNAVPVT->data.solution_flags.bits.gnssFixOK; + } else { + status = SL_STATUS_NOT_AVAILABLE; + } + return status; +} + +sl_status_t gnss_max_m10s_get_confirm_time( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + bool *confirm_time) +{ + sl_status_t status; + + if (gnss_cfg_data->protocol_type != SL_MAX_M10S_PROTOCOL_NMEA) { + status = gnss_max_m10s_get_navpvt_ubx(gnss_cfg_data, max_wait); + + *confirm_time = + (bool)gnss_cfg_data->packetUBXNAVPVT->data.confirm_flags.confirm_data. + confirmed_time; + } else { + status = SL_STATUS_NOT_AVAILABLE; + } + return status; +} + +sl_status_t gnss_max_m10s_get_confirm_date( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + bool *confirm_date) +{ + sl_status_t status; + + if (gnss_cfg_data->protocol_type != SL_MAX_M10S_PROTOCOL_NMEA) { + status = gnss_max_m10s_get_navpvt_ubx(gnss_cfg_data, max_wait); + + *confirm_date = + (bool)gnss_cfg_data->packetUBXNAVPVT->data.confirm_flags.confirm_data. + confirmed_date; + } else { + status = SL_STATUS_NOT_AVAILABLE; + } + return status; +} + +sl_status_t gnss_max_m10s_get_fully_resolved( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + bool *fully_resolved) +{ + sl_status_t status; + + if (gnss_cfg_data->protocol_type != SL_MAX_M10S_PROTOCOL_NMEA) { + status = gnss_max_m10s_get_navpvt_ubx(gnss_cfg_data, max_wait); + + *fully_resolved = + (bool)gnss_cfg_data->packetUBXNAVPVT->data.valid.bits.fullyResolved; + } else { + status = SL_STATUS_NOT_AVAILABLE; + } + return status; +} + +sl_status_t gnss_max_m10s_get_invalid_data( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + bool *invalid_data) +{ + sl_status_t status; + + if (gnss_cfg_data->protocol_type != SL_MAX_M10S_PROTOCOL_NMEA) { + status = gnss_max_m10s_get_navpvt_ubx(gnss_cfg_data, max_wait); + + *invalid_data = + (bool)gnss_cfg_data->packetUBXNAVPVT->data.correction_flags.bits. + invalidLlh; + } else { + status = SL_STATUS_NOT_AVAILABLE; + } + return status; +} + +sl_status_t gnss_max_m10s_get_time_of_week( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + uint32_t *time_of_week) +{ + sl_status_t status; + + if (gnss_cfg_data->protocol_type != SL_MAX_M10S_PROTOCOL_NMEA) { + status = gnss_max_m10s_get_navpvt_ubx(gnss_cfg_data, max_wait); + + *time_of_week = gnss_cfg_data->packetUBXNAVPVT->data.iTOW; + } else { + status = SL_STATUS_NOT_AVAILABLE; + } + return status; +} + +sl_status_t gnss_max_m10s_get_horizontal_accuracy( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + int32_t *horizontal_accuracy) +{ + sl_status_t status; + + if (gnss_cfg_data->protocol_type != SL_MAX_M10S_PROTOCOL_NMEA) { + status = gnss_max_m10s_get_navpvt_ubx(gnss_cfg_data, max_wait); + + *horizontal_accuracy = gnss_cfg_data->packetUBXNAVPVT->data.hAcc; + } else { + status = SL_STATUS_NOT_AVAILABLE; + } + return status; +} + +sl_status_t gnss_max_m10s_get_vertical_accuracy( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + int32_t *vertical_accuracy) +{ + sl_status_t status; + + if (gnss_cfg_data->protocol_type != SL_MAX_M10S_PROTOCOL_NMEA) { + status = gnss_max_m10s_get_navpvt_ubx(gnss_cfg_data, max_wait); + + *vertical_accuracy = gnss_cfg_data->packetUBXNAVPVT->data.vAcc; + } else { + status = SL_STATUS_NOT_AVAILABLE; + } + return status; +} + +sl_status_t gnss_max_m10s_get_ned_north(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + int32_t *ned_north) +{ + sl_status_t status; + + if (gnss_cfg_data->protocol_type != SL_MAX_M10S_PROTOCOL_NMEA) { + status = gnss_max_m10s_get_navpvt_ubx(gnss_cfg_data, max_wait); + + *ned_north = gnss_cfg_data->packetUBXNAVPVT->data.velN; + } else { + status = SL_STATUS_NOT_AVAILABLE; + } + return status; +} + +sl_status_t gnss_max_m10s_get_ned_east(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + int32_t *ned_east) +{ + sl_status_t status; + + if (gnss_cfg_data->protocol_type != SL_MAX_M10S_PROTOCOL_NMEA) { + status = gnss_max_m10s_get_navpvt_ubx(gnss_cfg_data, max_wait); + + *ned_east = gnss_cfg_data->packetUBXNAVPVT->data.velE; + } else { + status = SL_STATUS_NOT_AVAILABLE; + } + return status; +} + +sl_status_t gnss_max_m10s_get_ned_down(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + int32_t *ned_down) +{ + sl_status_t status; + + if (gnss_cfg_data->protocol_type != SL_MAX_M10S_PROTOCOL_NMEA) { + status = gnss_max_m10s_get_navpvt_ubx(gnss_cfg_data, max_wait); + + *ned_down = gnss_cfg_data->packetUBXNAVPVT->data.velD; + } else { + status = SL_STATUS_NOT_AVAILABLE; + } + return status; +} + +sl_status_t gnss_max_m10s_get_magnetic_declination( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + int16_t *magnetic_declination) +{ + sl_status_t status; + + if (gnss_cfg_data->protocol_type != SL_MAX_M10S_PROTOCOL_NMEA) { + status = gnss_max_m10s_get_navpvt_ubx(gnss_cfg_data, max_wait); + + *magnetic_declination = gnss_cfg_data->packetUBXNAVPVT->data.magDec; + } else { + status = SL_STATUS_NOT_AVAILABLE; + } + return status; +} + +sl_status_t gnss_max_m10s_get_magnetic_declination_accuracy( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + uint16_t *magnetic_accuracy) +{ + sl_status_t status; + + if (gnss_cfg_data->protocol_type != SL_MAX_M10S_PROTOCOL_NMEA) { + status = gnss_max_m10s_get_navpvt_ubx(gnss_cfg_data, max_wait); + + *magnetic_accuracy = gnss_cfg_data->packetUBXNAVPVT->data.magAcc; + } else { + status = SL_STATUS_NOT_AVAILABLE; + } + return status; +} + +sl_status_t gnss_max_m10s_get_heading_of_motion( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + int32_t *head_of_motion) +{ + sl_status_t status; + + if (gnss_cfg_data->protocol_type != SL_MAX_M10S_PROTOCOL_NMEA) { + status = gnss_max_m10s_get_navpvt_ubx(gnss_cfg_data, max_wait); + + *head_of_motion = gnss_cfg_data->packetUBXNAVPVT->data.headMot; + } else { + status = SL_STATUS_NOT_AVAILABLE; + } + return status; +} + +sl_status_t gnss_max_m10s_get_ground_speed( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + int32_t *ground_speed) +{ + sl_status_t status; + + if (gnss_cfg_data->protocol_type != SL_MAX_M10S_PROTOCOL_NMEA) { + status = gnss_max_m10s_get_navpvt_ubx(gnss_cfg_data, max_wait); + + *ground_speed = gnss_cfg_data->packetUBXNAVPVT->data.gSpeed; + } else { + status = + gnss_max_m10s_get_speed_nmea(gnss_cfg_data, ground_speed, max_wait); + } + return status; +} + +sl_status_t gnss_max_m10s_get_speed_accuracy( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + int32_t *speed_accuracy) +{ + sl_status_t status; + + if (gnss_cfg_data->protocol_type != SL_MAX_M10S_PROTOCOL_NMEA) { + status = gnss_max_m10s_get_navpvt_ubx(gnss_cfg_data, max_wait); + + *speed_accuracy = gnss_cfg_data->packetUBXNAVPVT->data.sAcc; + } else { + status = SL_STATUS_NOT_AVAILABLE; + } + return status; +} + +sl_status_t gnss_max_m10s_get_heading_accuracy( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + int32_t *heading_accuracy) +{ + sl_status_t status; + + if (gnss_cfg_data->protocol_type != SL_MAX_M10S_PROTOCOL_NMEA) { + status = gnss_max_m10s_get_navpvt_ubx(gnss_cfg_data, max_wait); + + *heading_accuracy = gnss_cfg_data->packetUBXNAVPVT->data.headAcc; + } else { + status = SL_STATUS_NOT_AVAILABLE; + } + return status; +} + +sl_status_t gnss_max_m10s_get_positional_dillution( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + int16_t *position_dillution) +{ + sl_status_t status; + + if (gnss_cfg_data->protocol_type != SL_MAX_M10S_PROTOCOL_NMEA) { + status = gnss_max_m10s_get_navpvt_ubx(gnss_cfg_data, max_wait); + + *position_dillution = gnss_cfg_data->packetUBXNAVPVT->data.pDOP; + } else { + status = SL_STATUS_NOT_AVAILABLE; + } + return status; +} + +sl_status_t gnss_max_m10s_get_head_vehicle( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + int32_t *head_vehicle) +{ + sl_status_t status; + + if (gnss_cfg_data->protocol_type != SL_MAX_M10S_PROTOCOL_NMEA) { + status = gnss_max_m10s_get_navpvt_ubx(gnss_cfg_data, max_wait); + + *head_vehicle = gnss_cfg_data->packetUBXNAVPVT->data.headVeh; + } else { + status = SL_STATUS_NOT_AVAILABLE; + } + return status; +} + +sl_status_t gnss_max_m10s_get_day(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + uint8_t *day) +{ + sl_status_t status; + + if (gnss_cfg_data->protocol_type != SL_MAX_M10S_PROTOCOL_NMEA) { + status = gnss_max_m10s_get_navpvt_ubx(gnss_cfg_data, max_wait); + + *day = gnss_cfg_data->packetUBXNAVPVT->data.day; + } else { + status = gnss_max_m10s_get_day_nmea(gnss_cfg_data, day, max_wait); + } + return status; +} + +sl_status_t gnss_max_m10s_get_month(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + uint8_t *month) +{ + sl_status_t status; + + if (gnss_cfg_data->protocol_type != SL_MAX_M10S_PROTOCOL_NMEA) { + status = gnss_max_m10s_get_navpvt_ubx(gnss_cfg_data, max_wait); + + *month = gnss_cfg_data->packetUBXNAVPVT->data.month; + } else { + status = gnss_max_m10s_get_month_nmea(gnss_cfg_data, month, max_wait); + } + return status; +} + +sl_status_t gnss_max_m10s_get_year(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + uint16_t *year) +{ + sl_status_t status; + + if (gnss_cfg_data->protocol_type != SL_MAX_M10S_PROTOCOL_NMEA) { + status = gnss_max_m10s_get_navpvt_ubx(gnss_cfg_data, max_wait); + + *year = gnss_cfg_data->packetUBXNAVPVT->data.year; + } else { + status = gnss_max_m10s_get_year_nmea(gnss_cfg_data, year, max_wait); + } + return status; +} + +sl_status_t gnss_max_m10s_get_hour(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + uint8_t *hour) +{ + sl_status_t status; + + if (gnss_cfg_data->protocol_type != SL_MAX_M10S_PROTOCOL_NMEA) { + status = gnss_max_m10s_get_navpvt_ubx(gnss_cfg_data, max_wait); + + *hour = gnss_cfg_data->packetUBXNAVPVT->data.hour; + } else { + status = gnss_max_m10s_get_hour_nmea(gnss_cfg_data, hour, max_wait); + } + return status; +} + +sl_status_t gnss_max_m10s_get_minute(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + uint8_t *minute) +{ + sl_status_t status; + + if (gnss_cfg_data->protocol_type != SL_MAX_M10S_PROTOCOL_NMEA) { + status = gnss_max_m10s_get_navpvt_ubx(gnss_cfg_data, max_wait); + + *minute = gnss_cfg_data->packetUBXNAVPVT->data.min; + } else { + status = gnss_max_m10s_get_min_nmea(gnss_cfg_data, minute, max_wait); + } + return status; +} + +sl_status_t gnss_max_m10s_get_seconds(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + uint8_t *seconds) +{ + sl_status_t status; + + if (gnss_cfg_data->protocol_type != SL_MAX_M10S_PROTOCOL_NMEA) { + status = gnss_max_m10s_get_navpvt_ubx(gnss_cfg_data, max_wait); + + *seconds = gnss_cfg_data->packetUBXNAVPVT->data.sec; + } else { + status = gnss_max_m10s_get_second_nmea(gnss_cfg_data, seconds, max_wait); + } + return status; +} + +sl_status_t gnss_max_m10s_get_milliseconds( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + uint16_t *milli_seconds) +{ + sl_status_t status; + + if (gnss_cfg_data->protocol_type != SL_MAX_M10S_PROTOCOL_NMEA) { + status = gnss_max_m10s_get_navpvt_ubx(gnss_cfg_data, max_wait); + + *milli_seconds = gnss_cfg_data->packetUBXNAVPVT->data.iTOW % 1000; + } else { + status = SL_STATUS_NOT_AVAILABLE; + } + return status; +} + +sl_status_t gnss_max_m10s_get_nanoseconds(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + int32_t *nano) +{ + sl_status_t status; + + if (gnss_cfg_data->protocol_type != SL_MAX_M10S_PROTOCOL_NMEA) { + status = gnss_max_m10s_get_navpvt_ubx(gnss_cfg_data, max_wait); + + *nano = gnss_cfg_data->packetUBXNAVPVT->data.nano; + } else { + status = SL_STATUS_NOT_AVAILABLE; + } + return status; +} + +sl_status_t gnss_max_m10s_valid_time(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + bool *valid_time) +{ + sl_status_t status; + + if (gnss_cfg_data->protocol_type != SL_MAX_M10S_PROTOCOL_NMEA) { + status = gnss_max_m10s_get_navpvt_ubx(gnss_cfg_data, max_wait); + + *valid_time = gnss_cfg_data->packetUBXNAVPVT->data.valid.bits.valid_time; + } else { + status = SL_STATUS_NOT_AVAILABLE; + } + return status; +} + +sl_status_t gnss_max_m10s_valid_date(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + bool *valid_date) +{ + sl_status_t status; + + if (gnss_cfg_data->protocol_type != SL_MAX_M10S_PROTOCOL_NMEA) { + status = gnss_max_m10s_get_navpvt_ubx(gnss_cfg_data, max_wait); + + *valid_date = gnss_cfg_data->packetUBXNAVPVT->data.valid.bits.valid_date; + } else { + status = SL_STATUS_NOT_AVAILABLE; + } + return status; +} + +sl_status_t gnss_max_m10s_get_geoid(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + int32_t *geoid) +{ + if (gnss_cfg_data->protocol_type == SL_MAX_M10S_PROTOCOL_NMEA) { + return gnss_max_m10s_get_geoid_nmea(gnss_cfg_data, geoid, max_wait); + } else { + return SL_STATUS_NOT_AVAILABLE; + } +} + +sl_status_t gnss_max_m10s_get_horizontal_dilution( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + uint8_t *hdop) +{ + if (gnss_cfg_data->protocol_type == SL_MAX_M10S_PROTOCOL_NMEA) { + return gnss_max_m10s_get_horizontal_dilution_nmea(gnss_cfg_data, + hdop, + max_wait); + } else { + return SL_STATUS_NOT_AVAILABLE; + } +} + +sl_status_t gnss_max_m10s_get_course_over_ground( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + int32_t *course) +{ + if (gnss_cfg_data->protocol_type == SL_MAX_M10S_PROTOCOL_NMEA) { + return gnss_max_m10s_get_ground_course_nmea(gnss_cfg_data, course, + max_wait); + } else { + return SL_STATUS_NOT_AVAILABLE; + } +} + +sl_status_t gnss_max_m10s_get_navigation_system( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait, + char *nav_system) +{ + if (gnss_cfg_data->protocol_type == SL_MAX_M10S_PROTOCOL_NMEA) { + return gnss_max_m10s_get_nav_system_nmea(gnss_cfg_data, nav_system, + max_wait); + } else { + return SL_STATUS_NOT_AVAILABLE; + } +} diff --git a/driver/public/silabs/gnss_max_m10s/src/gnss_max_m10s_micro_nmea.c b/driver/public/silabs/gnss_max_m10s/src/gnss_max_m10s_micro_nmea.c new file mode 100644 index 00000000..d0b5b1a4 --- /dev/null +++ b/driver/public/silabs/gnss_max_m10s/src/gnss_max_m10s_micro_nmea.c @@ -0,0 +1,682 @@ +/***************************************************************************//** + * @file gnss_max_m10s_micro_nmea.c + * @brief MAX_M10S GNSS receiver driver micro-NMEA related external APIs + * implementation. + ******************************************************************************* + * # License + * Copyright 2020 Silicon Laboratories Inc. www.silabs.com + ******************************************************************************* + * + * SPDX-License-Identifier: Zlib + * + * The licensor of this software is Silicon Laboratories Inc. + * + * This software is provided \'as-is\', without any express or implied + * warranty. In no event will the authors be held liable for any damages + * arising from the use of this software. + * + * Permission is granted to anyone to use this software for any purpose, + * including commercial applications, and to alter it and redistribute it + * freely, subject to the following restrictions: + * + * 1. The origin of this software must not be misrepresented; you must not + * claim that you wrote the original software. If you use this software + * in a product, an acknowledgment in the product documentation would be + * appreciated but is not required. + * 2. Altered source versions must be plainly marked as such, and must not be + * misrepresented as being the original software. + * 3. This notice may not be removed or altered from any source distribution. + * + ******************************************************************************* + * # Evaluation Quality + * This code has been minimally tested to ensure that it builds and is suitable + * as a demonstration for evaluation purposes only. This code will be maintained + * at the sole discretion of Silicon Labs. + ******************************************************************************/ +#include +#include "gnss_max_m10s_micro_nmea.h" + +/**************************************************************************//** + * @brief To calculate the 10 raise to the power of input. + * @param[in] b : input digit for which the exponential value is calculated. + * @return long type calculated value. + *****************************************************************************/ +static long gnss_max_m10s_exp_10(uint8_t b); + +/**************************************************************************//** + * @brief To convert the input value in hexadecimal. + * @param[in] nibble : input value. + * @return hexadecimal value. + *****************************************************************************/ +static char gnss_max_m10s_to_hex(uint8_t nibble); + +/**************************************************************************//** + * @brief To skip a field from NMEA sentence. + * @param[in] s : pointer to NMEA filed. + * @return pointer to the next field of the NMEA sentence after the comma. + *****************************************************************************/ +static const char * gnss_max_m10s_skip_field(const char *s); + +/**************************************************************************//** + * @brief To parse an unsigned int type data from NMEA sentence. + * @param[in] s : pointer to NMEA filed. + * @param[in] len : length of the parsed data. + * @return unsigned int type data from the sentence. + *****************************************************************************/ +static unsigned int gnss_max_m10s_parse_unsigned_int(const char *s, + uint8_t len); + +/**************************************************************************//** + * @brief To parse an float type data from NMEA sentence. + * @param[in] s : pointer to NMEA field. + * @param[in] log_10_multiplier : value of multiplier. + * @param[in] eptr : pointer to return the position in the input string where parsing stopped . + * @param[in] result_valid : pointer to the valid result check. + * @return long type NMEA data. + *****************************************************************************/ +static long gnss_max_m10s_parse_float(const unsigned char *s, + uint8_t log_10_multiplier, + const char **eptr, + bool *result_valid); + +/**************************************************************************//** + * @brief To parse data from NMEA sentence in degree minute formate. + * @param[in] s : pointer to NMEA field. + * @param[in] deg_width : width of degree. + * @param[in] eptr : pointer to return the position in the input string where parsing stopped . + * @return data in degree minute format. + *****************************************************************************/ +static long gnss_max_m10s_parse_degree_minute(const char *s, + uint8_t deg_width, + const char **eptr); + +/**************************************************************************//** + * @brief To parse data from NMEA sentence. + * @param[in] s : pointer to NMEA field. + * @param[in] result : pointer to the field parsed. + * @param[in] len : length of the field. + * @return pointer to the field parsed. + *****************************************************************************/ +static const char * gnss_max_m10s_parse_field(const char *s, + char *result, + int len); + +/**************************************************************************//** + * @brief To generate checksum for NMEA sentence. + * @param[in] s : pointer to NMEA sentence. + * @param[out] checksum : To store the calculated checksum value. + * @return a pointer to the end of the string. + *****************************************************************************/ +static const char * gnss_max_m10s_generate_checksum(const char *s, + char *checksum); + +/**************************************************************************//** + * @brief To check generate checksum for NMEA sentence and calculated checksum. + * @param[in] s : pointer to NMEA sentence. + * @return true if checksum matches the calculated checksum. + *****************************************************************************/ +static bool gnss_max_m10s_test_checksum(const char *s); + +/**************************************************************************//** + * @brief To set the buffer allocated for micro nmea. + * @param[in] gnss_cfg_data : pointer to GNSS cfg data structure. + *****************************************************************************/ +static void gnss_max_m10s_set_buffer(sl_max_m10s_cfg_data_t *gnss_cfg_data); + +/**************************************************************************//** + * @brief To check the end of field from NMEA sentence. + * @param[in] c : character from NMEA sentence. + * @return true if end of field is found. + * false if end of field is not found. + *****************************************************************************/ +static bool gnss_max_m10s_is_end_of_fields(char c); + +/**************************************************************************//** + * @brief To process the RMC type NMEA sentence. + * @param[in] s : character to be processed from NMEA sentence. + * @param[in] nmea_cfg_data : pointer to NMEA data. + * @return The following values are returned: + * - \ref true on success. + * - \ref false on failure. + *****************************************************************************/ +static bool gnss_max_m10s_process_rmc(const char *s, + sl_max_m10s_nmea_data_t *nmea_data); + +/**************************************************************************//** + * @brief To process the GGA type NMEA sentence. + * @param[in] s : character to be processed from NMEA sentence. + * @param[in] nmea_cfg_data : pointer to NMEA data. + * @return The following values are returned: + * - \ref true on success. + * - \ref false on failure. + *****************************************************************************/ +static bool gnss_max_m10s_process_gga(const char *s, + sl_max_m10s_nmea_data_t *nmea_data); + +static long gnss_max_m10s_exp_10(uint8_t b) +{ + long r = 1; + while (b--) { + r *= 10; + } + return r; +} + +static char gnss_max_m10s_to_hex(uint8_t nibble) +{ + if (nibble >= 10) { + return nibble + 'A' - 10; + } else { + return nibble + '0'; + } +} + +static const char * gnss_max_m10s_skip_field(const char *s) +{ + if (s == NULL) { + return NULL; + } + + while (!gnss_max_m10s_is_end_of_fields(*s)) { + if (*s == ',') { + /// Check next character + if (gnss_max_m10s_is_end_of_fields(*++s)) { + break; + } else { + return s; + } + } + ++s; + } + + return NULL; /// End of string or valid sentence +} + +static unsigned int gnss_max_m10s_parse_unsigned_int(const char *s, + uint8_t len) +{ + int r = 0; + while (len--) { + r = 10 * r + *s++ - '0'; + } + return r; +} + +static long gnss_max_m10s_parse_float(const unsigned char *s, + uint8_t log_10_multiplier, + const char **eptr, + bool *result_valid) +{ + int8_t neg = 1; + long r = 0; + + if (result_valid) { + *result_valid = false; + } + + while (isspace(*s)) { + ++s; + } + + if (*s == '-') { + neg = -1; + ++s; + } else if (*s == '+') { + ++s; + } + + while (isdigit(*s)) { + r = 10 * r + *s++ - '0'; + if (result_valid) { + *result_valid = true; + } + } + + r *= gnss_max_m10s_exp_10(log_10_multiplier); + + if (*s == '.') { + ++s; + long frac = 0; + while (isdigit(*s) && log_10_multiplier) { + frac = 10 * frac + *s++ - '0'; + --log_10_multiplier; + } + frac *= gnss_max_m10s_exp_10(log_10_multiplier); + r += frac; + } + + r *= neg; /// Include effect of any minus sign + + if (eptr) { + *eptr = gnss_max_m10s_skip_field((const char *)s); + } + + return r; +} + +static long gnss_max_m10s_parse_degree_minute(const char *s, + uint8_t deg_width, + const char **eptr) +{ + if (*s == ',') { + if (eptr) { + *eptr = gnss_max_m10s_skip_field(s); + } + return 0; + } + long r = gnss_max_m10s_parse_unsigned_int(s, deg_width) * 1000000L; + s += deg_width; + r += gnss_max_m10s_parse_float((unsigned char *)s, 6, eptr, NULL) / 60; + return r; +} + +static const char * gnss_max_m10s_parse_field(const char *s, + char *result, + int len) +{ + if (s == NULL) { + return NULL; + } + + int i = 0; + while (*s != ',' && !gnss_max_m10s_is_end_of_fields(*s)) { + if (result && (i++ < len)) { + *result++ = *s; + } + ++s; + } + if (result && (i < len)) { + *result = '\0'; + } + + if (*s == ',') { + return ++s; /// Location of start of next field + } else { + return NULL; /// End of string or valid sentence + } +} + +static const char * gnss_max_m10s_generate_checksum(const char *s, + char *checksum) +{ + uint8_t c = 0; + /// Initial $ is omitted from checksum + if (*s == '$') { + ++s; + } + + while (*s != '\0' && *s != '*') { + c ^= *s++; + } + + if (checksum) { + checksum[0] = gnss_max_m10s_to_hex(c / 16); + checksum[1] = gnss_max_m10s_to_hex(c % 16); + } + return s; +} + +static bool gnss_max_m10s_test_checksum(const char *s) +{ + char checksum[2]; + const char *p = gnss_max_m10s_generate_checksum(s, checksum); + return *p == '*' && p[1] == checksum[0] && p[2] == checksum[1]; +} + +char gnss_max_m10s_nmea_get_nav_system(sl_max_m10s_nmea_data_t *nmea_data) +{ + return nmea_data->nav_system; +} + +uint8_t gnss_max_m10s_nmea_get_num_satellites( + sl_max_m10s_nmea_data_t *nmea_data) +{ + return nmea_data->num_sat; +} + +uint8_t gnss_max_m10s_nmea_get_hdop(sl_max_m10s_nmea_data_t *nmea_data) +{ + return nmea_data->hdop; +} + +bool gnss_max_m10s_nmea_is_valid(sl_max_m10s_nmea_data_t *nmea_data) +{ + return nmea_data->is_valid; +} + +int32_t gnss_max_m10s_nmea_get_latitude(sl_max_m10s_nmea_data_t *nmea_data) +{ + return nmea_data->latitude; +} + +int32_t gnss_max_m10s_nmea_get_longitude(sl_max_m10s_nmea_data_t *nmea_data) +{ + return nmea_data->longitude; +} + +bool gnss_max_m10s_nmea_get_altitude_msl(int32_t *alt, + sl_max_m10s_nmea_data_t *nmea_data) +{ + if (nmea_data->altitude_valid) { + *alt = nmea_data->altitude; + } + return nmea_data->altitude_valid; +} + +bool gnss_max_m10s_nmea_get_geoid_height(int32_t *alt, + sl_max_m10s_nmea_data_t *nmea_data) +{ + if (nmea_data->geoid_height_valid) { + *alt = nmea_data->geoid_height; + } + + return nmea_data->geoid_height_valid; +} + +uint16_t gnss_max_m10s_nmea_get_year(sl_max_m10s_nmea_data_t *nmea_data) +{ + return nmea_data->year; +} + +uint8_t gnss_max_m10s_nmea_get_month(sl_max_m10s_nmea_data_t *nmea_data) +{ + return nmea_data->month; +} + +uint8_t gnss_max_m10s_nmea_get_day(sl_max_m10s_nmea_data_t *nmea_data) +{ + return nmea_data->day; +} + +uint8_t gnss_max_m10s_nmea_get_hour(sl_max_m10s_nmea_data_t *nmea_data) +{ + return nmea_data->hour; +} + +uint8_t gnss_max_m10s_nmea_get_minute(sl_max_m10s_nmea_data_t *nmea_data) +{ + return nmea_data->minute; +} + +uint8_t gnss_max_m10s_nmea_get_second(sl_max_m10s_nmea_data_t *nmea_data) +{ + return nmea_data->second; +} + +int32_t gnss_max_m10s_nmea_get_speed(sl_max_m10s_nmea_data_t *nmea_data) +{ + return nmea_data->speed; +} + +int32_t gnss_max_m10s_nmea_get_course(sl_max_m10s_nmea_data_t *nmea_data) +{ + return nmea_data->course; +} + +static bool gnss_max_m10s_is_end_of_fields(char c) +{ + return c == '*' || c == '\0' || c == '\r' || c == '\n'; +} + +void gnss_max_m10s_init_micro_nmea(sl_max_m10s_cfg_data_t *gnss_cfg_data) +{ + gnss_cfg_data->nmea_data->talker_id = '\0'; + memset(gnss_cfg_data->nmea_data->message_id, 0, + sizeof(gnss_cfg_data->nmea_data->message_id)); + gnss_max_m10s_set_buffer(gnss_cfg_data); + gnss_max_m10s_clear_nmea_data(gnss_cfg_data->nmea_data); +} + +static void gnss_max_m10s_set_buffer(sl_max_m10s_cfg_data_t *gnss_cfg_data) +{ + gnss_cfg_data->nmea_data->buffer_len = sizeof(gnss_cfg_data->nmea_buffer); + gnss_cfg_data->nmea_data->buffer = (char *)gnss_cfg_data->nmea_buffer; + gnss_cfg_data->nmea_data->ptr = gnss_cfg_data->nmea_data->buffer; + + if (gnss_cfg_data->nmea_data->buffer_len) { + *gnss_cfg_data->nmea_data->ptr = '\0'; + gnss_cfg_data->nmea_data->buffer[gnss_cfg_data->nmea_data->buffer_len + - 1] = '\0'; + } +} + +void gnss_max_m10s_clear_nmea_data(sl_max_m10s_nmea_data_t *nmea_data) +{ + nmea_data->nav_system = '\0'; + nmea_data->num_sat = 0; + nmea_data->hdop = 255; + nmea_data->is_valid = false; + nmea_data->latitude = 999000000L; + nmea_data->longitude = 999000000L; + nmea_data->altitude = LONG_MIN; + nmea_data->speed = LONG_MIN; + nmea_data->course = LONG_MIN; + nmea_data->altitude_valid = false; + nmea_data->geoid_height_valid = false; + nmea_data->year = 0; + nmea_data->month = 0; + nmea_data->day = 0; + nmea_data->hour = 99; + nmea_data->minute = 99; + nmea_data->second = 99; +} + +bool gnss_max_m10s_process_nmea(char c, sl_max_m10s_nmea_data_t *nmea_data) +{ + if ((nmea_data->buffer == NULL) || (nmea_data->buffer_len == 0)) { + return false; + } + + if ((c == '\0') || (c == '\n') || (c == '\r')) { + *(nmea_data->ptr) = '\0'; + nmea_data->ptr = nmea_data->buffer; + + if ((*(nmea_data->buffer) == '$') + && gnss_max_m10s_test_checksum(nmea_data->buffer)) { + /// Valid message + const char *data; + if (nmea_data->buffer[1] == 'G') { + nmea_data->talker_id = nmea_data->buffer[2]; + data = gnss_max_m10s_parse_field(&nmea_data->buffer[3], + &nmea_data->message_id[0], + sizeof(nmea_data->message_id)); + } else { + nmea_data->talker_id = '\0'; + data = gnss_max_m10s_parse_field(&nmea_data->buffer[1], + &nmea_data->message_id[0], + sizeof(nmea_data->message_id)); + } + + if ((data != NULL) && (strcmp(&nmea_data->message_id[0], "GGA") == 0)) { + return gnss_max_m10s_process_gga(data, nmea_data); + } else if ((data != NULL) + && (strcmp(&nmea_data->message_id[0], "RMC") == 0)) { + return gnss_max_m10s_process_rmc(data, nmea_data); + } + } + + /// Return true for a complete, non-empty, sentence (even if not a valid one). + return *(nmea_data->buffer) != '\0'; + } else { + *(nmea_data->ptr) = c; + if (nmea_data->ptr < &nmea_data->buffer[nmea_data->buffer_len - 1]) { + ++nmea_data->ptr; + } + } + + return false; +} + +static const char * gnss_max_m10s_parse_time(const char *s, + sl_max_m10s_nmea_data_t *nmea_data) +{ + if (*s == ',') { + return gnss_max_m10s_skip_field(s); + } + + nmea_data->hour = gnss_max_m10s_parse_unsigned_int(s, 2); + nmea_data->minute = gnss_max_m10s_parse_unsigned_int(s + 2, 2); + nmea_data->second = gnss_max_m10s_parse_unsigned_int(s + 4, 2); + + return gnss_max_m10s_skip_field(s + 9); +} + +static const char * gnss_max_m10s_parse_date(const char *s, + sl_max_m10s_nmea_data_t *nmea_data) +{ + if (*s == ',') { + return gnss_max_m10s_skip_field(s); + } + + nmea_data->day = gnss_max_m10s_parse_unsigned_int(s, 2); + nmea_data->month = gnss_max_m10s_parse_unsigned_int(s + 2, 2); + nmea_data->year = gnss_max_m10s_parse_unsigned_int(s + 4, 2) + 2000; + + return gnss_max_m10s_skip_field(s + 6); +} + +static bool gnss_max_m10s_process_gga(const char *s, + sl_max_m10s_nmea_data_t *nmea_data) +{ + nmea_data->nav_system = nmea_data->talker_id; + + s = gnss_max_m10s_parse_time(s, nmea_data); + + if (s == NULL) { + return false; + } + + nmea_data->latitude = gnss_max_m10s_parse_degree_minute(s, 2, &s); + if (s == NULL) { + return false; + } + + if (*s == ',') { + ++s; + } else { + if (*s == 'S') { + nmea_data->latitude *= -1; + } + s += 2; /// Skip N/S and comma + } + + nmea_data->longitude = gnss_max_m10s_parse_degree_minute(s, 3, &s); + if (s == NULL) { + return false; + } + + if (*s == ',') { + ++s; + } else { + if (*s == 'W') { + nmea_data->longitude *= -1; + } + s += 2; /// Skip E/W and comma + } + + nmea_data->is_valid = (*s >= '1' && *s <= '5'); + + long tmp = gnss_max_m10s_parse_float((unsigned char *)s, 0, &s, NULL); + nmea_data->num_sat = (tmp > 255 ? 255 : (tmp < 0 ? 0 : tmp)); + + if (s == NULL) { + return false; + } + + tmp = gnss_max_m10s_parse_float((unsigned char *)s, 1, &s, NULL); + nmea_data->hdop = (tmp > 255 || tmp < 0 ? 255 : tmp); + + if (s == NULL) { + return false; + } + + bool result_valid; + nmea_data->altitude = gnss_max_m10s_parse_float((unsigned char *)s, + 3, + &s, + &result_valid); + + if (s == NULL) { + return false; + } + + if (result_valid) { + nmea_data->altitude_valid = true; + } + s += 2; /// Skip M and comma + nmea_data->geoid_height = gnss_max_m10s_parse_float((unsigned char *)s, + 3, + &s, + &result_valid); + + if (s == NULL) { + return false; + } + + if (result_valid) { + nmea_data->geoid_height_valid = true; + } + return true; +} + +static bool gnss_max_m10s_process_rmc(const char *s, + sl_max_m10s_nmea_data_t *nmea_data) +{ + nmea_data->nav_system = nmea_data->talker_id; + + s = gnss_max_m10s_parse_time(s, nmea_data); + + if (s == NULL) { + return false; + } + + nmea_data->is_valid = (*s == 'A'); + s += 2; /// Skip validity and comma + + nmea_data->latitude = gnss_max_m10s_parse_degree_minute(s, 2, &s); + if (s == NULL) { + return false; + } + + if (*s == ',') { + ++s; + } else { + if (*s == 'S') { + nmea_data->latitude *= -1; + } + + s += 2; /// Skip N/S and comma + } + + nmea_data->longitude = gnss_max_m10s_parse_degree_minute(s, 3, &s); + + if (s == NULL) { + return false; + } + + if (*s == ',') { + ++s; + } else { + if (*s == 'W') { + nmea_data->longitude *= -1; + } + + s += 2; /// Skip E/W and comma + } + + nmea_data->speed = gnss_max_m10s_parse_float((unsigned char *)s, 3, &s, NULL); + + if (s == NULL) { + return false; + } + + nmea_data->course = + gnss_max_m10s_parse_float((unsigned char *)s, 3, &s, NULL); + + if (s == NULL) { + return false; + } + + s = gnss_max_m10s_parse_date(s, nmea_data); + return true; +} diff --git a/driver/public/silabs/gnss_max_m10s/src/gnss_max_m10s_nmea.c b/driver/public/silabs/gnss_max_m10s/src/gnss_max_m10s_nmea.c new file mode 100644 index 00000000..7fdcd825 --- /dev/null +++ b/driver/public/silabs/gnss_max_m10s/src/gnss_max_m10s_nmea.c @@ -0,0 +1,684 @@ +/****************************************************************************//* + * @file gnss_max_m10s_nmea.c + * @brief MAX_M10S GNSS receiver driver external APIs implementation for NMEA + * sentence data + ******************************************************************************* + * # License + * Copyright 2020 Silicon Laboratories Inc. www.silabs.com + ******************************************************************************* + * + * SPDX-License-Identifier: Zlib + * + * The licensor of this software is Silicon Laboratories Inc. + * + * This software is provided \'as-is\', without any express or implied + * warranty. In no event will the authors be held liable for any damages + * arising from the use of this software. + * + * Permission is granted to anyone to use this software for any purpose, + * including commercial applications, and to alter it and redistribute it + * freely, subject to the following restrictions: + * + * 1. The origin of this software must not be misrepresented; you must not + * claim that you wrote the original software. If you use this software + * in a product, an acknowledgment in the product documentation would be + * appreciated but is not required. + * 2. Altered source versions must be plainly marked as such, and must not be + * misrepresented as being the original software. + * 3. This notice may not be removed or altered from any source distribution. + * + ******************************************************************************* + * # Evaluation Quality + * This code has been minimally tested to ensure that it builds and is suitable + * as a demonstration for evaluation purposes only. This code will be maintained + * at the sole discretion of Silicon Labs. + ******************************************************************************/ +#include +#include "gnss_max_m10s_driver.h" +#include "gnss_max_m10s_nmea.h" + +sl_status_t gnss_max_m10s_nmea_init(sl_max_m10s_cfg_data_t *gnss_cfg_data) +{ + gnss_cfg_data->nmea_data = malloc(sizeof(sl_max_m10s_nmea_data_t)); + + if (gnss_cfg_data->nmea_data != NULL) { + memset(gnss_cfg_data->nmea_data, 0, sizeof(sl_max_m10s_nmea_data_t)); + gnss_cfg_data->processing_nmea.all = SL_MAX_M10S_FILTER_NMEA_ALL; + gnss_max_m10s_init_micro_nmea(gnss_cfg_data); + return SL_STATUS_OK; + } + + return SL_STATUS_FAIL; +} + +bool gnss_max_m10s_is_nmea_header_valid(sl_max_m10s_cfg_data_t *gnss_cfg_data) +{ + if (gnss_cfg_data->nmea_address_field[0] != '*') { + return (false); + } + if (gnss_cfg_data->nmea_address_field[1] != 'G') { + return (false); + } + + if (gnss_cfg_data->nmea_address_field[3] == 'G') { + if ((gnss_cfg_data->nmea_address_field[4] == 'G') + && (gnss_cfg_data->nmea_address_field[5] == 'A')) { + return (true); + } + } + + if ((gnss_cfg_data->nmea_address_field[3] == 'R') + && (gnss_cfg_data->nmea_address_field[4] == 'M') + && (gnss_cfg_data->nmea_address_field[5] == 'C')) { + return (true); + } + + return (false); +} + +bool gnss_max_m10s_process_current_nmea(sl_max_m10s_cfg_data_t *gnss_cfg_data) +{ + if (gnss_cfg_data->processing_nmea.bits.all == 1) { + return (true); + } + + if (gnss_cfg_data->nmea_address_field[3] == 'G') { + if ((gnss_cfg_data->nmea_address_field[4] == 'G') + && (gnss_cfg_data->nmea_address_field[5] == 'A') + && (gnss_cfg_data->processing_nmea.bits.UBX_NMEA_GGA == 1)) { + return (true); + } + } + + if ((gnss_cfg_data->nmea_address_field[3] == 'R') + && (gnss_cfg_data->nmea_address_field[4] == 'M') + && (gnss_cfg_data->nmea_address_field[5] == 'C') + && (gnss_cfg_data->processing_nmea.bits.UBX_NMEA_RMC == 1)) { + return (true); + } + + return (false); +} + +uint8_t gnss_max_m10s_get_nmea_max_length(sl_max_m10s_cfg_data_t *gnss_cfg_data) +{ + char nmea[] = "GPGGA"; + if (memcmp(nmea, &gnss_cfg_data->nmea_address_field[1], 5) == 0) { + return SL_MAX_M10S_NMEA_GGA_MAX_LENGTH; + } + + strcpy(nmea, "GNGGA"); + if (memcmp(nmea, &gnss_cfg_data->nmea_address_field[1], 5) == 0) { + return SL_MAX_M10S_NMEA_GGA_MAX_LENGTH; + } + + strcpy(nmea, "GPRMC"); + if (memcmp(nmea, &gnss_cfg_data->nmea_address_field[1], 5) == 0) { + return SL_MAX_M10S_NMEA_RMC_MAX_LENGTH; + } + + strcpy(nmea, "GNRMC"); + if (memcmp(nmea, &gnss_cfg_data->nmea_address_field[1], 5) == 0) { + return SL_MAX_M10S_NMEA_RMC_MAX_LENGTH; + } + + return 0; +} + +sl_max_m10s_nmea_automatic_flags_t * gnss_max_m10s_get_nmea_flags_ptr( + sl_max_m10s_cfg_data_t *gnss_cfg_data) +{ + char nmea[] = "GPGGA"; + if (memcmp(nmea, &gnss_cfg_data->nmea_address_field[1], 5) == 0) { + return &gnss_cfg_data->storageNMEAGPGGA->automatic_flags; + } + + strcpy(nmea, "GNGGA"); + if (memcmp(nmea, &gnss_cfg_data->nmea_address_field[1], 5) == 0) { + return &gnss_cfg_data->storageNMEAGNGGA->automatic_flags; + } + + strcpy(nmea, "GPRMC"); + if (memcmp(nmea, &gnss_cfg_data->nmea_address_field[1], 5) == 0) { + return &gnss_cfg_data->storageNMEAGPRMC->automatic_flags; + } + + strcpy(nmea, "GNRMC"); + if (memcmp(nmea, &gnss_cfg_data->nmea_address_field[1], 5) == 0) { + return &gnss_cfg_data->storageNMEAGNRMC->automatic_flags; + } + + return NULL; +} + +sl_status_t gnss_max_m10s_is_nmea_auto(sl_max_m10s_cfg_data_t *gnss_cfg_data) +{ + char nmea[] = "GPGGA"; + if (memcmp(nmea, &gnss_cfg_data->nmea_address_field[1], 5) == 0) { + if (gnss_cfg_data->storageNMEAGPGGA != NULL) { + return true; + } + } + + strcpy(nmea, "GNGGA"); + if (memcmp(nmea, &gnss_cfg_data->nmea_address_field[1], 5) == 0) { + if (gnss_cfg_data->storageNMEAGNGGA != NULL) { + return true; + } + } + + strcpy(nmea, "GPRMC"); + if (memcmp(nmea, &gnss_cfg_data->nmea_address_field[1], 5) == 0) { + if (gnss_cfg_data->storageNMEAGPRMC != NULL) { + return true; + } + } + + strcpy(nmea, "GNRMC"); + if (memcmp(nmea, &gnss_cfg_data->nmea_address_field[1], 5) == 0) { + if (gnss_cfg_data->storageNMEAGNRMC != NULL) { + return true; + } + } + + return false; +} + +uint8_t * gnss_max_m10s_get_nmea_working_length_ptr( + sl_max_m10s_cfg_data_t *gnss_cfg_data) +{ + char nmea[] = "GPGGA"; + if (memcmp(nmea, &gnss_cfg_data->nmea_address_field[1], 5) == 0) { + return &gnss_cfg_data->storageNMEAGPGGA->working_copy.length; + } + + strcpy(nmea, "GNGGA"); + if (memcmp(nmea, &gnss_cfg_data->nmea_address_field[1], 5) == 0) { + return &gnss_cfg_data->storageNMEAGNGGA->working_copy.length; + } + + strcpy(nmea, "GPRMC"); + if (memcmp(nmea, &gnss_cfg_data->nmea_address_field[1], 5) == 0) { + return &gnss_cfg_data->storageNMEAGPRMC->working_copy.length; + } + + strcpy(nmea, "GNRMC"); + if (memcmp(nmea, &gnss_cfg_data->nmea_address_field[1], 5) == 0) { + return &gnss_cfg_data->storageNMEAGNRMC->working_copy.length; + } + + return NULL; +} + +uint8_t * gnss_max_m10s_get_nmea_working_ptr( + sl_max_m10s_cfg_data_t *gnss_cfg_data) +{ + char nmea[] = "GPGGA"; + if (memcmp(nmea, &gnss_cfg_data->nmea_address_field[1], 5) == 0) { + return &gnss_cfg_data->storageNMEAGPGGA->working_copy.nmea[0]; + } + + strcpy(nmea, "GNGGA"); + if (memcmp(nmea, &gnss_cfg_data->nmea_address_field[1], 5) == 0) { + return &gnss_cfg_data->storageNMEAGNGGA->working_copy.nmea[0]; + } + + strcpy(nmea, "GPRMC"); + if (memcmp(nmea, &gnss_cfg_data->nmea_address_field[1], 5) == 0) { + return &gnss_cfg_data->storageNMEAGPRMC->working_copy.nmea[0]; + } + + strcpy(nmea, "GNRMC"); + if (memcmp(nmea, &gnss_cfg_data->nmea_address_field[1], 5) == 0) { + return &gnss_cfg_data->storageNMEAGNRMC->working_copy.nmea[0]; + } + + return NULL; +} + +uint8_t * gnss_max_m10s_get_nmea_complete_length_ptr( + sl_max_m10s_cfg_data_t *gnss_cfg_data) +{ + char nmea[] = "GPGGA"; + if (memcmp(nmea, &gnss_cfg_data->nmea_address_field[1], 5) == 0) { + return &gnss_cfg_data->storageNMEAGPGGA->complete_copy.length; + } + + strcpy(nmea, "GNGGA"); + if (memcmp(nmea, &gnss_cfg_data->nmea_address_field[1], 5) == 0) { + return &gnss_cfg_data->storageNMEAGNGGA->complete_copy.length; + } + + strcpy(nmea, "GPRMC"); + if (memcmp(nmea, &gnss_cfg_data->nmea_address_field[1], 5) == 0) { + return &gnss_cfg_data->storageNMEAGPRMC->complete_copy.length; + } + + strcpy(nmea, "GNRMC"); + if (memcmp(nmea, &gnss_cfg_data->nmea_address_field[1], 5) == 0) { + return &gnss_cfg_data->storageNMEAGNRMC->complete_copy.length; + } + + return NULL; +} + +uint8_t * gnss_max_m10s_get_complete_copy_nmea( + sl_max_m10s_cfg_data_t *gnss_cfg_data) +{ + char nmea[] = "GPGGA"; + if (memcmp(nmea, &gnss_cfg_data->nmea_address_field[1], 5) == 0) { + return &gnss_cfg_data->storageNMEAGPGGA->complete_copy.nmea[0]; + } + + strcpy(nmea, "GNGGA"); + if (memcmp(nmea, &gnss_cfg_data->nmea_address_field[1], 5) == 0) { + return &gnss_cfg_data->storageNMEAGNGGA->complete_copy.nmea[0]; + } + + strcpy(nmea, "GPRMC"); + if (memcmp(nmea, &gnss_cfg_data->nmea_address_field[1], 5) == 0) { + return &gnss_cfg_data->storageNMEAGPRMC->complete_copy.nmea[0]; + } + + strcpy(nmea, "GNRMC"); + if (memcmp(nmea, &gnss_cfg_data->nmea_address_field[1], 5) == 0) { + return &gnss_cfg_data->storageNMEAGNRMC->complete_copy.nmea[0]; + } + + return NULL; +} + +sl_status_t gnss_max_m10s_get_latitude_nmea( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + int32_t *latitude, + uint16_t max_time) +{ + sl_status_t status = SL_STATUS_OK; + uint32_t start_time = 0; + + start_time = gnss_max_m10s_milli_sec(); + + while (gnss_max_m10s_milli_sec() - start_time < max_time) { + status = + gnss_max_m10s_check_ublox_internal(gnss_cfg_data, + &(gnss_cfg_data->packet_cfg), + 0, + 0); + } + + if (SL_STATUS_OK == status) { + *latitude = gnss_max_m10s_nmea_get_latitude(gnss_cfg_data->nmea_data); + } + + return status; +} + +sl_status_t gnss_max_m10s_get_longitude_nmea( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + int32_t *longitude, + uint16_t max_time) +{ + sl_status_t status = SL_STATUS_OK; + uint32_t start_time = 0; + + start_time = gnss_max_m10s_milli_sec(); + + while (gnss_max_m10s_milli_sec() - start_time < max_time) { + status = gnss_max_m10s_check_ublox_internal(gnss_cfg_data, + &(gnss_cfg_data->packet_cfg), + 0, + 0); + } + + if (SL_STATUS_OK == status) { + *longitude = gnss_max_m10s_nmea_get_longitude(gnss_cfg_data->nmea_data); + } + + return status; +} + +sl_status_t gnss_max_m10s_get_altitude_msl_nmea( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + int32_t *altitude_msl, + uint16_t max_time) +{ + sl_status_t status = SL_STATUS_OK; + uint32_t start_time = 0; + + start_time = gnss_max_m10s_milli_sec(); + + while (gnss_max_m10s_milli_sec() - start_time < max_time) { + status = + gnss_max_m10s_check_ublox_internal(gnss_cfg_data, + &(gnss_cfg_data->packet_cfg), + 0, + 0); + } + + if (SL_STATUS_OK == status) { + if (false == gnss_max_m10s_nmea_get_altitude_msl(altitude_msl, + gnss_cfg_data->nmea_data)) + { + return SL_STATUS_FAIL; + } + } + + return status; +} + +sl_status_t gnss_max_m10s_get_geoid_nmea(sl_max_m10s_cfg_data_t *gnss_cfg_data, + int32_t *geoid, + uint16_t max_time) +{ + sl_status_t status = SL_STATUS_OK; + uint32_t start_time = 0; + + start_time = gnss_max_m10s_milli_sec(); + + while (gnss_max_m10s_milli_sec() - start_time < max_time) { + status = + gnss_max_m10s_check_ublox_internal(gnss_cfg_data, + &(gnss_cfg_data->packet_cfg), + 0, + 0); + } + + if (SL_STATUS_OK == status) { + if (false + == gnss_max_m10s_nmea_get_geoid_height(geoid, + gnss_cfg_data->nmea_data)) { + return SL_STATUS_FAIL; + } + } + return status; +} + +sl_status_t gnss_max_m10s_get_quality_nmea( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint8_t *quality, + uint16_t max_time) +{ + sl_status_t status = SL_STATUS_OK; + uint32_t start_time = 0; + + start_time = gnss_max_m10s_milli_sec(); + + while (gnss_max_m10s_milli_sec() - start_time < max_time) { + status = + gnss_max_m10s_check_ublox_internal(gnss_cfg_data, + &(gnss_cfg_data->packet_cfg), + 0, + 0); + } + if (SL_STATUS_OK == status) { + *quality = gnss_max_m10s_nmea_is_valid(gnss_cfg_data->nmea_data); + } + return status; +} + +sl_status_t gnss_max_m10s_get_satellite_nmea( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint8_t *num_sat, + uint16_t max_time) +{ + sl_status_t status = SL_STATUS_OK; + uint32_t start_time = 0; + + start_time = gnss_max_m10s_milli_sec(); + + while (gnss_max_m10s_milli_sec() - start_time < max_time) { + status = + gnss_max_m10s_check_ublox_internal(gnss_cfg_data, + &(gnss_cfg_data->packet_cfg), + 0, + 0); + } + if (SL_STATUS_OK == status) { + *num_sat = gnss_max_m10s_nmea_get_num_satellites(gnss_cfg_data->nmea_data); + } + + return status; +} + +sl_status_t gnss_max_m10s_get_day_nmea(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint8_t *day, + uint16_t max_time) +{ + sl_status_t status = SL_STATUS_OK; + uint32_t start_time = 0; + + start_time = gnss_max_m10s_milli_sec(); + + while (gnss_max_m10s_milli_sec() - start_time < max_time) { + status = + gnss_max_m10s_check_ublox_internal(gnss_cfg_data, + &(gnss_cfg_data->packet_cfg), + 0, + 0); + } + + if (SL_STATUS_OK == status) { + *day = gnss_max_m10s_nmea_get_day(gnss_cfg_data->nmea_data); + } + + return status; +} + +sl_status_t gnss_max_m10s_get_month_nmea(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint8_t *month, + uint16_t max_time) +{ + sl_status_t status = SL_STATUS_OK; + uint32_t start_time = 0; + + start_time = gnss_max_m10s_milli_sec(); + + while (gnss_max_m10s_milli_sec() - start_time < max_time) { + status = + gnss_max_m10s_check_ublox_internal(gnss_cfg_data, + &(gnss_cfg_data->packet_cfg), + 0, + 0); + } + + if (SL_STATUS_OK == status) { + *month = gnss_max_m10s_nmea_get_month(gnss_cfg_data->nmea_data); + } + + return status; +} + +sl_status_t gnss_max_m10s_get_year_nmea(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t *year, + uint16_t max_time) +{ + sl_status_t status = SL_STATUS_OK; + uint32_t start_time = 0; + + start_time = gnss_max_m10s_milli_sec(); + + while (gnss_max_m10s_milli_sec() - start_time < max_time) { + status = + gnss_max_m10s_check_ublox_internal(gnss_cfg_data, + &(gnss_cfg_data->packet_cfg), + 0, + 0); + } + + if (SL_STATUS_OK == status) { + *year = gnss_max_m10s_nmea_get_year(gnss_cfg_data->nmea_data); + } + + return status; +} + +sl_status_t gnss_max_m10s_get_hour_nmea(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint8_t *hour, + uint16_t max_time) +{ + sl_status_t status = SL_STATUS_OK; + uint32_t start_time = 0; + + start_time = gnss_max_m10s_milli_sec(); + + while (gnss_max_m10s_milli_sec() - start_time < max_time) { + status = + gnss_max_m10s_check_ublox_internal(gnss_cfg_data, + &(gnss_cfg_data->packet_cfg), + 0, + 0); + } + + if (SL_STATUS_OK == status) { + *hour = gnss_max_m10s_nmea_get_hour(gnss_cfg_data->nmea_data); + } + + return status; +} + +sl_status_t gnss_max_m10s_get_min_nmea(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint8_t *min, + uint16_t max_time) +{ + sl_status_t status = SL_STATUS_OK; + uint32_t start_time = 0; + + start_time = gnss_max_m10s_milli_sec(); + + while (gnss_max_m10s_milli_sec() - start_time < max_time) { + status = + gnss_max_m10s_check_ublox_internal(gnss_cfg_data, + &(gnss_cfg_data->packet_cfg), + 0, + 0); + } + + if (SL_STATUS_OK == status) { + *min = gnss_max_m10s_nmea_get_minute(gnss_cfg_data->nmea_data); + } + + return status; +} + +sl_status_t gnss_max_m10s_get_second_nmea(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint8_t *second, + uint16_t max_time) +{ + sl_status_t status = SL_STATUS_OK; + uint32_t start_time = 0; + + start_time = gnss_max_m10s_milli_sec(); + + while (gnss_max_m10s_milli_sec() - start_time < max_time) { + status = + gnss_max_m10s_check_ublox_internal(gnss_cfg_data, + &(gnss_cfg_data->packet_cfg), + 0, + 0); + } + + if (SL_STATUS_OK == status) { + *second = gnss_max_m10s_nmea_get_second(gnss_cfg_data->nmea_data); + } + + return status; +} + +sl_status_t gnss_max_m10s_get_speed_nmea(sl_max_m10s_cfg_data_t *gnss_cfg_data, + int32_t *speed, + uint16_t max_time) +{ + sl_status_t status = SL_STATUS_OK; + uint32_t start_time = 0; + + start_time = gnss_max_m10s_milli_sec(); + + while (gnss_max_m10s_milli_sec() - start_time < max_time) { + status = + gnss_max_m10s_check_ublox_internal(gnss_cfg_data, + &(gnss_cfg_data->packet_cfg), + 0, + 0); + } + + if (SL_STATUS_OK == status) { + *speed = gnss_max_m10s_nmea_get_speed(gnss_cfg_data->nmea_data); + } + + return status; +} + +sl_status_t gnss_max_m10s_get_ground_course_nmea( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + int32_t *course, + uint16_t max_time) +{ + sl_status_t status = SL_STATUS_OK; + uint32_t start_time = 0; + + start_time = gnss_max_m10s_milli_sec(); + + while (gnss_max_m10s_milli_sec() - start_time < max_time) { + status = + gnss_max_m10s_check_ublox_internal(gnss_cfg_data, + &(gnss_cfg_data->packet_cfg), + 0, + 0); + } + + if (SL_STATUS_OK == status) { + *course = gnss_max_m10s_nmea_get_course(gnss_cfg_data->nmea_data); + } + + return status; +} + +sl_status_t gnss_max_m10s_get_horizontal_dilution_nmea( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint8_t *hdop, + uint16_t max_time) +{ + sl_status_t status = SL_STATUS_OK; + uint32_t start_time = 0; + + start_time = gnss_max_m10s_milli_sec(); + + while (gnss_max_m10s_milli_sec() - start_time < max_time) { + status = + gnss_max_m10s_check_ublox_internal(gnss_cfg_data, + &(gnss_cfg_data->packet_cfg), + 0, + 0); + } + + if (SL_STATUS_OK == status) { + *hdop = gnss_max_m10s_nmea_get_hdop(gnss_cfg_data->nmea_data); + } + + return status; +} + +sl_status_t gnss_max_m10s_get_nav_system_nmea( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + char *nav_system, + uint16_t max_time) +{ + sl_status_t status = SL_STATUS_OK; + uint32_t start_time = 0; + + start_time = gnss_max_m10s_milli_sec(); + + while (gnss_max_m10s_milli_sec() - start_time < max_time) { + status = + gnss_max_m10s_check_ublox_internal(gnss_cfg_data, + &(gnss_cfg_data->packet_cfg), + 0, + 0); + } + + if (SL_STATUS_OK == status) { + *nav_system = gnss_max_m10s_nmea_get_nav_system(gnss_cfg_data->nmea_data); + } + + return status; +} diff --git a/driver/public/silabs/gnss_max_m10s/src/gnss_max_m10s_ubx.c b/driver/public/silabs/gnss_max_m10s/src/gnss_max_m10s_ubx.c new file mode 100644 index 00000000..aa6c97af --- /dev/null +++ b/driver/public/silabs/gnss_max_m10s/src/gnss_max_m10s_ubx.c @@ -0,0 +1,2094 @@ +/***************************************************************************//** + * @file gnss_max_m10s_ubx.c + * @brief MAX_M10S GNSS receiver driver external APIs implementation for UBX + * sentence data + ******************************************************************************* + * # License + * Copyright 2020 Silicon Laboratories Inc. www.silabs.com + ******************************************************************************* + * + * SPDX-License-Identifier: Zlib + * + * The licensor of this software is Silicon Laboratories Inc. + * + * This software is provided \'as-is\', without any express or implied + * warranty. In no event will the authors be held liable for any damages + * arising from the use of this software. + * + * Permission is granted to anyone to use this software for any purpose, + * including commercial applications, and to alter it and redistribute it + * freely, subject to the following restrictions: + * + * 1. The origin of this software must not be misrepresented; you must not + * claim that you wrote the original software. If you use this software + * in a product, an acknowledgment in the product documentation would be + * appreciated but is not required. + * 2. Altered source versions must be plainly marked as such, and must not be + * misrepresented as being the original software. + * 3. This notice may not be removed or altered from any source distribution. + * + ******************************************************************************* + * # Evaluation Quality + * This code has been minimally tested to ensure that it builds and is suitable + * as a demonstration for evaluation purposes only. This code will be maintained + * at the sole discretion of Silicon Labs. + ******************************************************************************/ +#include +#include "gnss_max_m10s_ubx.h" + +/**************************************************************************//** + * @brief initializes packet for UBXNAVPVT packet. + * @param[in] gnss_cfg_data : pointer to the structure + * containing GNSS configuration data. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + *****************************************************************************/ +static sl_status_t gnss_max_m10s_init_packet_ubxnavpvt( + sl_max_m10s_cfg_data_t *gnss_cfg_data); + +/**************************************************************************//** + * @brief initializes packet for UBXNAVSTATUS packet. + * @param[in] gnss_cfg_data : pointer to the structure + * containing GNSS configuration data. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + *****************************************************************************/ +static sl_status_t gnss_max_m10s_init_packet_ubxnavstatus( + sl_max_m10s_cfg_data_t *gnss_cfg_data); + +/**************************************************************************//** + * @brief initializes packet for UBXNAVSAT packet. + * @param[in] gnss_cfg_data : pointer to the structure + * containing GNSS configuration data. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + *****************************************************************************/ +static sl_status_t gnss_max_m10s_init_packet_ubxnavsat( + sl_max_m10s_cfg_data_t *gnss_cfg_data); + +/**************************************************************************//** + * @brief initializes packet for UBXNAVVELNED packet. + * @param[in] gnss_cfg_data : pointer to the structure + * containing GNSS configuration data. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + *****************************************************************************/ +static sl_status_t gnss_max_m10s_init_packet_ubxnavvelned( + sl_max_m10s_cfg_data_t *gnss_cfg_data); + +/**************************************************************************//** + * @brief initializes packet for UBXNAVSIG packet. + * @param[in] gnss_cfg_data : pointer to the structure + * containing GNSS configuration data. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + *****************************************************************************/ +static sl_status_t gnss_max_m10s_init_packet_ubxnavsig( + sl_max_m10s_cfg_data_t *gnss_cfg_data); + +/**************************************************************************//** + * @brief initializes packet for UBXNAVEOE packet. + * @param[in] gnss_cfg_data : pointer to the structure + * containing GNSS configuration data. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + *****************************************************************************/ +static sl_status_t gnss_max_m10s_init_packet_ubxnavepoch( + sl_max_m10s_cfg_data_t *gnss_cfg_data); + +/**************************************************************************//** + * @brief initializes packet for UBXNAVCLOCK packet. + * @param[in] gnss_cfg_data : pointer to the structure + * containing GNSS configuration data. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + *****************************************************************************/ +static sl_status_t gnss_max_m10s_init_packet_ubxnavclock( + sl_max_m10s_cfg_data_t *gnss_cfg_data); + +/**************************************************************************//** + * @brief initializes packet for UBXNAVDOP packet. + * @param[in] gnss_cfg_data : pointer to the structure + * containing GNSS configuration data. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + *****************************************************************************/ +static sl_status_t gnss_max_m10s_init_packet_ubxnavdop( + sl_max_m10s_cfg_data_t *gnss_cfg_data); + +/**************************************************************************//** + * @brief initializes packet for UBXNAVTIMELS packet. + * @param[in] gnss_cfg_data : pointer to the structure + * containing GNSS configuration data. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + *****************************************************************************/ +static sl_status_t gnss_max_m10s_init_packet_ubxnavtimels( + sl_max_m10s_cfg_data_t *gnss_cfg_data); + +/**************************************************************************//** + * @brief initializes packet for UBXNAVPOSLLH packet. + * @param[in] gnss_cfg_data : pointer to the structure + * containing GNSS configuration data. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + *****************************************************************************/ +static sl_status_t gnss_max_m10s_init_packet_ubxnavposllh( + sl_max_m10s_cfg_data_t *gnss_cfg_data); + +/**************************************************************************//** + * @brief initializes packet for UBXNAVTIMEUTC packet. + * @param[in] gnss_cfg_data : pointer to the structure + * containing GNSS configuration data. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + *****************************************************************************/ +static sl_status_t gnss_max_m10s_init_packet_ubxnavtimeutc( + sl_max_m10s_cfg_data_t *gnss_cfg_data); + +/**************************************************************************//** + * @brief Given a spot in the payload array, extract four bytes and build a long + * @param[in] msg : pointer to the payload + * @param[in] spot_to_start : starting spot for the extraction. + * @return long type data extracted from the payload. + *****************************************************************************/ +static uint32_t gnss_max_m10s_extract_long(sl_max_m10s_ubx_packet_t *msg, + uint16_t spot_to_start); + +/**************************************************************************//** + * @brief Given a spot, extract a signed 8-bit value from the payload + * @param[in] msg : pointer to the payload + * @param[in] spot_to_start : starting spot for the extraction. + * @return char type data extracted from the payload. + *****************************************************************************/ +static int8_t gnss_max_m10s_extract_signed_char(sl_max_m10s_ubx_packet_t *msg, + uint16_t spot_to_start); + +/**************************************************************************//** + * @brief Just so there is no ambiguity about whether a uint32_t will cast to + * a int32_t correctly + * @param[in] msg : pointer to the payload + * @param[in] spot_to_start : starting spot for the extraction. + * @return signed long type data extracted from the payload. + *****************************************************************************/ +static int32_t gnss_max_m10s_extract_signed_long(sl_max_m10s_ubx_packet_t *msg, + uint16_t spot_to_start); + +/**************************************************************************//** + * @brief Given a spot in the payload array, extract two bytes and build an int + * @param[in] msg : pointer to the payload + * @param[in] spot_to_start : starting spot for the extraction. + * @return integer byte extracted from the payload. + *****************************************************************************/ +static uint16_t gnss_max_m10s_extract_int(sl_max_m10s_ubx_packet_t *msg, + uint16_t spot_to_start); + +/**************************************************************************//** + * @brief check for the ambiguity about whether a uint16_t will cast to + * a int16_t correctly + * @param[in] msg : pointer to the payload + * @param[in] spot_to_start : starting spot for the extraction. + * @return signed integer byte extracted from the payload. + *****************************************************************************/ +static int16_t gnss_max_m10s_extract_signed_int(sl_max_m10s_ubx_packet_t *msg, + uint16_t spot_to_start); + +/**************************************************************************//** + * @brief Get the latest Position/Velocity/Time solution. + * @param[in] gnss_cfg_data : pointer to the structure + * containing GNSS configuration data. + * @param[in] max_wait : Timeout value. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + *****************************************************************************/ +static sl_status_t gnss_max_m10s_get_pvt(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait); + +/**************************************************************************//** + * @brief Get the information about the upcoming leap second event + * if one is scheduled. + * @param[in] gnss_cfg_data : pointer to the structure + * containing GNSS configuration data. + * @param[in] max_wait : Timeout value. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + *****************************************************************************/ +static sl_status_t gnss_max_m10s_get_nav_timels( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait); + +/**************************************************************************//** + * @brief Get the information about the UTC time. + * @param[in] gnss_cfg_data : pointer to the structure + * containing GNSS configuration data. + * @param[in] max_wait : Timeout value. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + *****************************************************************************/ +static sl_status_t gnss_max_m10s_get_nav_timeutc( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait); + +/**************************************************************************//** + * @brief Get geodetic position solution of the UBX data. + * @param[in] gnss_cfg_data : pointer to the structure + * containing GNSS configuration data. + * @param[in] max_wait : Timeout value. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + *****************************************************************************/ +static sl_status_t gnss_max_m10s_get_nav_posllh( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait); + +/**************************************************************************//** + * @brief Get the latest receiver navigation status. + * @param[in] gnss_cfg_data : pointer to the structure + * containing GNSS configuration data. + * @param[in] max_wait : Timeout value. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + *****************************************************************************/ +static sl_status_t gnss_max_m10s_get_nav_status( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait); + +/**************************************************************************//** + * @brief Get the satellite information tracked by GNSS receiver. + * @param[in] gnss_cfg_data : pointer to the structure + * containing GNSS configuration data. + * @param[in] max_wait : Timeout value. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + *****************************************************************************/ +static sl_status_t gnss_max_m10s_get_nav_sat( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait); + +/**************************************************************************//** + * @brief Get the signal information currently tracked by GNSS receiver. + * @param[in] gnss_cfg_data : pointer to the structure + * containing GNSS configuration data. + * @param[in] max_wait : Timeout value. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + *****************************************************************************/ +static sl_status_t gnss_max_m10s_get_nav_sig( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait); + +/**************************************************************************//** + * @brief Get the dilution of precision UBX data. + * @param[in] gnss_cfg_data : pointer to the structure + * containing GNSS configuration data. + * @param[in] max_wait : Timeout value. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + *****************************************************************************/ +static sl_status_t gnss_max_m10s_get_nav_dop( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait); + +/**************************************************************************//** + * @brief Get the navigation clock solution UBX data. + * @param[in] gnss_cfg_data : pointer to the structure + * containing GNSS configuration data. + * @param[in] max_wait : Timeout value. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + *****************************************************************************/ +static sl_status_t gnss_max_m10s_get_nav_clock( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait); + +/**************************************************************************//** + * @brief Get the velocity solution in NED frame UBX data. + * @param[in] gnss_cfg_data : pointer to the structure + * containing GNSS configuration data. + * @param[in] max_wait : Timeout value. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + *****************************************************************************/ +static sl_status_t gnss_max_m10s_get_nav_velned( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait); + +/**************************************************************************//** + * @brief Get the navigation end of epoch UBX data. + * @param[in] gnss_cfg_data : pointer to the structure + * containing GNSS configuration data. + * @param[in] max_wait : Timeout value. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + *****************************************************************************/ +static sl_status_t gnss_max_m10s_get_nav_epoch( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait); + +void gnss_max_m10s_process_ubx(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint8_t incoming, + uint8_t requested_class, + uint8_t requested_id) +{ + sl_max_m10s_ubx_packet_t *incomingUBX = NULL; + uint16_t maximum_payload_size; + bool overrun; + + if (gnss_cfg_data->active_packet_buffer + == SL_MAX_M10S_UBLOX_PACKET_PACKETCFG) { + maximum_payload_size = gnss_cfg_data->msg_data.packet_cfg_payloadsize; + incomingUBX = &(gnss_cfg_data->packet_cfg); + } else if (gnss_cfg_data->active_packet_buffer + == SL_MAX_M10S_UBLOX_PACKET_PACKETAUTO) { + incomingUBX = &(gnss_cfg_data->packet_auto); + + bool log_because_auto = + gnss_max_m10s_auto_lookup(gnss_cfg_data, + &maximum_payload_size); + + if ((!log_because_auto)) { + maximum_payload_size = UBX_MAX_LENGTH; + } + } else if (gnss_cfg_data->active_packet_buffer + == SL_MAX_M10S_UBLOX_PACKET_PACKETACK) { + incomingUBX = &(gnss_cfg_data->packet_ack); + maximum_payload_size = 2; + } else { + if (gnss_cfg_data->active_packet_buffer + == SL_MAX_M10S_UBLOX_PACKET_PACKETBUF) { + incomingUBX = &(gnss_cfg_data->packet_buf); + } else if (gnss_cfg_data->active_packet_buffer + == SL_MAX_M10S_UBLOX_PACKET_PACKETACK) { + incomingUBX = &(gnss_cfg_data->packet_ack); + } + maximum_payload_size = 2; + } + + overrun = false; + + if (incomingUBX->counter < (incomingUBX->len + 4)) { + gnss_max_m10s_add_to_checksum(gnss_cfg_data, incoming); + } + + /// for UBX packet class + if (incomingUBX->counter == 0) { + incomingUBX->cls = incoming; + } else if (incomingUBX->counter == 1) { /// for UBX packet ID + incomingUBX->id = incoming; + } else if (incomingUBX->counter == 2) { /// for LSB of data length + incomingUBX->len = incoming; + } else if (incomingUBX->counter == 3) { /// for MSB of data length + incomingUBX->len |= incoming << 8; + } else if (incomingUBX->counter == incomingUBX->len + 4) { /// for checksum_a + incomingUBX->checksum_a = incoming; + } else if (incomingUBX->counter == incomingUBX->len + 5) { /// for checksum_b + incomingUBX->checksum_b = incoming; + gnss_cfg_data->current_sentence = SL_MAX_M10S_UBLOX_SENTENCE_TYPE_NONE; + + if ((incomingUBX->checksum_a == gnss_cfg_data->rolling_checksum_a) + && (incomingUBX->checksum_b == gnss_cfg_data->rolling_checksum_b)) { + incomingUBX->valid = SL_MAX_M10S_UBLOX_PACKET_VALIDITY_VALID; + gnss_cfg_data->signs_of_life = true; + + if ((incomingUBX->cls == requested_class) + && (incomingUBX->id == requested_id)) { + incomingUBX->class_and_id_match = + SL_MAX_M10S_UBLOX_PACKET_VALIDITY_VALID; + } else if ((incomingUBX->cls == UBX_CLASS_ACK) + && (incomingUBX->id == UBX_ACK_ACK) + && (incomingUBX->payload[0] == requested_class) + && (incomingUBX->payload[1] == requested_id)) { + incomingUBX->class_and_id_match = + SL_MAX_M10S_UBLOX_PACKET_VALIDITY_VALID; + } else if ((incomingUBX->cls == UBX_CLASS_ACK) + && (incomingUBX->id == UBX_CLASS_NACK) + && (incomingUBX->payload[0] == requested_class) + && (incomingUBX->payload[1] == requested_id)) { + incomingUBX->class_and_id_match = + SL_MAX_M10S_UBLOX_PACKET_NOTACKNOWLEDGED; + } else if ((gnss_max_m10s_auto_lookup(gnss_cfg_data, + NULL))) { + /// leave incomingUBX->class_and_id_match _unchanged + } + + if (gnss_cfg_data->ignore_this_payload == false) { + gnss_max_m10s_process_ubx_packet(gnss_cfg_data, incomingUBX); + } + } else { + incomingUBX->valid = SL_MAX_M10S_UBLOX_PACKET_VALIDITY_NOT_VALID; + + if ((incomingUBX->cls == requested_class) + && (incomingUBX->id == requested_id)) { + incomingUBX->class_and_id_match = + SL_MAX_M10S_UBLOX_PACKET_VALIDITY_NOT_VALID; + } else if ((incomingUBX->cls == UBX_CLASS_ACK) + && (incomingUBX->payload[0] == requested_class) + && (incomingUBX->payload[1] == requested_id)) { + incomingUBX->class_and_id_match = + SL_MAX_M10S_UBLOX_PACKET_VALIDITY_NOT_VALID; + } + } + + if (gnss_cfg_data->active_packet_buffer + == SL_MAX_M10S_UBLOX_PACKET_PACKETAUTO) { + free(gnss_cfg_data->msg_data.payload_auto); + + gnss_cfg_data->msg_data.payload_auto = NULL; + gnss_cfg_data->packet_auto.payload = gnss_cfg_data->msg_data.payload_auto; + } + } else { + uint16_t starting_spot = incomingUBX->starting_spot; + + if (gnss_max_m10s_auto_lookup(gnss_cfg_data, false)) { + starting_spot = 0; + } + + /// Check if this is payload data which should be ignored + if (gnss_cfg_data->ignore_this_payload == false) { + if ((incomingUBX->counter - 4) >= starting_spot) { + if (((incomingUBX->counter - 4) - starting_spot) + < maximum_payload_size) { + incomingUBX->payload[(incomingUBX->counter - 4) + - starting_spot] = incoming; /// Store this byte into payload array + } else { + overrun = true; + } + } + } + } + + if (overrun + || ((incomingUBX->counter == maximum_payload_size + 6) + && (gnss_cfg_data->ignore_this_payload == false))) { + gnss_cfg_data->current_sentence = SL_MAX_M10S_UBLOX_SENTENCE_TYPE_NONE; + } + + incomingUBX->counter++; +} + +void gnss_max_m10s_process_ubx_packet(sl_max_m10s_cfg_data_t *gnss_cfg_data, + sl_max_m10s_ubx_packet_t *msg) +{ + if ((msg->id == UBX_NAV_PVT) && (msg->len == UBX_NAV_PVT_LEN)) { + sl_max_m10s_ubx_navpvt_process(gnss_cfg_data, msg); + } else if ((msg->id == UBX_NAV_STATUS) && (msg->len == UBX_NAV_STATUS_LEN)) { + sl_max_m10s_ubx_navstatus_process(gnss_cfg_data, msg); + } else if ((msg->id == UBX_NAV_DOP) && (msg->len == UBX_NAV_DOP_LEN)) { + sl_max_m10s_ubx_navdop_process(gnss_cfg_data, msg); + } else if ((msg->id == UBX_NAV_CLOCK) && (msg->len == UBX_NAV_CLOCK_LEN)) { + sl_max_m10s_ubx_navclock_process(gnss_cfg_data, msg); + } else if ((msg->id == UBX_NAV_EOE) && (msg->len == UBX_NAV_EOE_LEN)) { + sl_max_m10s_ubx_navepoch_process(gnss_cfg_data, msg); + } else if (msg->id == UBX_NAV_SAT) { + sl_max_m10s_ubx_navsat_process(gnss_cfg_data, msg); + } else if ((msg->id == UBX_NAV_TIMELS) && (msg->len == UBX_NAV_TIMELS_LEN)) { + sl_max_m10s_ubx_navtimels_process(gnss_cfg_data, msg); + } else if ((msg->id == UBX_NAV_TIMEUTC) + && (msg->len == UBX_NAV_TIMEUTC_LEN)) { + sl_max_m10s_ubx_navtimeutc_process(gnss_cfg_data, msg); + } else if (msg->id == UBX_NAV_SIG) { + sl_max_m10s_ubx_navsig_process(gnss_cfg_data, msg); + } else if ((msg->id == UBX_NAV_POSLLH) && (msg->len == UBX_NAV_POSLLH_LEN)) { + sl_max_m10s_ubx_navposllh_process(gnss_cfg_data, msg); + } else if ((msg->id == UBX_NAV_VELNED) && (msg->len == UBX_NAV_VELNED_LEN)) { + sl_max_m10s_ubx_navvelned_process(gnss_cfg_data, msg); + } +} + +void sl_max_m10s_ubx_navstatus_process(sl_max_m10s_cfg_data_t *gnss_cfg_data, + sl_max_m10s_ubx_packet_t *msg) +{ + bool added_to_file_buffer = false; + + if (gnss_cfg_data->packetUBXNAVSTATUS != NULL) { + gnss_cfg_data->packetUBXNAVSTATUS->data.iTOW = gnss_max_m10s_extract_long( + msg, + 0); + gnss_cfg_data->packetUBXNAVSTATUS->data.gps_fix = + gnss_max_m10s_extract_byte(msg, 4); + gnss_cfg_data->packetUBXNAVSTATUS->data.flags.all = + gnss_max_m10s_extract_byte(msg, 5); + gnss_cfg_data->packetUBXNAVSTATUS->data.fix_status.all = + gnss_max_m10s_extract_byte(msg, 6); + gnss_cfg_data->packetUBXNAVSTATUS->data.flags_2.all = + gnss_max_m10s_extract_byte(msg, 7); + gnss_cfg_data->packetUBXNAVSTATUS->data.time_to_first_fix = + gnss_max_m10s_extract_long(msg, 8); + gnss_cfg_data->packetUBXNAVSTATUS->data.milli_sec_since_startup = + gnss_max_m10s_extract_long(msg, 12); + + if ((gnss_cfg_data->packetUBXNAVSTATUS->callback_data != NULL) + && (gnss_cfg_data->packetUBXNAVSTATUS->automatic_flags.flags.bits. + callbackCopyValid == false)) { + memcpy(&gnss_cfg_data->packetUBXNAVSTATUS->callback_data->iTOW, + &gnss_cfg_data->packetUBXNAVSTATUS->data.iTOW, + sizeof(sl_max_m10s_ubx_nav_status_data_t)); + + gnss_cfg_data->packetUBXNAVSTATUS->automatic_flags.flags.bits. + callbackCopyValid = true; + } + + if (gnss_cfg_data->packetUBXNAVSTATUS->automatic_flags.flags.bits. + addToFileBuffer) { + added_to_file_buffer = gnss_max_m10s_store_packet(gnss_cfg_data, msg); + } + } + + if (!added_to_file_buffer) { + added_to_file_buffer = gnss_max_m10s_store_packet(gnss_cfg_data, msg); + } +} + +void sl_max_m10s_ubx_navdop_process(sl_max_m10s_cfg_data_t *gnss_cfg_data, + sl_max_m10s_ubx_packet_t *msg) +{ + bool added_to_file_buffer = false; + + if (gnss_cfg_data->packetUBXNAVDOP != NULL) { + gnss_cfg_data->packetUBXNAVDOP->data.iTOW = gnss_max_m10s_extract_long(msg, + 0); + gnss_cfg_data->packetUBXNAVDOP->data.geometric = gnss_max_m10s_extract_int( + msg, + 4); + gnss_cfg_data->packetUBXNAVDOP->data.position = gnss_max_m10s_extract_int( + msg, + 6); + gnss_cfg_data->packetUBXNAVDOP->data.time = + gnss_max_m10s_extract_int(msg, 8); + gnss_cfg_data->packetUBXNAVDOP->data.vertical = gnss_max_m10s_extract_int( + msg, + 10); + gnss_cfg_data->packetUBXNAVDOP->data.horizontal = gnss_max_m10s_extract_int( + msg, + 12); + gnss_cfg_data->packetUBXNAVDOP->data.north = gnss_max_m10s_extract_int(msg, + 14); + gnss_cfg_data->packetUBXNAVDOP->data.east = gnss_max_m10s_extract_int(msg, + 16); + + if ((gnss_cfg_data->packetUBXNAVDOP->callback_data != NULL) + && (gnss_cfg_data->packetUBXNAVDOP->automatic_flags.flags.bits. + callbackCopyValid == false)) { + memcpy(&gnss_cfg_data->packetUBXNAVDOP->callback_data->iTOW, + &gnss_cfg_data->packetUBXNAVDOP->data.iTOW, + sizeof(sl_max_m10s_ubx_nav_dop_data_t)); + + gnss_cfg_data->packetUBXNAVDOP->automatic_flags.flags.bits. + callbackCopyValid = true; + } + + if (gnss_cfg_data->packetUBXNAVDOP->automatic_flags.flags.bits. + addToFileBuffer) { + added_to_file_buffer = gnss_max_m10s_store_packet(gnss_cfg_data, msg); + } + } + + if (!added_to_file_buffer) { + added_to_file_buffer = gnss_max_m10s_store_packet(gnss_cfg_data, msg); + } +} + +void sl_max_m10s_ubx_navclock_process(sl_max_m10s_cfg_data_t *gnss_cfg_data, + sl_max_m10s_ubx_packet_t *msg) +{ + bool added_to_file_buffer = false; + + if (gnss_cfg_data->packetUBXNAVCLOCK != NULL) { + gnss_cfg_data->packetUBXNAVCLOCK->data.iTOW = gnss_max_m10s_extract_long( + msg, + 0); + gnss_cfg_data->packetUBXNAVCLOCK->data.clock_bias = + gnss_max_m10s_extract_signed_long(msg, 4); + gnss_cfg_data->packetUBXNAVCLOCK->data.clock_drift = + gnss_max_m10s_extract_signed_long(msg, 8); + gnss_cfg_data->packetUBXNAVCLOCK->data.time_accuracy = + gnss_max_m10s_extract_long(msg, 12); + gnss_cfg_data->packetUBXNAVCLOCK->data.freq_accuracy = + gnss_max_m10s_extract_long(msg, 16); + + if ((gnss_cfg_data->packetUBXNAVCLOCK->callback_data != NULL) + && (gnss_cfg_data->packetUBXNAVCLOCK->automatic_flags.flags.bits. + callbackCopyValid == false)) { + memcpy(&gnss_cfg_data->packetUBXNAVCLOCK->callback_data->iTOW, + &gnss_cfg_data->packetUBXNAVCLOCK->data.iTOW, + sizeof(sl_max_m10s_ubx_nav_clock_data_t)); + + gnss_cfg_data->packetUBXNAVCLOCK->automatic_flags.flags.bits. + callbackCopyValid = true; + } + + if (gnss_cfg_data->packetUBXNAVCLOCK->automatic_flags.flags.bits. + addToFileBuffer) { + added_to_file_buffer = gnss_max_m10s_store_packet(gnss_cfg_data, msg); + } + } + + if (!added_to_file_buffer) { + added_to_file_buffer = gnss_max_m10s_store_packet(gnss_cfg_data, msg); + } +} + +void sl_max_m10s_ubx_navepoch_process(sl_max_m10s_cfg_data_t *gnss_cfg_data, + sl_max_m10s_ubx_packet_t *msg) +{ + bool added_to_file_buffer = false; + + if (gnss_cfg_data->packetUBXNAVEOE != NULL) { + gnss_cfg_data->packetUBXNAVEOE->data.iTOW = gnss_max_m10s_extract_long(msg, + 0); + if ((gnss_cfg_data->packetUBXNAVEOE->callback_data != NULL) + && (gnss_cfg_data->packetUBXNAVEOE->automatic_flags.flags.bits. + callbackCopyValid == false)) { + memcpy(&gnss_cfg_data->packetUBXNAVEOE->callback_data->iTOW, + &gnss_cfg_data->packetUBXNAVEOE->data.iTOW, + sizeof(sl_max_m10s_ubx_nav_epoch_data_t)); + + gnss_cfg_data->packetUBXNAVEOE->automatic_flags.flags.bits. + callbackCopyValid = true; + } + + if (gnss_cfg_data->packetUBXNAVEOE->automatic_flags.flags.bits. + addToFileBuffer) { + added_to_file_buffer = gnss_max_m10s_store_packet(gnss_cfg_data, msg); + } + } + + if (!added_to_file_buffer) { + added_to_file_buffer = gnss_max_m10s_store_packet(gnss_cfg_data, msg); + } +} + +void sl_max_m10s_ubx_navsat_process(sl_max_m10s_cfg_data_t *gnss_cfg_data, + sl_max_m10s_ubx_packet_t *msg) +{ + bool added_to_file_buffer = false; + + if (gnss_cfg_data->packetUBXNAVSAT != NULL) { + gnss_cfg_data->packetUBXNAVSAT->data.header.iTOW = + gnss_max_m10s_extract_long(msg, 0); + gnss_cfg_data->packetUBXNAVSAT->data.header.version = + gnss_max_m10s_extract_byte(msg, 4); + gnss_cfg_data->packetUBXNAVSAT->data.header.num_sv = + gnss_max_m10s_extract_byte(msg, 5); + + /// The NAV SAT message could contain data for 255 SVs max. + for (uint16_t i = 0; (i < 255) + && (i < ((uint16_t)gnss_cfg_data->packetUBXNAVSAT->data.header.num_sv)) + && ((i * 12) < (msg->len - 8)); i++) { + uint16_t offset = (i * 12) + 8; + + gnss_cfg_data->packetUBXNAVSAT->data.blocks[i].gnss_id = + gnss_max_m10s_extract_byte(msg, offset + 0); + gnss_cfg_data->packetUBXNAVSAT->data.blocks[i].sv_id = + gnss_max_m10s_extract_byte(msg, offset + 1); + gnss_cfg_data->packetUBXNAVSAT->data.blocks[i].carrier_noise_ratio = + gnss_max_m10s_extract_byte(msg, offset + 2); + gnss_cfg_data->packetUBXNAVSAT->data.blocks[i].elevation = + gnss_max_m10s_extract_signed_char(msg, offset + 3); + gnss_cfg_data->packetUBXNAVSAT->data.blocks[i].azimuth = + gnss_max_m10s_extract_signed_int(msg, offset + 4); + gnss_cfg_data->packetUBXNAVSAT->data.blocks[i].pseudo_range = + gnss_max_m10s_extract_signed_int(msg, offset + 6); + gnss_cfg_data->packetUBXNAVSAT->data.blocks[i].flags.all = + gnss_max_m10s_extract_long(msg, offset + 8); + } + + if ((gnss_cfg_data->packetUBXNAVSAT->callback_data != NULL) + && (gnss_cfg_data->packetUBXNAVSAT->automatic_flags.flags.bits. + callbackCopyValid == false)) { + memcpy(&gnss_cfg_data->packetUBXNAVSAT->callback_data->header.iTOW, + &gnss_cfg_data->packetUBXNAVSAT->data.header.iTOW, + sizeof(sl_max_m10s_ubx_navsat_data_t)); + + gnss_cfg_data->packetUBXNAVSAT->automatic_flags.flags.bits. + callbackCopyValid = true; + } + + if (gnss_cfg_data->packetUBXNAVSAT->automatic_flags.flags.bits. + addToFileBuffer) { + added_to_file_buffer = gnss_max_m10s_store_packet(gnss_cfg_data, msg); + } + } + + if (!added_to_file_buffer) { + added_to_file_buffer = gnss_max_m10s_store_packet(gnss_cfg_data, msg); + } +} + +void sl_max_m10s_ubx_navsig_process(sl_max_m10s_cfg_data_t *gnss_cfg_data, + sl_max_m10s_ubx_packet_t *msg) +{ + bool added_to_file_buffer = false; + + if (gnss_cfg_data->packetUBXNAVSIG != NULL) { + gnss_cfg_data->packetUBXNAVSIG->data.header.iTOW = + gnss_max_m10s_extract_long(msg, 0); + gnss_cfg_data->packetUBXNAVSIG->data.header.version = + gnss_max_m10s_extract_byte(msg, 4); + gnss_cfg_data->packetUBXNAVSIG->data.header.num_signals = + gnss_max_m10s_extract_byte(msg, 5); + + /// The NAV SIG message could contain data for 92 signals max. + for (uint16_t i = 0; (i < 92) + && (i + < ((uint16_t)gnss_cfg_data->packetUBXNAVSIG->data.header. + num_signals)) + && ((i * 16) < (msg->len - 8)); i++) { + uint16_t offset = (i * 16) + 8; + + gnss_cfg_data->packetUBXNAVSIG->data.blocks[i].gnss_id = + gnss_max_m10s_extract_byte(msg, offset + 0); + gnss_cfg_data->packetUBXNAVSIG->data.blocks[i].sv_id = + gnss_max_m10s_extract_byte(msg, offset + 1); + gnss_cfg_data->packetUBXNAVSIG->data.blocks[i].sig_id = + gnss_max_m10s_extract_byte(msg, offset + 2); + gnss_cfg_data->packetUBXNAVSIG->data.blocks[i].freq_id = + gnss_max_m10s_extract_byte(msg, offset + 3); + gnss_cfg_data->packetUBXNAVSIG->data.blocks[i].psuedo_range = + gnss_max_m10s_extract_signed_int(msg, offset + 4); + gnss_cfg_data->packetUBXNAVSIG->data.blocks[i].carrier_noise_ratio = + gnss_max_m10s_extract_byte(msg, offset + 6); + gnss_cfg_data->packetUBXNAVSIG->data.blocks[i].quality_ind = + gnss_max_m10s_extract_byte(msg, offset + 7); + gnss_cfg_data->packetUBXNAVSIG->data.blocks[i].corr_source = + gnss_max_m10s_extract_byte(msg, offset + 8); + gnss_cfg_data->packetUBXNAVSIG->data.blocks[i].iono_model = + gnss_max_m10s_extract_byte(msg, offset + 9); + gnss_cfg_data->packetUBXNAVSIG->data.blocks[i].sig_flags.all = + gnss_max_m10s_extract_int(msg, offset + 10); + } + + if ((gnss_cfg_data->packetUBXNAVSIG->callback_data != NULL) + && (gnss_cfg_data->packetUBXNAVSIG->automatic_flags.flags.bits. + callbackCopyValid == false)) { + memcpy(&gnss_cfg_data->packetUBXNAVSIG->callback_data->header.iTOW, + &gnss_cfg_data->packetUBXNAVSIG->data.header.iTOW, + sizeof(sl_max_m10s_ubx_navsig_data_t)); + + gnss_cfg_data->packetUBXNAVSIG->automatic_flags.flags.bits. + callbackCopyValid = true; + } + + if (gnss_cfg_data->packetUBXNAVSIG->automatic_flags.flags.bits. + addToFileBuffer) { + added_to_file_buffer = gnss_max_m10s_store_packet(gnss_cfg_data, msg); + } + } + + if (!added_to_file_buffer) { + added_to_file_buffer = gnss_max_m10s_store_packet(gnss_cfg_data, msg); + } +} + +void sl_max_m10s_ubx_navtimels_process(sl_max_m10s_cfg_data_t *gnss_cfg_data, + sl_max_m10s_ubx_packet_t *msg) +{ + bool added_to_file_buffer = false; + + if (gnss_cfg_data->packetUBXNAVTIMELS != NULL) { + gnss_cfg_data->packetUBXNAVTIMELS->data.iTOW = gnss_max_m10s_extract_long( + msg, + 0); + gnss_cfg_data->packetUBXNAVTIMELS->data.version = + gnss_max_m10s_extract_byte(msg, 4); + gnss_cfg_data->packetUBXNAVTIMELS->data.src_of_current_leap = + gnss_max_m10s_extract_byte(msg, 8); + gnss_cfg_data->packetUBXNAVTIMELS->data.current_leap_sec = + gnss_max_m10s_extract_signed_char(msg, 9); + gnss_cfg_data->packetUBXNAVTIMELS->data.src_of_leap_sec_change = + gnss_max_m10s_extract_byte(msg, 10); + gnss_cfg_data->packetUBXNAVTIMELS->data.leap_sec_change = + gnss_max_m10s_extract_signed_char(msg, 11); + gnss_cfg_data->packetUBXNAVTIMELS->data.time_to_leap_sec_event = + gnss_max_m10s_extract_signed_long(msg, 12); + gnss_cfg_data->packetUBXNAVTIMELS->data.date_of_leap_sec_gps_week = + gnss_max_m10s_extract_int(msg, 16); + gnss_cfg_data->packetUBXNAVTIMELS->data.day_of_leap_sec_gps = + gnss_max_m10s_extract_int(msg, 18); + gnss_cfg_data->packetUBXNAVTIMELS->data.valid.all = + gnss_max_m10s_extract_signed_char(msg, 23); + + if ((gnss_cfg_data->packetUBXNAVTIMELS->callback_data != NULL) + && (gnss_cfg_data->packetUBXNAVTIMELS->automatic_flags.flags.bits. + callbackCopyValid == false)) { + memcpy(&gnss_cfg_data->packetUBXNAVTIMELS->callback_data->iTOW, + &gnss_cfg_data->packetUBXNAVTIMELS->data.iTOW, + sizeof(sl_max_m10s_ubx_nav_timels_data_t)); + + gnss_cfg_data->packetUBXNAVTIMELS->automatic_flags.flags.bits. + callbackCopyValid = true; + } + + if (gnss_cfg_data->packetUBXNAVTIMELS->automatic_flags.flags.bits. + addToFileBuffer) { + added_to_file_buffer = gnss_max_m10s_store_packet(gnss_cfg_data, msg); + } + } + + if (!added_to_file_buffer) { + added_to_file_buffer = gnss_max_m10s_store_packet(gnss_cfg_data, msg); + } +} + +void sl_max_m10s_ubx_navtimeutc_process(sl_max_m10s_cfg_data_t *gnss_cfg_data, + sl_max_m10s_ubx_packet_t *msg) +{ + bool added_to_file_buffer = false; + + if (gnss_cfg_data->packetUBXNAVTIMEUTC != NULL) { + gnss_cfg_data->packetUBXNAVTIMEUTC->data.iTOW = gnss_max_m10s_extract_long( + msg, + 0); + gnss_cfg_data->packetUBXNAVTIMEUTC->data.time_accuracy = + gnss_max_m10s_extract_long(msg, 4); + gnss_cfg_data->packetUBXNAVTIMEUTC->data.nano = + gnss_max_m10s_extract_signed_long(msg, 8); + gnss_cfg_data->packetUBXNAVTIMEUTC->data.year = gnss_max_m10s_extract_int( + msg, + 12); + gnss_cfg_data->packetUBXNAVTIMEUTC->data.month = gnss_max_m10s_extract_byte( + msg, + 14); + gnss_cfg_data->packetUBXNAVTIMEUTC->data.day = gnss_max_m10s_extract_byte( + msg, + 15); + gnss_cfg_data->packetUBXNAVTIMEUTC->data.hour = gnss_max_m10s_extract_byte( + msg, + 16); + gnss_cfg_data->packetUBXNAVTIMEUTC->data.min = gnss_max_m10s_extract_byte( + msg, + 17); + gnss_cfg_data->packetUBXNAVTIMEUTC->data.sec = gnss_max_m10s_extract_byte( + msg, + 18); + gnss_cfg_data->packetUBXNAVTIMEUTC->data.valid.all = + gnss_max_m10s_extract_byte(msg, 19); + + if ((gnss_cfg_data->packetUBXNAVTIMEUTC->callback_data != NULL) + && (gnss_cfg_data->packetUBXNAVTIMEUTC->automatic_flags.flags.bits. + callbackCopyValid == false)) { + memcpy(&gnss_cfg_data->packetUBXNAVTIMEUTC->callback_data->iTOW, + &gnss_cfg_data->packetUBXNAVTIMEUTC->data.iTOW, + sizeof(sl_max_m10s_ubx_nav_timeutc_data_t)); + + gnss_cfg_data->packetUBXNAVTIMEUTC->automatic_flags.flags.bits. + callbackCopyValid = true; + } + + if (gnss_cfg_data->packetUBXNAVTIMEUTC->automatic_flags.flags.bits. + addToFileBuffer) { + added_to_file_buffer = gnss_max_m10s_store_packet(gnss_cfg_data, msg); + } + } + + if (!added_to_file_buffer) { + added_to_file_buffer = gnss_max_m10s_store_packet(gnss_cfg_data, msg); + } +} + +void sl_max_m10s_ubx_navposllh_process(sl_max_m10s_cfg_data_t *gnss_cfg_data, + sl_max_m10s_ubx_packet_t *msg) +{ + bool added_to_file_buffer = false; + + if (gnss_cfg_data->packetUBXNAVPOSLLH != NULL) { + gnss_cfg_data->packetUBXNAVPOSLLH->data.iTOW = gnss_max_m10s_extract_long( + msg, + 0); + gnss_cfg_data->packetUBXNAVPOSLLH->data.lon = + gnss_max_m10s_extract_signed_long(msg, 4); + gnss_cfg_data->packetUBXNAVPOSLLH->data.lat = + gnss_max_m10s_extract_signed_long(msg, 8); + gnss_cfg_data->packetUBXNAVPOSLLH->data.height = + gnss_max_m10s_extract_signed_long(msg, 12); + gnss_cfg_data->packetUBXNAVPOSLLH->data.hMSL = + gnss_max_m10s_extract_signed_long(msg, 16); + gnss_cfg_data->packetUBXNAVPOSLLH->data.h_acc = gnss_max_m10s_extract_long( + msg, + 20); + gnss_cfg_data->packetUBXNAVPOSLLH->data.v_acc = gnss_max_m10s_extract_long( + msg, + 24); + + if ((gnss_cfg_data->packetUBXNAVPOSLLH->callback_data != NULL) + && (gnss_cfg_data->packetUBXNAVPOSLLH->automatic_flags.flags.bits. + callbackCopyValid == false)) { + memcpy(&gnss_cfg_data->packetUBXNAVPOSLLH->callback_data->iTOW, + &gnss_cfg_data->packetUBXNAVPOSLLH->data.iTOW, + sizeof(sl_max_m10s_ubx_nav_posllh_data_t)); + + gnss_cfg_data->packetUBXNAVPOSLLH->automatic_flags.flags.bits. + callbackCopyValid = true; + } + + if (gnss_cfg_data->packetUBXNAVPOSLLH->automatic_flags.flags.bits. + addToFileBuffer) { + added_to_file_buffer = gnss_max_m10s_store_packet(gnss_cfg_data, msg); + } + } + + if (!added_to_file_buffer) { + added_to_file_buffer = gnss_max_m10s_store_packet(gnss_cfg_data, msg); + } +} + +void sl_max_m10s_ubx_navvelned_process(sl_max_m10s_cfg_data_t *gnss_cfg_data, + sl_max_m10s_ubx_packet_t *msg) +{ + bool added_to_file_buffer = false; + + if (gnss_cfg_data->packetUBXNAVVELNED != NULL) { + gnss_cfg_data->packetUBXNAVVELNED->data.iTOW = gnss_max_m10s_extract_long( + msg, + 0); + gnss_cfg_data->packetUBXNAVVELNED->data.velN = + gnss_max_m10s_extract_signed_long(msg, 4); + gnss_cfg_data->packetUBXNAVVELNED->data.velE = + gnss_max_m10s_extract_signed_long(msg, 8); + gnss_cfg_data->packetUBXNAVVELNED->data.velD = + gnss_max_m10s_extract_signed_long(msg, 12); + gnss_cfg_data->packetUBXNAVVELNED->data.speed = gnss_max_m10s_extract_long( + msg, + 16); + gnss_cfg_data->packetUBXNAVVELNED->data.ground_speed = + gnss_max_m10s_extract_long(msg, 20); + gnss_cfg_data->packetUBXNAVVELNED->data.heading = + gnss_max_m10s_extract_signed_long(msg, 24); + gnss_cfg_data->packetUBXNAVVELNED->data.speed_acc = + gnss_max_m10s_extract_long(msg, 28); + gnss_cfg_data->packetUBXNAVVELNED->data.course_acc = + gnss_max_m10s_extract_long(msg, 32); + + if ((gnss_cfg_data->packetUBXNAVVELNED->callback_data != NULL) + && (gnss_cfg_data->packetUBXNAVVELNED->automatic_flags.flags.bits. + callbackCopyValid == false)) { + memcpy(&gnss_cfg_data->packetUBXNAVVELNED->callback_data->iTOW, + &gnss_cfg_data->packetUBXNAVVELNED->data.iTOW, + sizeof(sl_max_m10s_ubx_nav_posllh_data_t)); + + gnss_cfg_data->packetUBXNAVVELNED->automatic_flags.flags.bits. + callbackCopyValid = true; + } + + if (gnss_cfg_data->packetUBXNAVVELNED->automatic_flags.flags.bits. + addToFileBuffer) { + added_to_file_buffer = gnss_max_m10s_store_packet(gnss_cfg_data, msg); + } + } + + if (!added_to_file_buffer) { + added_to_file_buffer = gnss_max_m10s_store_packet(gnss_cfg_data, msg); + } +} + +void sl_max_m10s_ubx_navpvt_process(sl_max_m10s_cfg_data_t *gnss_cfg_data, + sl_max_m10s_ubx_packet_t *msg) +{ + bool added_to_file_buffer = false; + + if (gnss_cfg_data->packetUBXNAVPVT != NULL) { + gnss_cfg_data->packetUBXNAVPVT->data.fixType = gnss_max_m10s_extract_byte( + msg, + 20); + gnss_cfg_data->packetUBXNAVPVT->data.numSV = gnss_max_m10s_extract_byte(msg, + 23); + gnss_cfg_data->packetUBXNAVPVT->data.lon = + gnss_max_m10s_extract_signed_long(msg, 24); + gnss_cfg_data->packetUBXNAVPVT->data.lat = + gnss_max_m10s_extract_signed_long(msg, 28); + gnss_cfg_data->packetUBXNAVPVT->data.height = + gnss_max_m10s_extract_signed_long(msg, 32); + gnss_cfg_data->packetUBXNAVPVT->data.hMSL = + gnss_max_m10s_extract_signed_long(msg, 36); + gnss_cfg_data->packetUBXNAVPVT->data.hour = gnss_max_m10s_extract_byte(msg, + 8); + gnss_cfg_data->packetUBXNAVPVT->data.min = + gnss_max_m10s_extract_byte(msg, 9); + gnss_cfg_data->packetUBXNAVPVT->data.sec = gnss_max_m10s_extract_byte(msg, + 10); + gnss_cfg_data->packetUBXNAVPVT->data.nano = + gnss_max_m10s_extract_signed_long(msg, 16); + gnss_cfg_data->packetUBXNAVPVT->data.tAcc = gnss_max_m10s_extract_byte(msg, + 12); + gnss_cfg_data->packetUBXNAVPVT->data.year = + gnss_max_m10s_extract_int(msg, 4); + gnss_cfg_data->packetUBXNAVPVT->data.month = gnss_max_m10s_extract_byte(msg, + 6); + gnss_cfg_data->packetUBXNAVPVT->data.day = + gnss_max_m10s_extract_byte(msg, 7); + gnss_cfg_data->packetUBXNAVPVT->data.hAcc = gnss_max_m10s_extract_long(msg, + 40); + gnss_cfg_data->packetUBXNAVPVT->data.vAcc = gnss_max_m10s_extract_long(msg, + 42); + gnss_cfg_data->packetUBXNAVPVT->data.sAcc = gnss_max_m10s_extract_long(msg, + 68); + gnss_cfg_data->packetUBXNAVPVT->data.headAcc = gnss_max_m10s_extract_long( + msg, + 72); + gnss_cfg_data->packetUBXNAVPVT->data.velN = + gnss_max_m10s_extract_signed_long(msg, 48); + gnss_cfg_data->packetUBXNAVPVT->data.velE = + gnss_max_m10s_extract_signed_long(msg, 52); + gnss_cfg_data->packetUBXNAVPVT->data.velD = + gnss_max_m10s_extract_signed_long(msg, 56); + gnss_cfg_data->packetUBXNAVPVT->data.gSpeed = + gnss_max_m10s_extract_signed_long(msg, 60); + gnss_cfg_data->packetUBXNAVPVT->data.headMot = + gnss_max_m10s_extract_signed_long(msg, 68); + gnss_cfg_data->packetUBXNAVPVT->data.headVeh = + gnss_max_m10s_extract_signed_long(msg, 84); + gnss_cfg_data->packetUBXNAVPVT->data.magDec = + gnss_max_m10s_extract_signed_int(msg, 88); + gnss_cfg_data->packetUBXNAVPVT->data.magAcc = gnss_max_m10s_extract_int(msg, + 90); + gnss_cfg_data->packetUBXNAVPVT->data.pDOP = gnss_max_m10s_extract_int(msg, + 76); + gnss_cfg_data->packetUBXNAVPVT->data.valid.all = gnss_max_m10s_extract_byte( + msg, + 11); + gnss_cfg_data->packetUBXNAVPVT->data.confirm_flags.all = + gnss_max_m10s_extract_byte(msg, 22); + gnss_cfg_data->packetUBXNAVPVT->data.solution_flags.all = + gnss_max_m10s_extract_byte(msg, 21); + gnss_cfg_data->packetUBXNAVPVT->data.correction_flags.all = + gnss_max_m10s_extract_byte(msg, 78); + + if ((gnss_cfg_data->packetUBXNAVPVT->callback_data != NULL) + && (gnss_cfg_data->packetUBXNAVPVT->automatic_flags.flags.bits. + callbackCopyValid == false)) { + memcpy(&gnss_cfg_data->packetUBXNAVPVT->callback_data->iTOW, + &gnss_cfg_data->packetUBXNAVPVT->data.iTOW, + sizeof(sl_max_m10s_ubx_nav_pvt_data_t)); + + gnss_cfg_data->packetUBXNAVPVT->automatic_flags.flags.bits. + callbackCopyValid = true; + } + + if (gnss_cfg_data->packetUBXNAVPVT->automatic_flags.flags.bits. + addToFileBuffer) { + added_to_file_buffer = gnss_max_m10s_store_packet(gnss_cfg_data, msg); + } + } + + if (!added_to_file_buffer) { + added_to_file_buffer = gnss_max_m10s_store_packet(gnss_cfg_data, msg); + } +} + +sl_status_t gnss_max_m10s_get_unique_id(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait) +{ + gnss_cfg_data->packet_cfg.cls = UBX_CLASS_SEC; + gnss_cfg_data->packet_cfg.id = UBX_SEC_UNIQID; + gnss_cfg_data->packet_cfg.len = 0; + gnss_cfg_data->packet_cfg.starting_spot = 0; + + sl_max_m10s_ublox_status_e ret_val = gnss_max_m10s_send_command(gnss_cfg_data, + max_wait, + false); + + if (ret_val != SL_MAX_M10S_UBLOX_STATUS_DATA_RECEIVED) { + return SL_STATUS_FAIL; + } + + /// Extract the data + gnss_cfg_data->packetUBXUNIQID->version = + gnss_max_m10s_extract_byte(&(gnss_cfg_data->packet_cfg), + 0); + + /// For M10s version the unique id is 6 bytes, for F9 and M9 it will be 5 bytes. + for (uint8_t i = 0; i < 6; i++) { + gnss_cfg_data->packetUBXUNIQID->unique_id[i] = + gnss_max_m10s_extract_byte(&(gnss_cfg_data->packet_cfg), + i + + 4); + } + + return SL_STATUS_OK; +} + +sl_status_t gnss_max_m10s_get_navpvt_ubx(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait) +{ + sl_status_t status = SL_STATUS_OK; + + if (gnss_cfg_data->packetUBXNAVPVT == NULL) { + status = gnss_max_m10s_init_packet_ubxnavpvt(gnss_cfg_data); + + if (status != SL_STATUS_OK) { + return status; + } + } + + status = gnss_max_m10s_get_pvt(gnss_cfg_data, max_wait); + + return status; +} + +sl_status_t gnss_max_m10s_get_navepoch_ubx( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait) +{ + sl_status_t status = SL_STATUS_OK; + + if (gnss_cfg_data->packetUBXNAVEOE == NULL) { + status = gnss_max_m10s_init_packet_ubxnavepoch(gnss_cfg_data); + + if (status != SL_STATUS_OK) { + return status; + } + } + + status = gnss_max_m10s_get_nav_epoch(gnss_cfg_data, max_wait); + + return status; +} + +sl_status_t gnss_max_m10s_get_navtimels_ubx( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait) +{ + sl_status_t status = SL_STATUS_OK; + + if (gnss_cfg_data->packetUBXNAVTIMELS == NULL) { + status = gnss_max_m10s_init_packet_ubxnavtimels(gnss_cfg_data); + + if (status != SL_STATUS_OK) { + return status; + } + } + + status = gnss_max_m10s_get_nav_timels(gnss_cfg_data, max_wait); + + return status; +} + +sl_status_t gnss_max_m10s_get_navposllh_ubx( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait) +{ + sl_status_t status = SL_STATUS_OK; + + if (gnss_cfg_data->packetUBXNAVPOSLLH == NULL) { + status = gnss_max_m10s_init_packet_ubxnavposllh(gnss_cfg_data); + + if (status != SL_STATUS_OK) { + return status; + } + } + + status = gnss_max_m10s_get_nav_posllh(gnss_cfg_data, max_wait); + + return status; +} + +sl_status_t gnss_max_m10s_get_navtimeutc_ubx( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait) +{ + sl_status_t status = SL_STATUS_OK; + + if (gnss_cfg_data->packetUBXNAVTIMEUTC == NULL) { + status = gnss_max_m10s_init_packet_ubxnavtimeutc(gnss_cfg_data); + + if (status != SL_STATUS_OK) { + return status; + } + } + + status = gnss_max_m10s_get_nav_timeutc(gnss_cfg_data, max_wait); + + return status; +} + +sl_status_t gnss_max_m10s_get_navstatus_ubx( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait) +{ + sl_status_t status = SL_STATUS_OK; + + if (gnss_cfg_data->packetUBXNAVSTATUS == NULL) { + status = gnss_max_m10s_init_packet_ubxnavstatus(gnss_cfg_data); + + if (status != SL_STATUS_OK) { + return status; + } + } + + status = gnss_max_m10s_get_nav_status(gnss_cfg_data, max_wait); + + return status; +} + +sl_status_t gnss_max_m10s_get_navsat_ubx(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait) +{ + sl_status_t status = SL_STATUS_OK; + + if (gnss_cfg_data->packetUBXNAVSAT == NULL) { + status = gnss_max_m10s_init_packet_ubxnavsat(gnss_cfg_data); + + if (status != SL_STATUS_OK) { + return status; + } + } + + status = gnss_max_m10s_get_nav_sat(gnss_cfg_data, max_wait); + + return status; +} + +sl_status_t gnss_max_m10s_get_navsig_ubx(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait) +{ + sl_status_t status = SL_STATUS_OK; + + if (gnss_cfg_data->packetUBXNAVSIG == NULL) { + status = gnss_max_m10s_init_packet_ubxnavsig(gnss_cfg_data); + + if (status != SL_STATUS_OK) { + return status; + } + } + + status = gnss_max_m10s_get_nav_sig(gnss_cfg_data, max_wait); + + return status; +} + +sl_status_t gnss_max_m10s_get_navdop_ubx(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait) +{ + sl_status_t status = SL_STATUS_OK; + + if (gnss_cfg_data->packetUBXNAVDOP == NULL) { + status = gnss_max_m10s_init_packet_ubxnavdop(gnss_cfg_data); + + if (status != SL_STATUS_OK) { + return status; + } + } + + status = gnss_max_m10s_get_nav_dop(gnss_cfg_data, max_wait); + + return status; +} + +sl_status_t gnss_max_m10s_get_navclock_ubx( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait) +{ + sl_status_t status = SL_STATUS_OK; + + if (gnss_cfg_data->packetUBXNAVCLOCK == NULL) { + status = gnss_max_m10s_init_packet_ubxnavclock(gnss_cfg_data); + + if (status != SL_STATUS_OK) { + return status; + } + } + + status = gnss_max_m10s_get_nav_clock(gnss_cfg_data, max_wait); + + return status; +} + +sl_status_t gnss_max_m10s_get_navvelned_ubx( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait) +{ + sl_status_t status = SL_STATUS_OK; + + if (gnss_cfg_data->packetUBXNAVVELNED == NULL) { + status = gnss_max_m10s_init_packet_ubxnavvelned(gnss_cfg_data); + + if (status != SL_STATUS_OK) { + return status; + } + } + + status = gnss_max_m10s_get_nav_velned(gnss_cfg_data, max_wait); + + return status; +} + +static sl_status_t gnss_max_m10s_init_packet_ubxnavpvt( + sl_max_m10s_cfg_data_t *gnss_cfg_data) +{ + gnss_cfg_data->packetUBXNAVPVT = + (sl_max_m10s_ubx_nav_pvt_t *)malloc(sizeof(sl_max_m10s_ubx_nav_pvt_t)); /// Allocate RAM for the main struct + + if (gnss_cfg_data->packetUBXNAVPVT == NULL) { + return SL_STATUS_FAIL; + } + + gnss_cfg_data->packetUBXNAVPVT->automatic_flags.flags.all = 0; + gnss_cfg_data->packetUBXNAVPVT->callback_pointer_ptr = NULL; + gnss_cfg_data->packetUBXNAVPVT->callback_data = NULL; + + return SL_STATUS_OK; +} + +static sl_status_t gnss_max_m10s_get_pvt(sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait) +{ + if (gnss_cfg_data->packetUBXNAVPVT == NULL) { + gnss_max_m10s_init_packet_ubxnavpvt(gnss_cfg_data); + } + + if (gnss_cfg_data->packetUBXNAVPVT == NULL) { + return SL_STATUS_FAIL; + } + + if (gnss_cfg_data->packetUBXNAVPVT->automatic_flags.flags.bits.automatic + && gnss_cfg_data->packetUBXNAVPVT->automatic_flags.flags.bits. + implicitUpdate) { + return gnss_max_m10s_check_ublox_internal(gnss_cfg_data, + &(gnss_cfg_data->packet_cfg), 0, + 0); + } else if (gnss_cfg_data->packetUBXNAVPVT->automatic_flags.flags.bits. + automatic + && !gnss_cfg_data->packetUBXNAVPVT->automatic_flags.flags.bits. + implicitUpdate) { + return SL_STATUS_FAIL; + } else { + gnss_cfg_data->packet_cfg.cls = UBX_CLASS_NAV; + gnss_cfg_data->packet_cfg.id = UBX_NAV_PVT; + gnss_cfg_data->packet_cfg.len = 0; + gnss_cfg_data->packet_cfg.starting_spot = 0; + gnss_cfg_data->active_packet_buffer = SL_MAX_M10S_UBLOX_PACKET_PACKETCFG; + + sl_max_m10s_ublox_status_e ret_val = gnss_max_m10s_send_command( + gnss_cfg_data, + max_wait, + false); + + if (ret_val == SL_MAX_M10S_UBLOX_STATUS_DATA_RECEIVED) { + return SL_STATUS_OK; + } + + if (ret_val == SL_MAX_M10S_UBLOX_STATUS_DATA_OVERWRITTEN) { + return SL_STATUS_OK; + } + + return SL_STATUS_FAIL; + } +} + +static sl_status_t gnss_max_m10s_init_packet_ubxnavtimels( + sl_max_m10s_cfg_data_t *gnss_cfg_data) +{ + gnss_cfg_data->packetUBXNAVTIMELS = (sl_max_m10s_ubx_nav_timels_t *)malloc( + sizeof(sl_max_m10s_ubx_nav_timels_t)); /// Allocate RAM for the main struct + + if (gnss_cfg_data->packetUBXNAVTIMELS == NULL) { + return SL_STATUS_FAIL; + } + + gnss_cfg_data->packetUBXNAVTIMELS->automatic_flags.flags.all = 0; + gnss_cfg_data->packetUBXNAVTIMELS->callback_pointer_ptr = NULL; + gnss_cfg_data->packetUBXNAVTIMELS->callback_data = NULL; + + return SL_STATUS_OK; +} + +static sl_status_t gnss_max_m10s_init_packet_ubxnavposllh( + sl_max_m10s_cfg_data_t *gnss_cfg_data) +{ + gnss_cfg_data->packetUBXNAVPOSLLH = (sl_max_m10s_ubx_nav_posllh_t *)malloc( + sizeof(sl_max_m10s_ubx_nav_posllh_t)); /// Allocate RAM for the main struct + + if (gnss_cfg_data->packetUBXNAVPOSLLH == NULL) { + return SL_STATUS_FAIL; + } + + gnss_cfg_data->packetUBXNAVPOSLLH->automatic_flags.flags.all = 0; + gnss_cfg_data->packetUBXNAVPOSLLH->callback_pointer_ptr = NULL; + gnss_cfg_data->packetUBXNAVPOSLLH->callback_data = NULL; + + return SL_STATUS_OK; +} + +static sl_status_t gnss_max_m10s_get_nav_posllh( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait) +{ + if (gnss_cfg_data->packetUBXNAVPOSLLH == NULL) { + gnss_max_m10s_init_packet_ubxnavposllh(gnss_cfg_data); + } + + if (gnss_cfg_data->packetUBXNAVPOSLLH == NULL) { + return SL_STATUS_FAIL; + } + + if (gnss_cfg_data->packetUBXNAVPOSLLH->automatic_flags.flags.bits.automatic + && gnss_cfg_data->packetUBXNAVPOSLLH->automatic_flags.flags.bits. + implicitUpdate) { + return gnss_max_m10s_check_ublox_internal(gnss_cfg_data, + &(gnss_cfg_data->packet_cfg), 0, + 0); + } else if (gnss_cfg_data->packetUBXNAVPOSLLH->automatic_flags.flags.bits. + automatic + && !gnss_cfg_data->packetUBXNAVPOSLLH->automatic_flags.flags.bits. + implicitUpdate) { + return SL_STATUS_FAIL; + } else { + gnss_cfg_data->packet_cfg.cls = UBX_CLASS_NAV; + gnss_cfg_data->packet_cfg.id = UBX_NAV_POSLLH; + gnss_cfg_data->packet_cfg.len = 0; + gnss_cfg_data->packet_cfg.starting_spot = 0; + gnss_cfg_data->active_packet_buffer = SL_MAX_M10S_UBLOX_PACKET_PACKETCFG; + + sl_max_m10s_ublox_status_e ret_val = gnss_max_m10s_send_command( + gnss_cfg_data, + max_wait, + false); + + if (ret_val == SL_MAX_M10S_UBLOX_STATUS_DATA_RECEIVED) { + return SL_STATUS_OK; + } + + if (ret_val == SL_MAX_M10S_UBLOX_STATUS_DATA_OVERWRITTEN) { + return SL_STATUS_OK; + } + + return SL_STATUS_FAIL; + } +} + +static sl_status_t gnss_max_m10s_get_nav_timels( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait) +{ + if (gnss_cfg_data->packetUBXNAVTIMELS == NULL) { + gnss_max_m10s_init_packet_ubxnavtimels(gnss_cfg_data); + } + + if (gnss_cfg_data->packetUBXNAVTIMELS == NULL) { + return SL_STATUS_FAIL; + } + + if (gnss_cfg_data->packetUBXNAVTIMELS->automatic_flags.flags.bits.automatic + && gnss_cfg_data->packetUBXNAVTIMELS->automatic_flags.flags.bits. + implicitUpdate) { + return gnss_max_m10s_check_ublox_internal(gnss_cfg_data, + &(gnss_cfg_data->packet_cfg), 0, + 0); + } else if (gnss_cfg_data->packetUBXNAVTIMELS->automatic_flags.flags.bits. + automatic + && !gnss_cfg_data->packetUBXNAVTIMELS->automatic_flags.flags.bits. + implicitUpdate) { + return SL_STATUS_FAIL; + } else { + gnss_cfg_data->packet_cfg.cls = UBX_CLASS_NAV; + gnss_cfg_data->packet_cfg.id = UBX_NAV_TIMELS; + gnss_cfg_data->packet_cfg.len = 0; + gnss_cfg_data->packet_cfg.starting_spot = 0; + gnss_cfg_data->active_packet_buffer = SL_MAX_M10S_UBLOX_PACKET_PACKETCFG; + + sl_max_m10s_ublox_status_e ret_val = gnss_max_m10s_send_command( + gnss_cfg_data, + max_wait, + false); + + if (ret_val == SL_MAX_M10S_UBLOX_STATUS_DATA_RECEIVED) { + return SL_STATUS_OK; + } + + if (ret_val == SL_MAX_M10S_UBLOX_STATUS_DATA_OVERWRITTEN) { + return SL_STATUS_OK; + } + + return SL_STATUS_FAIL; + } +} + +static sl_status_t gnss_max_m10s_init_packet_ubxnavtimeutc( + sl_max_m10s_cfg_data_t *gnss_cfg_data) +{ + gnss_cfg_data->packetUBXNAVTIMEUTC = (sl_max_m10s_ubx_nav_timeutc_t *)malloc( + sizeof(sl_max_m10s_ubx_nav_timeutc_t)); /// Allocate RAM for the main struct + + if (gnss_cfg_data->packetUBXNAVTIMEUTC == NULL) { + return SL_STATUS_FAIL; + } + + gnss_cfg_data->packetUBXNAVTIMEUTC->automatic_flags.flags.all = 0; + gnss_cfg_data->packetUBXNAVTIMEUTC->callback_pointer_ptr = NULL; + gnss_cfg_data->packetUBXNAVTIMEUTC->callback_data = NULL; + + return SL_STATUS_OK; +} + +static sl_status_t gnss_max_m10s_get_nav_timeutc( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait) +{ + if (gnss_cfg_data->packetUBXNAVTIMEUTC == NULL) { + gnss_max_m10s_init_packet_ubxnavtimels(gnss_cfg_data); + } + + if (gnss_cfg_data->packetUBXNAVTIMEUTC == NULL) { + return SL_STATUS_FAIL; + } + + if (gnss_cfg_data->packetUBXNAVTIMEUTC->automatic_flags.flags.bits.automatic + && gnss_cfg_data->packetUBXNAVTIMEUTC->automatic_flags.flags.bits. + implicitUpdate) { + return gnss_max_m10s_check_ublox_internal(gnss_cfg_data, + &(gnss_cfg_data->packet_cfg), 0, + 0); + } else if (gnss_cfg_data->packetUBXNAVTIMEUTC->automatic_flags.flags.bits. + automatic + && !gnss_cfg_data->packetUBXNAVTIMEUTC->automatic_flags.flags.bits. + implicitUpdate) { + return SL_STATUS_FAIL; + } else { + gnss_cfg_data->packet_cfg.cls = UBX_CLASS_NAV; + gnss_cfg_data->packet_cfg.id = UBX_NAV_TIMEUTC; + gnss_cfg_data->packet_cfg.len = 0; + gnss_cfg_data->packet_cfg.starting_spot = 0; + gnss_cfg_data->active_packet_buffer = SL_MAX_M10S_UBLOX_PACKET_PACKETCFG; + + sl_max_m10s_ublox_status_e ret_val = gnss_max_m10s_send_command( + gnss_cfg_data, + max_wait, + false); + + if (ret_val == SL_MAX_M10S_UBLOX_STATUS_DATA_RECEIVED) { + return SL_STATUS_OK; + } + + if (ret_val == SL_MAX_M10S_UBLOX_STATUS_DATA_OVERWRITTEN) { + return SL_STATUS_OK; + } + + return SL_STATUS_FAIL; + } +} + +static sl_status_t gnss_max_m10s_init_packet_ubxnavstatus( + sl_max_m10s_cfg_data_t *gnss_cfg_data) +{ + gnss_cfg_data->packetUBXNAVSTATUS = (sl_max_m10s_ubx_nav_status_t *)malloc( + sizeof(sl_max_m10s_ubx_nav_status_t)); /// Allocate RAM for the main struct + + if (gnss_cfg_data->packetUBXNAVSTATUS == NULL) { + return SL_STATUS_FAIL; + } + + gnss_cfg_data->packetUBXNAVSTATUS->automatic_flags.flags.all = 0; + gnss_cfg_data->packetUBXNAVSTATUS->callback_pointer_ptr = NULL; + gnss_cfg_data->packetUBXNAVSTATUS->callback_data = NULL; + + return SL_STATUS_OK; +} + +static sl_status_t gnss_max_m10s_init_packet_ubxnavsat( + sl_max_m10s_cfg_data_t *gnss_cfg_data) +{ + gnss_cfg_data->packetUBXNAVSAT = + (sl_max_m10s_ubx_nav_sat_t *)malloc(sizeof(sl_max_m10s_ubx_nav_sat_t)); /// Allocate RAM for the main struct + + if (gnss_cfg_data->packetUBXNAVSAT == NULL) { + return SL_STATUS_FAIL; + } + + gnss_cfg_data->packetUBXNAVSAT->automatic_flags.flags.all = 0; + gnss_cfg_data->packetUBXNAVSAT->callback_pointer_ptr = NULL; + gnss_cfg_data->packetUBXNAVSAT->callback_data = NULL; + + return SL_STATUS_OK; +} + +static sl_status_t gnss_max_m10s_init_packet_ubxnavsig( + sl_max_m10s_cfg_data_t *gnss_cfg_data) +{ + gnss_cfg_data->packetUBXNAVSIG = + (sl_max_m10s_ubx_navsig_t *)malloc(sizeof(sl_max_m10s_ubx_navsig_t)); /// Allocate RAM for the main struct + + if (gnss_cfg_data->packetUBXNAVSIG == NULL) { + return SL_STATUS_FAIL; + } + + gnss_cfg_data->packetUBXNAVSIG->automatic_flags.flags.all = 0; + gnss_cfg_data->packetUBXNAVSIG->callback_pointer_ptr = NULL; + gnss_cfg_data->packetUBXNAVSIG->callback_data = NULL; + + return SL_STATUS_OK; +} + +static sl_status_t gnss_max_m10s_init_packet_ubxnavdop( + sl_max_m10s_cfg_data_t *gnss_cfg_data) +{ + gnss_cfg_data->packetUBXNAVDOP = + (sl_max_m10s_ubx_nav_dop_t *)malloc(sizeof(sl_max_m10s_ubx_nav_dop_t)); /// Allocate RAM for the main struct + + if (gnss_cfg_data->packetUBXNAVDOP == NULL) { + return SL_STATUS_FAIL; + } + + gnss_cfg_data->packetUBXNAVDOP->automatic_flags.flags.all = 0; + gnss_cfg_data->packetUBXNAVDOP->callback_pointer_ptr = NULL; + gnss_cfg_data->packetUBXNAVDOP->callback_data = NULL; + + return SL_STATUS_OK; +} + +static sl_status_t gnss_max_m10s_get_nav_dop( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait) +{ + if (gnss_cfg_data->packetUBXNAVDOP == NULL) { + gnss_max_m10s_init_packet_ubxnavdop(gnss_cfg_data); + } + + if (gnss_cfg_data->packetUBXNAVDOP == NULL) { + return SL_STATUS_FAIL; + } + + if (gnss_cfg_data->packetUBXNAVDOP->automatic_flags.flags.bits.automatic + && gnss_cfg_data->packetUBXNAVDOP->automatic_flags.flags.bits. + implicitUpdate) { + return gnss_max_m10s_check_ublox_internal(gnss_cfg_data, + &(gnss_cfg_data->packet_cfg), 0, + 0); + } else if (gnss_cfg_data->packetUBXNAVDOP->automatic_flags.flags.bits. + automatic + && !gnss_cfg_data->packetUBXNAVDOP->automatic_flags.flags.bits. + implicitUpdate) { + return SL_STATUS_FAIL; + } else { + gnss_cfg_data->packet_cfg.cls = UBX_CLASS_NAV; + gnss_cfg_data->packet_cfg.id = UBX_NAV_DOP; + gnss_cfg_data->packet_cfg.len = 0; + gnss_cfg_data->packet_cfg.starting_spot = 0; + gnss_cfg_data->active_packet_buffer = SL_MAX_M10S_UBLOX_PACKET_PACKETCFG; + + sl_max_m10s_ublox_status_e ret_val = gnss_max_m10s_send_command( + gnss_cfg_data, + max_wait, + false); + + if (ret_val == SL_MAX_M10S_UBLOX_STATUS_DATA_RECEIVED) { + return SL_STATUS_OK; + } + + if (ret_val == SL_MAX_M10S_UBLOX_STATUS_DATA_OVERWRITTEN) { + return SL_STATUS_OK; + } + + return SL_STATUS_FAIL; + } +} + +static sl_status_t gnss_max_m10s_init_packet_ubxnavclock( + sl_max_m10s_cfg_data_t *gnss_cfg_data) +{ + gnss_cfg_data->packetUBXNAVCLOCK = (sl_max_m10s_ubx_nav_clock_t *)malloc( + sizeof(sl_max_m10s_ubx_nav_clock_t)); /// Allocate RAM for the main struct + + if (gnss_cfg_data->packetUBXNAVCLOCK == NULL) { + return SL_STATUS_FAIL; + } + + gnss_cfg_data->packetUBXNAVCLOCK->automatic_flags.flags.all = 0; + gnss_cfg_data->packetUBXNAVCLOCK->callback_pointer_ptr = NULL; + gnss_cfg_data->packetUBXNAVCLOCK->callback_data = NULL; + + return SL_STATUS_OK; +} + +static sl_status_t gnss_max_m10s_get_nav_clock( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait) +{ + if (gnss_cfg_data->packetUBXNAVCLOCK == NULL) { + gnss_max_m10s_init_packet_ubxnavclock(gnss_cfg_data); + } + + if (gnss_cfg_data->packetUBXNAVCLOCK == NULL) { + return SL_STATUS_FAIL; + } + + if (gnss_cfg_data->packetUBXNAVCLOCK->automatic_flags.flags.bits.automatic + && gnss_cfg_data->packetUBXNAVCLOCK->automatic_flags.flags.bits. + implicitUpdate) { + return gnss_max_m10s_check_ublox_internal(gnss_cfg_data, + &(gnss_cfg_data->packet_cfg), 0, + 0); + } else if (gnss_cfg_data->packetUBXNAVCLOCK->automatic_flags.flags.bits. + automatic + && !gnss_cfg_data->packetUBXNAVCLOCK->automatic_flags.flags.bits. + implicitUpdate) { + return SL_STATUS_FAIL; + } else { + gnss_cfg_data->packet_cfg.cls = UBX_CLASS_NAV; + gnss_cfg_data->packet_cfg.id = UBX_NAV_CLOCK; + gnss_cfg_data->packet_cfg.len = 0; + gnss_cfg_data->packet_cfg.starting_spot = 0; + gnss_cfg_data->active_packet_buffer = SL_MAX_M10S_UBLOX_PACKET_PACKETCFG; + + sl_max_m10s_ublox_status_e ret_val = gnss_max_m10s_send_command( + gnss_cfg_data, + max_wait, + false); + + if (ret_val == SL_MAX_M10S_UBLOX_STATUS_DATA_RECEIVED) { + return SL_STATUS_OK; + } + + if (ret_val == SL_MAX_M10S_UBLOX_STATUS_DATA_OVERWRITTEN) { + return SL_STATUS_OK; + } + + return SL_STATUS_FAIL; + } +} + +static sl_status_t gnss_max_m10s_init_packet_ubxnavvelned( + sl_max_m10s_cfg_data_t *gnss_cfg_data) +{ + gnss_cfg_data->packetUBXNAVVELNED = (sl_max_m10s_ubx_nav_velned_t *)malloc( + sizeof(sl_max_m10s_ubx_nav_velned_t)); /// Allocate RAM for the main struct + + if (gnss_cfg_data->packetUBXNAVVELNED == NULL) { + return SL_STATUS_FAIL; + } + + gnss_cfg_data->packetUBXNAVVELNED->automatic_flags.flags.all = 0; + gnss_cfg_data->packetUBXNAVVELNED->callback_pointer_ptr = NULL; + gnss_cfg_data->packetUBXNAVVELNED->callback_data = NULL; + + return SL_STATUS_OK; +} + +static sl_status_t gnss_max_m10s_get_nav_velned( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait) +{ + if (gnss_cfg_data->packetUBXNAVVELNED == NULL) { + gnss_max_m10s_init_packet_ubxnavclock(gnss_cfg_data); + } + + if (gnss_cfg_data->packetUBXNAVVELNED == NULL) { + return SL_STATUS_FAIL; + } + + if (gnss_cfg_data->packetUBXNAVVELNED->automatic_flags.flags.bits.automatic + && gnss_cfg_data->packetUBXNAVVELNED->automatic_flags.flags.bits. + implicitUpdate) { + return gnss_max_m10s_check_ublox_internal(gnss_cfg_data, + &(gnss_cfg_data->packet_cfg), 0, + 0); + } else if (gnss_cfg_data->packetUBXNAVVELNED->automatic_flags.flags.bits. + automatic + && !gnss_cfg_data->packetUBXNAVVELNED->automatic_flags.flags.bits. + implicitUpdate) { + return SL_STATUS_FAIL; + } else { + gnss_cfg_data->packet_cfg.cls = UBX_CLASS_NAV; + gnss_cfg_data->packet_cfg.id = UBX_NAV_VELNED; + gnss_cfg_data->packet_cfg.len = 0; + gnss_cfg_data->packet_cfg.starting_spot = 0; + gnss_cfg_data->active_packet_buffer = SL_MAX_M10S_UBLOX_PACKET_PACKETCFG; + + sl_max_m10s_ublox_status_e ret_val = gnss_max_m10s_send_command( + gnss_cfg_data, + max_wait, + false); + + if (ret_val == SL_MAX_M10S_UBLOX_STATUS_DATA_RECEIVED) { + return SL_STATUS_OK; + } + + if (ret_val == SL_MAX_M10S_UBLOX_STATUS_DATA_OVERWRITTEN) { + return SL_STATUS_OK; + } + + return SL_STATUS_FAIL; + } +} + +static sl_status_t gnss_max_m10s_init_packet_ubxnavepoch( + sl_max_m10s_cfg_data_t *gnss_cfg_data) +{ + gnss_cfg_data->packetUBXNAVEOE = + (sl_max_m10s_ubx_nav_epoch_t *)malloc(sizeof(sl_max_m10s_ubx_nav_epoch_t)); /// Allocate RAM for the main struct + + if (gnss_cfg_data->packetUBXNAVEOE == NULL) { + return SL_STATUS_FAIL; + } + + gnss_cfg_data->packetUBXNAVEOE->automatic_flags.flags.all = 0; + gnss_cfg_data->packetUBXNAVEOE->callback_pointer_ptr = NULL; + gnss_cfg_data->packetUBXNAVEOE->callback_data = NULL; + + return SL_STATUS_OK; +} + +static sl_status_t gnss_max_m10s_get_nav_epoch( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait) +{ + if (gnss_cfg_data->packetUBXNAVEOE == NULL) { + gnss_max_m10s_init_packet_ubxnavepoch(gnss_cfg_data); + } + + if (gnss_cfg_data->packetUBXNAVEOE == NULL) { + return SL_STATUS_FAIL; + } + + if (gnss_cfg_data->packetUBXNAVEOE->automatic_flags.flags.bits.automatic + && gnss_cfg_data->packetUBXNAVEOE->automatic_flags.flags.bits. + implicitUpdate) { + return gnss_max_m10s_check_ublox_internal(gnss_cfg_data, + &(gnss_cfg_data->packet_cfg), 0, + 0); + } else if (gnss_cfg_data->packetUBXNAVEOE->automatic_flags.flags.bits. + automatic + && !gnss_cfg_data->packetUBXNAVEOE->automatic_flags.flags.bits. + implicitUpdate) { + return SL_STATUS_FAIL; + } else { + gnss_cfg_data->packet_cfg.cls = UBX_CLASS_NAV; + gnss_cfg_data->packet_cfg.id = UBX_NAV_EOE; + gnss_cfg_data->packet_cfg.len = 0; + gnss_cfg_data->packet_cfg.starting_spot = 0; + gnss_cfg_data->active_packet_buffer = SL_MAX_M10S_UBLOX_PACKET_PACKETCFG; + + sl_max_m10s_ublox_status_e ret_val = gnss_max_m10s_send_command( + gnss_cfg_data, + max_wait, + false); + + if (ret_val == SL_MAX_M10S_UBLOX_STATUS_DATA_RECEIVED) { + return SL_STATUS_OK; + } + + if (ret_val == SL_MAX_M10S_UBLOX_STATUS_DATA_OVERWRITTEN) { + return SL_STATUS_OK; + } + + return SL_STATUS_FAIL; + } +} + +static sl_status_t gnss_max_m10s_get_nav_status( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait) +{ + if (gnss_cfg_data->packetUBXNAVSTATUS == NULL) { + gnss_max_m10s_init_packet_ubxnavstatus(gnss_cfg_data); + } + + if (gnss_cfg_data->packetUBXNAVSTATUS == NULL) { + return SL_STATUS_FAIL; + } + + if (gnss_cfg_data->packetUBXNAVSTATUS->automatic_flags.flags.bits.automatic + && gnss_cfg_data->packetUBXNAVSTATUS->automatic_flags.flags.bits. + implicitUpdate) { + return gnss_max_m10s_check_ublox_internal(gnss_cfg_data, + &(gnss_cfg_data->packet_cfg), 0, + 0); + } else if (gnss_cfg_data->packetUBXNAVSTATUS->automatic_flags.flags.bits. + automatic + && !gnss_cfg_data->packetUBXNAVSTATUS->automatic_flags.flags.bits. + implicitUpdate) { + return SL_STATUS_FAIL; + } else { + gnss_cfg_data->packet_cfg.cls = UBX_CLASS_NAV; + gnss_cfg_data->packet_cfg.id = UBX_NAV_STATUS; + gnss_cfg_data->packet_cfg.len = 0; + gnss_cfg_data->packet_cfg.starting_spot = 0; + gnss_cfg_data->active_packet_buffer = SL_MAX_M10S_UBLOX_PACKET_PACKETCFG; + + sl_max_m10s_ublox_status_e ret_val = gnss_max_m10s_send_command( + gnss_cfg_data, + max_wait, + false); + + if (ret_val == SL_MAX_M10S_UBLOX_STATUS_DATA_RECEIVED) { + return SL_STATUS_OK; + } + + if (ret_val == SL_MAX_M10S_UBLOX_STATUS_DATA_OVERWRITTEN) { + return SL_STATUS_OK; + } + + return SL_STATUS_FAIL; + } +} + +static sl_status_t gnss_max_m10s_get_nav_sat( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait) +{ + if (gnss_cfg_data->packetUBXNAVSAT == NULL) { + gnss_max_m10s_init_packet_ubxnavsat(gnss_cfg_data); + } + + if (gnss_cfg_data->packetUBXNAVSAT == NULL) { + return SL_STATUS_FAIL; + } + + if (gnss_cfg_data->packetUBXNAVSAT->automatic_flags.flags.bits.automatic + && gnss_cfg_data->packetUBXNAVSAT->automatic_flags.flags.bits. + implicitUpdate) { + return gnss_max_m10s_check_ublox_internal(gnss_cfg_data, + &(gnss_cfg_data->packet_cfg), 0, + 0); + } else if (gnss_cfg_data->packetUBXNAVSAT->automatic_flags.flags.bits. + automatic + && !gnss_cfg_data->packetUBXNAVSAT->automatic_flags.flags.bits. + implicitUpdate) { + return SL_STATUS_FAIL; + } else { + gnss_cfg_data->packet_cfg.cls = UBX_CLASS_NAV; + gnss_cfg_data->packet_cfg.id = UBX_NAV_SAT; + gnss_cfg_data->packet_cfg.len = 0; + gnss_cfg_data->packet_cfg.starting_spot = 0; + gnss_cfg_data->active_packet_buffer = SL_MAX_M10S_UBLOX_PACKET_PACKETCFG; + + sl_max_m10s_ublox_status_e ret_val = gnss_max_m10s_send_command( + gnss_cfg_data, + max_wait, + false); + + if (ret_val == SL_MAX_M10S_UBLOX_STATUS_DATA_RECEIVED) { + return SL_STATUS_OK; + } + + if (ret_val == SL_MAX_M10S_UBLOX_STATUS_DATA_OVERWRITTEN) { + return SL_STATUS_OK; + } + + return SL_STATUS_FAIL; + } +} + +static sl_status_t gnss_max_m10s_get_nav_sig( + sl_max_m10s_cfg_data_t *gnss_cfg_data, + uint16_t max_wait) +{ + if (gnss_cfg_data->packetUBXNAVSIG == NULL) { + gnss_max_m10s_init_packet_ubxnavsig(gnss_cfg_data); + } + + if (gnss_cfg_data->packetUBXNAVSIG == NULL) { + return SL_STATUS_FAIL; + } + + if (gnss_cfg_data->packetUBXNAVSIG->automatic_flags.flags.bits.automatic + && gnss_cfg_data->packetUBXNAVSIG->automatic_flags.flags.bits. + implicitUpdate) { + return gnss_max_m10s_check_ublox_internal(gnss_cfg_data, + &(gnss_cfg_data->packet_cfg), 0, + 0); + } else if (gnss_cfg_data->packetUBXNAVSIG->automatic_flags.flags.bits. + automatic + && !gnss_cfg_data->packetUBXNAVSIG->automatic_flags.flags.bits. + implicitUpdate) { + return SL_STATUS_FAIL; + } else { + gnss_cfg_data->packet_cfg.cls = UBX_CLASS_NAV; + gnss_cfg_data->packet_cfg.id = UBX_NAV_SIG; + gnss_cfg_data->packet_cfg.len = 0; + gnss_cfg_data->packet_cfg.starting_spot = 0; + gnss_cfg_data->active_packet_buffer = SL_MAX_M10S_UBLOX_PACKET_PACKETCFG; + + sl_max_m10s_ublox_status_e ret_val = gnss_max_m10s_send_command( + gnss_cfg_data, + max_wait, + false); + + if (ret_val == SL_MAX_M10S_UBLOX_STATUS_DATA_RECEIVED) { + return SL_STATUS_OK; + } + + if (ret_val == SL_MAX_M10S_UBLOX_STATUS_DATA_OVERWRITTEN) { + return SL_STATUS_OK; + } + + return SL_STATUS_FAIL; + } +} + +static uint32_t gnss_max_m10s_extract_long(sl_max_m10s_ubx_packet_t *msg, + uint16_t spot_to_start) +{ + uint32_t val = 0; + + for (uint8_t i = 0; i < 4; i++) { + val |= (uint32_t)msg->payload[spot_to_start + i] << (8 * i); + } + + return val; +} + +int8_t gnss_max_m10s_extract_signed_char(sl_max_m10s_ubx_packet_t *msg, + uint16_t spot_to_start) +{ + sl_max_m10s_unsigned_signed_8_t converter; + converter.unsigned8 = gnss_max_m10s_extract_byte(msg, spot_to_start); + return (converter.signed8); +} + +static int32_t gnss_max_m10s_extract_signed_long(sl_max_m10s_ubx_packet_t *msg, + uint16_t spot_to_start) +{ + sl_max_m10s_unsigned_signed_32_t converter; + + converter.unsigned32 = gnss_max_m10s_extract_long(msg, spot_to_start); + + return converter.signed32; +} + +static uint16_t gnss_max_m10s_extract_int(sl_max_m10s_ubx_packet_t *msg, + uint16_t spot_to_start) +{ + uint16_t val = (uint16_t)msg->payload[spot_to_start + 0] << 8 * 0; + + val |= (uint16_t)msg->payload[spot_to_start + 1] << 8 * 1; + + return val; +} + +static int16_t gnss_max_m10s_extract_signed_int(sl_max_m10s_ubx_packet_t *msg, + uint16_t spot_to_start) +{ + sl_max_m10s_unsigned_signed_16_t converter; + + converter.unsigned16 = gnss_max_m10s_extract_int(msg, spot_to_start); + + return converter.signed16; +} + +uint8_t gnss_max_m10s_extract_byte(sl_max_m10s_ubx_packet_t *msg, + uint16_t spot_to_start) +{ + return (msg->payload[spot_to_start]); +} diff --git a/driver/public/silabs/micro_oled_ssd1306/config/micro_oled_ssd1306_config.h b/driver/public/silabs/micro_oled_ssd1306/config/micro_oled_ssd1306_config.h index 850539f6..e43a1149 100644 --- a/driver/public/silabs/micro_oled_ssd1306/config/micro_oled_ssd1306_config.h +++ b/driver/public/silabs/micro_oled_ssd1306/config/micro_oled_ssd1306_config.h @@ -50,6 +50,26 @@ extern "C" { #define OLED_DISPLAY_128_64 3 // <<< Use Configuration Wizard in Context Menu >>> + +//MICRO OLED I2C Configuration + +// MICRO OLED I2C UC Configuration +// Enable: Peripheral configuration is taken straight from the configuration set in the universal configuration (UC). +// Disable: If the application demands it to be modified during runtime, use the default API to modify the peripheral configuration. +// Default: 0 +#define MICRO_OLED_I2C__UC 0 + +// Speed mode +// <0=> Standard mode (100kbit/s) +// <1=> Fast mode (400kbit/s) +// <2=> Fast mode plus (1Mbit/s) +// Default: 0 +#define MICRO_OLED_I2C_SPEED_MODE 0 + +// +// +// <<< end of configuration section >>> + // Connection // I2C Address <0x1..0x7E:0x1> // Default: 0x3D @@ -94,4 +114,4 @@ extern "C" { } #endif -#endif /* SSD1306_I2C_CONFIG_H_ */ +#endif // SSD1306_I2C_CONFIG_H_ diff --git a/driver/public/silabs/micro_oled_ssd1306/inc/micro_oled_ssd1306.h b/driver/public/silabs/micro_oled_ssd1306/inc/micro_oled_ssd1306.h index 4b844bc6..db733479 100644 --- a/driver/public/silabs/micro_oled_ssd1306/inc/micro_oled_ssd1306.h +++ b/driver/public/silabs/micro_oled_ssd1306/inc/micro_oled_ssd1306.h @@ -1,5 +1,5 @@ /***************************************************************************//** - * @file ssd1306.h + * @file micro_oled_ssd1306.h * @brief SSD1306 interface ******************************************************************************* * # License @@ -33,19 +33,19 @@ * at the sole discretion of Silicon Labs. ******************************************************************************/ -#ifndef SSD1306_H -#define SSD1306_H +#ifndef MICRO_OLED_SSD1306_H +#define MICRO_OLED_SSD1306_H #include #include #include "sl_status.h" -#include "sl_i2cspm.h" +#include "drv_i2c_master.h" #ifdef __cplusplus extern "C" { #endif -/* Fundamental Command */ +// Fundamental Command #define SSD1306_SETCONTRAST 0x81 #define SSD1306_DISPLAYALLON_RESUME 0xA4 #define SSD1306_DISPLAYALLON 0xA5 @@ -54,7 +54,7 @@ extern "C" { #define SSD1306_DISPLAYOFF 0xAE #define SSD1306_DISPLAYON 0xAF -/* Scrolling Command */ +// Scrolling Command #define SSD1306_RIGHT_HORIZONTAL_SCROLL 0x26 #define SSD1306_LEFT_HORIZONTAL_SCROLL 0x27 #define SSD1306_VERTICAL_AND_RIGHT_HORIZONTAL_SCROLL 0x29 @@ -63,7 +63,7 @@ extern "C" { #define SSD1306_ACTIVATE_SCROLL 0x2F #define SSD1306_SET_VERTICAL_SCROLL_AREA 0xA3 -/* Addressing Setting Command */ +// Addressing Setting Command #define SSD1306_SETLOWCOLUMN 0x00 #define SSD1306_SETHIGHCOLUMN 0x10 #define SSD1306_MEMORYMODE 0x20 @@ -75,7 +75,7 @@ extern "C" { #define SSD1306_VERTICAL_ADDRESSING_MODE 0x01 #define SSD1306_PAGE_ADDRESSING_MODE 0x02 -/* Hardware Configuration Command */ +// Hardware Configuration Command #define SSD1306_SETSTARTLINE 0x40 #define SSD1306_SEGREMAP 0xA0 #define SSD1306_SETSEGMENTREMAP 0xA1 @@ -109,11 +109,26 @@ typedef struct ssd1306_t { * @brief * Initialization function for the ssd1306 device driver. * + * @param[in] i2cspm_instance + * I2C instance + * * @return * If all operations completed sucessfully SL_STATUS_OK is returned. On * failure a different status code is returned specifying the error. *****************************************************************************/ -sl_status_t ssd1306_init(sl_i2cspm_t *i2c_handle); +sl_status_t ssd1306_init(mikroe_i2c_handle_t i2cspm_instance); + +/***************************************************************************//** + * @brief + * This function sets the SPI instance used by platform functions + * + * @param[in] i2cspm_instance + * I2C instance + * + * @return + * SL_STATUS_OK if there are no errors. + ******************************************************************************/ +sl_status_t ssd1306_set_i2csmp_instance(mikroe_i2c_handle_t i2cspm_instance); /**************************************************************************//** * @brief @@ -259,4 +274,4 @@ sl_status_t ssd1306_enable_display(bool on); /** @} */ -#endif +#endif // MICRO_OLED_SSD1306_H diff --git a/driver/public/silabs/micro_oled_ssd1306/inc/micro_oled_ssd1306_i2c.h b/driver/public/silabs/micro_oled_ssd1306/inc/micro_oled_ssd1306_i2c.h deleted file mode 100644 index 9df60361..00000000 --- a/driver/public/silabs/micro_oled_ssd1306/inc/micro_oled_ssd1306_i2c.h +++ /dev/null @@ -1,95 +0,0 @@ -/***************************************************************************//** - * @file ssd1306_i2c.h - * @brief I2C abstraction used by SSD1306 - ******************************************************************************* - * # License - * Copyright 2020 Silicon Laboratories Inc. www.silabs.com - ******************************************************************************* - * - * SPDX-License-Identifier: Zlib - * - * The licensor of this software is Silicon Laboratories Inc. - * - * This software is provided \'as-is\', without any express or implied - * warranty. In no event will the authors be held liable for any damages - * arising from the use of this software. - * - * Permission is granted to anyone to use this software for any purpose, - * including commercial applications, and to alter it and redistribute it - * freely, subject to the following restrictions: - * - * 1. The origin of this software must not be misrepresented; you must not - * claim that you wrote the original software. If you use this software - * in a product, an acknowledgment in the product documentation would be - * appreciated but is not required. - * 2. Altered source versions must be plainly marked as such, and must not be - * misrepresented as being the original software. - * 3. This notice may not be removed or altered from any source distribution. - * - ******************************************************************************* - * # Evaluation Quality - * This code has been minimally tested to ensure that it builds and is suitable - * as a demonstration for evaluation purposes only. This code will be maintained - * at the sole discretion of Silicon Labs. - ******************************************************************************/ -#ifndef SSD1306_I2C_H -#define SSD1306_I2C_H - -#include "sl_status.h" -#include "sl_i2cspm.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/***************************************************************************//** - * @brief - * Initialize the i2c interface. - * - * @detail - * The driver instances will be initialized automatically, - * during the sl_system_init() call in main.c. - *****************************************************************************/ -void ssd1306_i2c_init(sl_i2cspm_t *i2c_handle); - -/***************************************************************************//** - * @brief - * Start an blocking command transmit transfer. - * - * @note - * @n This function is blocking and returns when the transfer is complete. - * - * @param[in] command - * Transmit command buffer. - * - * @param[in] len - * Number of bytes in transfer. - * - * @return - * @ref SL_STATUS_OK on success or @ref SL_STATUS_FAIL on failure - ******************************************************************************/ -sl_status_t ssd1306_send_command(const void *cmd, uint32_t len); - -/***************************************************************************//** - * @brief - * Start an blocking data transmit transfer. - * - * @note - * @n This function is blocking and returns when the transfer is complete. - * - * @param[in] data - * Transmit data buffer. - * - * @param[in] count - * Number of bytes in transfer. - * - * @return - * @ref SL_STATUS_OK on success or @ref SL_STATUS_FAIL on failure - ******************************************************************************/ -sl_status_t ssd1306_send_data(const void *data, uint32_t len); - -#ifdef __cplusplus -} -#endif - -#endif diff --git a/driver/public/silabs/micro_oled_ssd1306/inc/oled_display.h b/driver/public/silabs/micro_oled_ssd1306/inc/oled_display.h index 1301b6ab..b274c0b7 100644 --- a/driver/public/silabs/micro_oled_ssd1306/inc/oled_display.h +++ b/driver/public/silabs/micro_oled_ssd1306/inc/oled_display.h @@ -37,7 +37,6 @@ #include #include "sl_status.h" - #include "micro_oled_ssd1306.h" #ifdef __cplusplus @@ -86,4 +85,4 @@ const oled_display_t *oled_display_get(void); } #endif -#endif +#endif // OLED_DISPLAY_H diff --git a/driver/public/silabs/micro_oled_ssd1306/src/micro_oled_ssd1306.c b/driver/public/silabs/micro_oled_ssd1306/src/micro_oled_ssd1306.c index a1a81da3..0b87a180 100644 --- a/driver/public/silabs/micro_oled_ssd1306/src/micro_oled_ssd1306.c +++ b/driver/public/silabs/micro_oled_ssd1306/src/micro_oled_ssd1306.c @@ -1,5 +1,5 @@ /***************************************************************************//** - * @file ssd1306.c + * @file micro_oled_ssd1306.c * @brief SSD1306 interface ******************************************************************************* * # License @@ -33,19 +33,22 @@ * at the sole discretion of Silicon Labs. ******************************************************************************/ #include -#include "micro_oled_ssd1306_i2c.h" #include "micro_oled_ssd1306.h" #include "micro_oled_ssd1306_config.h" #define SSD1306_NUM_PAGES ((SSD1306_DISPLAY_HEIGHT + 7) / 8) -/** ssd1306 instance. */ -static ssd1306_t ssd1306_instance = { +typedef i2c_master_t micro_oled_i2c_t; + +static micro_oled_i2c_t micro_oled_i2c; + +// ssd1306 instance. +static ssd1306_t ssd1306_instance = { .width = SSD1306_DISPLAY_WIDTH, .height = SSD1306_DISPLAY_HEIGHT, }; -/** buffer used to initialize ssd1306. */ +// buffer used to initialize ssd1306. const uint8_t cmd_buff[] = { SSD1306_DISPLAYOFF, SSD1306_SETDISPLAYCLOCKDIV, 0x80, @@ -93,10 +96,18 @@ const uint8_t cmd_buff[] = { SSD1306_DISPLAYON, }; -/** Flag to monitor is this driver has been initialized. The ssd1306_instance - * is only valid after initialized=true. */ +/** + * Flag to monitor is this driver has been initialized. The ssd1306_instance + * is only valid after initialized=true. + */ static bool initialized = false; +static sl_status_t ssd1306_send_command(const void *cmd, uint32_t len); +static sl_status_t ssd1306_send_data(const void *data, uint32_t len); +static sl_status_t ssd1306_send(const void *data, + uint32_t len, + uint8_t command_type); + /**************************************************************************//** * @brief * Initialization function for the ssd1306 device driver. @@ -105,16 +116,51 @@ static bool initialized = false; * If all operations completed sucessfully SL_STATUS_OK is returned. On * failure a different status code is returned specifying the error. *****************************************************************************/ -sl_status_t ssd1306_init(sl_i2cspm_t *i2c_handle) +sl_status_t ssd1306_init(mikroe_i2c_handle_t i2cspm_instance) { - sl_status_t sc; + i2c_master_config_t micro_oled_cfg; const uint8_t *ptr = cmd_buff; + sl_status_t sc; + + if (NULL == i2cspm_instance) { + return SL_STATUS_INVALID_PARAMETER; + } + + // Configure default i2csmp instance + micro_oled_i2c.handle = i2cspm_instance; + + i2c_master_configure_default(µ_oled_cfg); + + micro_oled_cfg.addr = CONFIG_OLED_DISPLAY_ADDRESS; + micro_oled_cfg.timeout_pass_count = 0; + +#if (MICRO_OLED_I2C__UC == 1) + micro_oled_cfg.speed = MICRO_OLED_I2C_SPEED_MODE; +#endif + + if (i2c_master_open(µ_oled_i2c, µ_oled_cfg) == I2C_MASTER_ERROR) { + return SL_STATUS_INITIALIZATION; + } - ssd1306_i2c_init(i2c_handle); initialized = true; + sc = ssd1306_send_command(ptr, sizeof(cmd_buff)); + if (sc != SL_STATUS_OK) { + return SL_STATUS_INITIALIZATION; + } - return sc; + return SL_STATUS_OK; +} + +sl_status_t ssd1306_set_i2csmp_instance(mikroe_i2c_handle_t i2cspm_instance) +{ + if (NULL == i2cspm_instance) { + return SL_STATUS_INVALID_PARAMETER; + } + + micro_oled_i2c.handle = i2cspm_instance; + + return SL_STATUS_OK; } /**************************************************************************//** @@ -134,17 +180,17 @@ sl_status_t ssd1306_draw(const void *data) static const uint8_t command_table[] = { #ifdef SSD1306_USE_PAGE_ADDRESSING_MODE - /* Set Lower Column Start Address for Page Addressing Mode */ + // Set Lower Column Start Address for Page Addressing Mode 0x00, - /* Set Higher Column Start Address for Page Addressing Mode */ + // Set Higher Column Start Address for Page Addressing Mode 0x12 #else - /* Set page start, end address + set page pointer to page start address */ + // Set page start, end address + set page pointer to page start address SSD1306_PAGEADDR, 0, (SSD1306_NUM_PAGES - 1), - /* Set page start, end address + set page pointer to page start address */ + // Set page start, end address + set page pointer to page start address SSD1306_COLUMNADDR, 0, (SSD1306_DISPLAY_WIDTH - 1), #endif }; @@ -152,24 +198,24 @@ sl_status_t ssd1306_draw(const void *data) const uint8_t *ptr = data; uint8_t cmd; - /* Get start address to draw from */ + // Get start address to draw from for (uint8_t i = 0; i < SSD1306_NUM_PAGES; i++) { - /* Send update command and first line address */ - cmd = 0xB0 + i; /* Set the current RAM page address. */ + // Send update command and first line address + cmd = 0xB0 + i; // Set the current RAM page address. sc += ssd1306_send_command(&cmd, 1); sc += ssd1306_send_command(command_table, sizeof(command_table)); - /* Send pixels for this page */ + // Send pixels for this page sc += ssd1306_send_data(ptr, SSD1306_DISPLAY_WIDTH); ptr += SSD1306_DISPLAY_WIDTH; } #else - /* Send commands to prepare data transfer from frame buffer */ + // Send commands to prepare data transfer from frame buffer sc += ssd1306_send_command(command_table, sizeof(command_table)); - /*Send frame buffer data*/ + // Send frame buffer data sc += ssd1306_send_data(data, (SSD1306_DISPLAY_WIDTH * SSD1306_NUM_PAGES)); #endif if (sc != SL_STATUS_OK) { @@ -187,7 +233,7 @@ sl_status_t ssd1306_draw(const void *data) * Pointer to a SSD1306 structure or NULL if no SSD1306 is initialized * yet. *****************************************************************************/ -const ssd1306_t* ssd1306_get(void) +const ssd1306_t *ssd1306_get(void) { if (initialized) { return &ssd1306_instance; @@ -435,3 +481,66 @@ sl_status_t ssd1306_enable_display(bool on) return sc; } + +/***************************************************************************//** + * @brief + * Start an blocking command transmit transfer. + * + * @note + * @n This function is blocking and returns when the transfer is complete. + * + * @param[in] command + * Transmit command buffer. + * + * @param[in] len + * Number of bytes in transfer. + * + * @return + * @ref SL_STATUS_OK on success or @ref SL_STATUS_FAIL on failure + ******************************************************************************/ +static sl_status_t ssd1306_send_command(const void *cmd, uint32_t len) +{ + return ssd1306_send(cmd, len, 0x00); +} + +/***************************************************************************//** + * @brief + * Start an blocking data transmit transfer. + * + * @note + * @n This function is blocking and returns when the transfer is complete. + * + * @param[in] data + * Transmit data buffer. + * + * @param[in] count + * Number of bytes in transfer. + * + * @return + * @ref SL_STATUS_OK on success or @ref SL_STATUS_FAIL on failure + ******************************************************************************/ +static sl_status_t ssd1306_send_data(const void *data, uint32_t len) +{ + return ssd1306_send(data, len, 0x40); +} + +static sl_status_t ssd1306_send(const void *data, + uint32_t len, + uint8_t command_type) +{ + uint8_t i2c_write_data[len + 1]; + const uint8_t *ptr = data; + + i2c_write_data[0] = command_type; + for (uint32_t i = 0; i < len; i++) { + i2c_write_data[i + 1] = ptr[i]; + } + + if (I2C_MASTER_SUCCESS != i2c_master_write(µ_oled_i2c, + i2c_write_data, + len + 1)) { + return SL_STATUS_TRANSMIT; + } + + return SL_STATUS_OK; +} diff --git a/driver/public/silabs/micro_oled_ssd1306/src/micro_oled_ssd1306_i2c.c b/driver/public/silabs/micro_oled_ssd1306/src/micro_oled_ssd1306_i2c.c deleted file mode 100644 index 4fe7a7ea..00000000 --- a/driver/public/silabs/micro_oled_ssd1306/src/micro_oled_ssd1306_i2c.c +++ /dev/null @@ -1,134 +0,0 @@ -/***************************************************************************//** - * @file ssd1306_i2c.c - * @brief I2C abstraction used by SSD1306 - ******************************************************************************* - * # License - * Copyright 2020 Silicon Laboratories Inc. www.silabs.com - ******************************************************************************* - * - * SPDX-License-Identifier: Zlib - * - * The licensor of this software is Silicon Laboratories Inc. - * - * This software is provided \'as-is\', without any express or implied - * warranty. In no event will the authors be held liable for any damages - * arising from the use of this software. - * - * Permission is granted to anyone to use this software for any purpose, - * including commercial applications, and to alter it and redistribute it - * freely, subject to the following restrictions: - * - * 1. The origin of this software must not be misrepresented; you must not - * claim that you wrote the original software. If you use this software - * in a product, an acknowledgment in the product documentation would be - * appreciated but is not required. - * 2. Altered source versions must be plainly marked as such, and must not be - * misrepresented as being the original software. - * 3. This notice may not be removed or altered from any source distribution. - * - ******************************************************************************* - * # Evaluation Quality - * This code has been minimally tested to ensure that it builds and is suitable - * as a demonstration for evaluation purposes only. This code will be maintained - * at the sole discretion of Silicon Labs. - ******************************************************************************/ -#include -#include "micro_oled_ssd1306_i2c.h" -#include "micro_oled_ssd1306_config.h" -#include "sl_i2cspm.h" - -static sl_i2cspm_t *i2c_instance_handle = NULL; - -static sl_status_t ssd1306_send(const void *data, - uint32_t len, - uint8_t command_type); - -/***************************************************************************//** - * @brief - * Initialize the i2c interface. - * - * @detail - * The driver instances will be initialized automatically, - * during the sl_system_init() call in main.c. - *****************************************************************************/ -void ssd1306_i2c_init(sl_i2cspm_t *i2c_handle) -{ - i2c_instance_handle = i2c_handle; -} - -/***************************************************************************//** - * @brief - * Start an blocking command transmit transfer. - * - * @note - * @n This function is blocking and returns when the transfer is complete. - * - * @param[in] command - * Transmit command buffer. - * - * @param[in] len - * Number of bytes in transfer. - * - * @return - * @ref SL_STATUS_OK on success or @ref SL_STATUS_FAIL on failure - ******************************************************************************/ -sl_status_t ssd1306_send_command(const void *cmd, uint32_t len) -{ - return ssd1306_send(cmd, len, 0x00); -} - -/***************************************************************************//** - * @brief - * Start an blocking data transmit transfer. - * - * @note - * @n This function is blocking and returns when the transfer is complete. - * - * @param[in] data - * Transmit data buffer. - * - * @param[in] count - * Number of bytes in transfer. - * - * @return - * @ref SL_STATUS_OK on success or @ref SL_STATUS_FAIL on failure - ******************************************************************************/ -sl_status_t ssd1306_send_data(const void *data, uint32_t len) -{ - return ssd1306_send(data, len, 0x40); -} - -static sl_status_t ssd1306_send(const void *data, - uint32_t len, - uint8_t command_type) -{ - I2C_TransferSeq_TypeDef seq; - I2C_TransferReturn_TypeDef ret; - uint8_t i2c_write_data[len]; - uint8_t i2c_read_data[1]; - const uint8_t *ptr = data; - - if (NULL == i2c_instance_handle) { - return SL_STATUS_INVALID_PARAMETER; - } - - seq.addr = CONFIG_OLED_DISPLAY_ADDRESS << 1; - seq.flags = I2C_FLAG_WRITE; - - i2c_write_data[0] = command_type; - for (uint32_t i = 0; i < len; i++) { - i2c_write_data[i + 1] = ptr[i]; - } - seq.buf[0].data = i2c_write_data; - seq.buf[0].len = len + 1; - - /* Select location/length of data to be read */ - seq.buf[1].data = i2c_read_data; - seq.buf[1].len = 0; - ret = I2CSPM_Transfer(i2c_instance_handle, &seq); - if (ret != i2cTransferDone) { - return SL_STATUS_TRANSMIT; - } - - return SL_STATUS_OK; -} diff --git a/driver/public/silabs/micro_oled_ssd1306/src/oled_display.c b/driver/public/silabs/micro_oled_ssd1306/src/oled_display.c index bd5ddd7c..96c4e7eb 100644 --- a/driver/public/silabs/micro_oled_ssd1306/src/oled_display.c +++ b/driver/public/silabs/micro_oled_ssd1306/src/oled_display.c @@ -36,7 +36,7 @@ #include "micro_oled_ssd1306_config.h" #include "oled_display.h" -/* This oled_frame_buffer is large enough to store one full frame. */ +// This oled_frame_buffer is large enough to store one full frame. static uint8_t oled_frame_buffer[(SSD1306_DISPLAY_HEIGHT + 7) / 8 * SSD1306_DISPLAY_WIDTH]; @@ -65,9 +65,9 @@ static const oled_display_driver_api_t sl_memlcd_driver_api = .stop_scroll = ssd1306_stop_scroll, }; -/** Flag to monitor is this driver has been initialized. The - * oled_display_instance - * is only valid after initialized=true. +/** + * Flag to monitor is this driver has been initialized. + * The oled_display_instance is only valid after initialized=true. */ static bool initialized = false; @@ -101,7 +101,7 @@ static sl_status_t fill_screen(uint16_t color) { uint16_t i; - /* Fill the display with the background color of the glib_context_t */ + // Fill the display with the background color of the glib_context_t for (i = 0; i < sizeof(oled_frame_buffer); i++) { oled_frame_buffer[i] = color == 0 ? 0x00 : 0xFF; } diff --git a/driver/public/silabs/sparkfun_6dof_imu_bmi270/config/sparkfun_bmi270_config.h b/driver/public/silabs/sparkfun_6dof_imu_bmi270/config/sparkfun_bmi270_config.h new file mode 100644 index 00000000..10079fc3 --- /dev/null +++ b/driver/public/silabs/sparkfun_6dof_imu_bmi270/config/sparkfun_bmi270_config.h @@ -0,0 +1,71 @@ + +/***************************************************************************/ /** + * @file sparkfun_bmi270_config.h + * @brief sparkfun bmi270 configuration + ******************************************************************************* + * # License + * Copyright 2024 Silicon Laboratories Inc. www.silabs.com + ******************************************************************************* + * + * SPDX-License-Identifier: Zlib + * + * The licensor of this software is Silicon Laboratories Inc. + * + * This software is provided 'as-is', without any express or implied + * warranty. In no event will the authors be held liable for any damages + * arising from the use of this software. + * + * Permission is granted to anyone to use this software for any purpose, + * including commercial applications, and to alter it and redistribute it + * freely, subject to the following restrictions: + * + * 1. The origin of this software must not be misrepresented; you must not + * claim that you wrote the original software. If you use this software + * in a product, an acknowledgment in the product documentation would be + * appreciated but is not required. + * 2. Altered source versions must be plainly marked as such, and must not be + * misrepresented as being the original software. + * 3. This notice may not be removed or altered from any source distribution. + * + ******************************************************************************* + * + * EVALUATION QUALITY + * This code has been minimally tested to ensure that it builds with the + * specified dependency versions and is suitable as a demonstration for + * evaluation purposes only. + * This code will be maintained at the sole discretion of Silicon Labs. + * + ******************************************************************************/ + +#ifndef SPARKFUN_BMI270_CONFIG_H +#define SPARKFUN_BMI270_CONFIG_H + +#ifdef __cplusplus +extern "C" { +#endif + +// <<< Use Configuration Wizard in Context Menu >>> + +//SPARKFUN BMI270 I2C Configuration + +// SPARKFUN BMI270 I2C UC Configuration +// Enable: Peripheral configuration is taken straight from the configuration set in the universal configuration (UC). +// Disable: If the application demands it to be modified during runtime, use the default API to modify the peripheral configuration. +// Default: 0 +#define SPARKFUN_BMI270_I2C_UC 0 + +// Speed mode +// <0=> Standard mode (100kbit/s) +// <1=> Fast mode (400kbit/s) +// <2=> Fast mode plus (1Mbit/s) +// Default: 0 +#define SPARKFUN_BMI270_I2C_SPEED_MODE 0 + +// +// +// <<< end of configuration section >>> + +#ifdef __cplusplus +} +#endif +#endif // SPARKFUN_BMI270_CONFIG_H \ No newline at end of file diff --git a/driver/public/silabs/sparkfun_6dof_imu_bmi270/inc/sparkfun_bmi270.h b/driver/public/silabs/sparkfun_6dof_imu_bmi270/inc/sparkfun_bmi270.h new file mode 100644 index 00000000..ec92e7fa --- /dev/null +++ b/driver/public/silabs/sparkfun_6dof_imu_bmi270/inc/sparkfun_bmi270.h @@ -0,0 +1,445 @@ +#ifndef SPARKFUN_BMI270_H_ +#define SPARKFUN_BMI270_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +//// Includes +#include "sl_status.h" +#include "drv_i2c_master.h" + +/******************************************************************************/ + +/******************************************************************************* + *************************** Defines / Macros ******************************** + ******************************************************************************/ +///< Value used to clear BMI270_INIT_CTRL_REG +#define CLR_INIT_CTRL_REG 0x00 + +///< Value used to clear BMI270_POWER_CFG_REG to disable advance power mode +#define DISABLE_ADV_POWER 0x00 + +///< Value used to compare BMI270_INIT_STATUS_REG for successful initialization +#define BMI270_INIT_SUCCESSFUL 0x01 + +///< Value used to set BMI270_POWER_CFG_REG to disable advance power mode +#define ENABLE_ADV_POWER 0x01 + +///< Value used to set BMI270_INIT_CTRL_REG +#define SET_INIT_CTRL_REG 0x01 + +///< Value of gravitational force of earth in meter per second square (m/s^2) +#define GRAVITY_EARTH 9.80665 + +///< Value of chip-id of bmi270 sensor +#define BMI270_CHIP_ID 0x24 + +///< Value of slave address of bmi270 sensor +#define BMI270_ADDR 0x68 + +///< Value used to set BMI270_CMD_REG for soft reset of bmi270 sensor. +#define SOFT_RESET_CMD 0xB6 + +///< Value of chunk size of a configuration file for burst write +#define CHUNK_SIZE 1024 + +///< Value of delay counter for milli seconds delay +#define MS_DELAY_COUNTER 4600 + +/******************************************************************************* + ******************************** ENUMS ************************************ + ******************************************************************************/ +/// @brief Enum for bmi270 commands +typedef enum bmi270_commands { + ///< Register used to read chip ID of bmi270 sensor + BMI270_CHIP_IDENTIFY_CODE_REG = 0x00, + + ///< Register used to read the accelerator reading + BMI270_ACC_X_LSB_ADDR = 0x0C, + + ///< Register used to read the gyroscope reading + BMI270_GYR_X_LSB_ADDR = 0x12, + + ///< Register used to read status of initialization of bmi270 sensor + BMI270_INIT_STATUS_REG = 0x21, + + ///< Register used to configure accelerometer + BMI270_ACC_CONF_ADDR = 0x40, + + ///< Register used to configure accelerometer range + BMI270_ACC_RANGE_REG = 0x41, + + ///< Register used to configure gyroscope + BMI270_GYR_CONF_ADDR = 0x42, + + ///< Register used to configure gyroscope range + BMI270_GYRO_RANGE_REG = 0x43, + + ///< Register used to make bmi270 sensor ready to load configuration file + BMI270_INIT_CTRL_REG = 0x59, + + ///< Register used to write Base address_0 of the initialization data + BMI270_INIT_ADDR_0_REG = 0x5B, + + ///< Register used to write Base address_1 of the initialization data + BMI270_INIT_ADDR_1_REG = 0x5C, + + ///< Register used to write configuration file in chunks + BMI270_INIT_DATA_REG = 0x5E, + + ///< Register used to configuration advance power mode of bmi270 sensor + BMI270_POWER_CFG_REG = 0x7C, + + ///< Register used to enable features of bmi270 sensor + BMI270_PWR_CTRL_ADDR = 0x7D, + + ///< Register used to soft reset bmi270 sensor + BMI270_CMD_REG = 0x7E, + + ///< Register used to read the temperature LSB reading + BMI270_TEMP0_REG = 0x22, + + ///< Register used to read the temperature MSB reading + BMI270_TEMP1_REG = 0x23, +} bmi270_commands_t; + +/// @brief Enum for bmi270 features +typedef enum { + ///< Used to enable accelerometer feature + BMI270_FEATURE_GYRO = 0x02, + + ///< Used to enable gyroscope feature + BMI270_FEATURE_ACC = 0x04, + + ///< Used to enable temperature feature + BMI270_FEATURE_TEMP = 0x08 +} bmi270_feature_t; + +/// @brief Enum for bmi270 different accelerometer ranges +typedef enum { + ///< Used to enable +/- 2G accelerometer range + BMI270_ACCEL_RANGE_2G = 0x00, + + ///< Used to enable +/- 4G accelerometer range + BMI270_ACCEL_RANGE_4G = 0x01, + + ///< Used to enable +/- 8G accelerometer range + BMI270_ACCEL_RANGE_8G = 0x02, + + ///< Used to enable +/- 16G accelerometer range + BMI270_ACCEL_RANGE_16G = 0x03, +} bmi270_accel_range_t; + +/// @brief Enum for bmi270 different accelerometer output data rate +/// Bits 0-3 of ACC_CONF register address 0x40 is used for accelerometer ODR +typedef enum { + ///< Used to enable 25/32 Hz accelerometer output data rate + BMI270_ACCEL_ODR_25_32_HZ = 0x01, + + ///< Used to enable 25/16 Hz accelerometer output data rate + BMI270_ACCEL_ODR_25_16_HZ = 0x02, + + ///< Used to enable 25/8 Hz accelerometer output data rate + BMI270_ACCEL_ODR_25_8_HZ = 0x03, + + ///< Used to enable 25/4 Hz accelerometer output data rate + BMI270_ACCEL_ODR_25_4_HZ = 0x04, + + ///< Used to enable 25/2 Hz accelerometer output data rate + BMI270_ACCEL_ODR_25_2_HZ = 0x05, + + ///< Used to enable 25 Hz accelerometer output data rate + BMI270_ACCEL_ODR_25HZ = 0x06, + + ///< Used to enable 50 Hz accelerometer output data rate + BMI270_ACCEL_ODR_50HZ = 0x07, + + ///< Used to enable 100 Hz accelerometer output data rate + BMI270_ACCEL_ODR_100HZ = 0x08, + + ///< Used to enable 200 Hz accelerometer output data rate + BMI270_ACCEL_ODR_200HZ = 0x09, + + ///< Used to enable 400 Hz accelerometer output data rate + BMI270_ACCEL_ODR_400HZ = 0x0A, + + ///< Used to enable 800 Hz accelerometer output data rate + BMI270_ACCEL_ODR_800HZ = 0x0B, + + ///< Used to enable 1600 Hz accelerometer output data rate + BMI270_ACCEL_ODR_1600HZ = 0x0C, +} bmi270_accel_odr_t; + +/// @brief Enum for bmi270 different accelerometer bandwidth +/// Bits 4-6 of ACC_CONF register address 0x40 is used for accelerometer +/// bandwidth +typedef enum { + BMI270_ACCEL_OSR4_AVG1 = 0x00, + BMI270_ACCEL_OSR2_AVG2 = 0x01, + BMI270_ACCEL_NORM_AVG4 = 0x02, + BMI270_ACCEL_CIC_AVG8 = 0x03, + BMI270_ACCEL_RES_AVG16 = 0x04, + BMI270_ACCEL_RES_AVG32 = 0x05, + BMI270_ACCEL_RES_AVG64 = 0x06, + BMI270_ACCEL_RES_AVG128 = 0x07, +}bmi270_accel_bwp_t; + +/// @brief Enum for bmi270 different accelerometer filter +/// Bit 7 of ACC_CONF register address 0x40 is used for accelerometer filter +typedef enum { + /// For Bit : 7 of ACC_CONF register address 0x40 + + ///< Used to enable accelerometer power optimize mode + BMI270_ACCEL_POWER_OPT = 0x00, + + ///< Used to enable accelerometer performance optimize mode + BMI270_ACCEL_PERFO_OPT = 0x01, +}bmi270_accel_filter_t; + +/// @brief Enum for bmi270 different gyroscope range in degree per second +/// Bits 0-2 of GYR_RANGE register address 0x43 is used for gyroscope range +typedef enum { + /// For Bit : 2...0 of GYR_RANGE register address 0x43 + + ///< Used to enable +/- 2000 DPS gyroscope range + BMI270_GYRO_RANGE_2000DPS = 0x00, + + ///< Used to enable +/- 1000 DPS gyroscope range + BMI270_GYRO_RANGE_1000DPS = 0x01, + + ///< Used to enable +/- 500 DPS gyroscope range + BMI270_GYRO_RANGE_500DPS = 0x02, + + ///< Used to enable +/- 250 DPS gyroscope range + BMI270_GYRO_RANGE_250DPS = 0x03, + + ///< Used to enable +/- 125 DPS gyroscope range + BMI270_GYRO_RANGE_125DPS = 0x04, +} bmi270_gyro_range_t; + +/// @brief Enum for bmi270 different gyroscope output data rate +/// Bits 0-3 of GYR_CONF register address 0x42 is used for gyroscope output data +/// rate +typedef enum { + ///< Used to enable 25Hz gyroscope output data rate + BMI270_GYRO_ODR_25HZ = 0x06, + + ///< Used to enable 50Hz gyroscope output data rate + BMI270_GYRO_ODR_50HZ = 0x07, + + ///< Used to enable 100Hz gyroscope output data rate + BMI270_GYRO_ODR_100HZ = 0x08, + + ///< Used to enable 200Hz gyroscope output data rate + BMI270_GYRO_ODR_200HZ = 0x09, + + ///< Used to enable 400Hz gyroscope output data rate + BMI270_GYRO_ODR_400HZ = 0x0a, + + ///< Used to enable 800Hz gyroscope output data rate + BMI270_GYRO_ODR_800HZ = 0x0b, + + ///< Used to enable 1600Hz gyroscope output data rate + BMI270_GYRO_ODR_1600HZ = 0x0c, + + ///< Used to enable 3200Hz gyroscope output data rate + BMI270_GYRO_ODR_3200HZ = 0x0d, +} bmi270_gyro_odr_t; + +/// @brief Enum for bmi270 different gyroscope bandwidth +/// Bits 4-5 of GYR_CONF register address 0x42 is used for gyroscope bandwidth +typedef enum { + BMI270_GYRO_BWP_OSR4 = 0x00, + BMI270_GYRO_BWP_OSR2 = 0x01, + BMI270_GYRO_BWP_NORMAL = 0x02, +} bmi270_gyro_bwp_t; + +/// @brief Enum for bmi270 different gyroscope noise mode +/// Bit 6 of GYR_CONF register address 0x42 is used for noise mode +typedef enum { + ///< Used to enable power optimized gyroscope noise mode + BMI270_GYRO_N_POWER_OPT = 0x00, + + ///< Used to enable performance optimized gyroscope noise mode + BMI270_GYRO_N_PERFO_OPT = 0x01, +}bmi270_gyro_noise_t; + +/// @brief Enum for bmi270 different gyroscope filter mode +/// Bit 7 of GYR_CONF register address 0x42 is used for filter mode +typedef enum { + ///< Used to enable power optimized gyroscope filter mode + BMI270_GYRO_F_POWER_OPT = 0x00, + + ///< Used to enable performance optimized gyroscope filter mode + BMI270_GYRO_F_PERFO_OPT = 0x01, +}bmi270_gyro_filter_t; + +/// @brief Accelerometer Configuration Structure +typedef struct { + ///< Used to set output data rate of accelerometer + bmi270_accel_odr_t odr; + + ///< Used to set range of accelerometer + bmi270_accel_range_t range; + + ///< Used to set bandwidth of accelerometer + bmi270_accel_bwp_t bw; + + ///< Used to set filter mode of accelerometer + bmi270_accel_filter_t filter; +} bmi270_accel_config_t; + +/// @brief Gyroscope Configuration Structure +typedef struct { + ///< Used to set output data rate of gyroscope + bmi270_gyro_odr_t odr; + + ///< Used to set measurement range of gyroscope + bmi270_gyro_range_t range; + + ///< Used to set bandwidth of gyroscope + bmi270_gyro_bwp_t bw; + + ///< Used to set power mode of gyroscope + bmi270_gyro_noise_t noise; + + ///< Used to set filter mode of gyroscope + bmi270_gyro_filter_t filter; +} bmi270_gyro_config_t; + +/// @brief Enable features of bmi270 sensor Structure +typedef struct { + ///< Used to set features of bmi270 sensor (set using ORing) + uint8_t features; +} bmi270_enable_features_t; + +/// @brief to store the BMI270 sensor configuration data +typedef struct { + ///< Used to enables features of bmi270 sensor + bmi270_enable_features_t enable_features; + + ///< Used to set the configuration of accelerometer + bmi270_accel_config_t acc_config; + + ///< Used to set the configuration of gyroscope + bmi270_gyro_config_t gyro_config; + + ///< Used to set I2C instance used by the user + mikroe_i2c_handle_t i2c_instance; + + ///< Used to set Value of slave address of bmi270 sensor + uint8_t bmi270_slave_address; +} bmi270_cfg_data_t; + +// ----------------------------------------------------------------------------- +// Prototypes + +/******************************************************************************* + * @brief Initialize and probe BMI270 sensor. + * @param[in] bmi_cfg_data : pointer to store the BMI270 sensor configuration + * data. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + ******************************************************************************/ +sl_status_t sparkfun_bmi270_init(bmi270_cfg_data_t *bmi_cfg_data); + +/******************************************************************************* + * @brief Reset BMI270 sensor. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + ******************************************************************************/ +sl_status_t sparkfun_bmi270_reset(void); + +/******************************************************************************* + * @brief Check presence of BMI270 sensor on I2C bus. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + * - \ref SL_STATUS_NOT_AVAILABLE on device not available + ******************************************************************************/ +sl_status_t sparkfun_bmi270_is_present(void); + +/******************************************************************************* + * @brief Enable and disable advance power mode of BMI270 sensor. + * @param[in] value : data to be write. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + ******************************************************************************/ +sl_status_t sparkfun_bmi270_update_advance_power_mode(uint8_t value); + +/******************************************************************************* + * @brief Enable and configure default features of BMI270 sensor. + * @param[in] bmi_cfg_data : pointer to store the BMI270 sensor configuration + * data. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + * @note This API must be called after 'sparkfun_bmi270_init'. + ******************************************************************************/ +sl_status_t sparkfun_bmi270_enable_and_config_features( + bmi270_cfg_data_t *bmi_cfg_data); + +/******************************************************************************* + * @brief Read readings of accelerometer in BMI270 sensor. + * @param[in] bmi_cfg_data : pointer to store the BMI270 sensor configuration + * data. + * @param[out] acc_buffer : A pointer to accelerometer buffer. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + * - \ref SL_STATUS_NOT_AVAILABLE on feature not available due to software + * configuration. + * @note This API must be called after + * 'sparkfun_bmi270_enable_and_config_features'. + ******************************************************************************/ +sl_status_t sparkfun_bmi270_read_acc_reading(bmi270_cfg_data_t *bmi_cfg_data, + double *acc_buffer); + +/******************************************************************************* + * @brief Read readings of gyroscope in BMI270 sensor. + * @param[in] bmi_cfg_data : pointer to store the BMI270 sensor configuration + * data. + * @param[out] gyro_buffer : A pointer to gyroscope buffer. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + * - \ref SL_STATUS_NOT_AVAILABLE on feature not available due to software + * configuration. + * @note This API must be called after + * 'sparkfun_bmi270_enable_and_config_features'. + ******************************************************************************/ +sl_status_t sparkfun_bmi270_read_gyro_reading(bmi270_cfg_data_t *bmi_cfg_data, + double *gyro_buffer); + +/******************************************************************************* + * @brief Read readings of temperature in BMI270 sensor. + * @param[in] bmi_cfg_data : pointer to store the BMI270 sensor configuration + * data. + * @param[out] temperature_reading : A pointer to store temperature data. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + * - \ref SL_STATUS_NOT_AVAILABLE on feature not available due to software + * configuration. + * @note + * 1. If the gyroscope is enabled, the temperature reading is updated every + * 10 ms (+/- 12%). Otherwise, the temperature is updated every 1.28 s. + * 2. This API must be called after + * 'sparkfun_bmi270_enable_and_config_features'. + ******************************************************************************/ +sl_status_t sparkfun_bmi270_read_temp_reading(bmi270_cfg_data_t *bmi_cfg_data, + double *temperature_reading); + +#ifdef __cplusplus +} +#endif + +#endif /* SPARKFUN_BMI270_H_ */ + +/******************************************************************************/ +/* EOF */ +/******************************************************************************/ diff --git a/driver/public/silabs/sparkfun_6dof_imu_bmi270/src/sparkfun_bmi270.c b/driver/public/silabs/sparkfun_6dof_imu_bmi270/src/sparkfun_bmi270.c new file mode 100644 index 00000000..0ec2ecba --- /dev/null +++ b/driver/public/silabs/sparkfun_6dof_imu_bmi270/src/sparkfun_bmi270.c @@ -0,0 +1,1747 @@ +#include "sparkfun_bmi270.h" +#include "sparkfun_bmi270_config.h" + +/******************************************************************************* + * @brief BMI270 configuration file + ******************************************************************************/ +static const uint8_t bmi270_config_file[] = { + 0xc8, 0x2e, 0x00, 0x2e, 0x80, 0x2e, 0x3d, 0xb1, 0xc8, 0x2e, 0x00, 0x2e, 0x80, + 0x2e, 0x91, 0x03, 0x80, 0x2e, 0xbc, + 0xb0, 0x80, 0x2e, 0xa3, 0x03, 0xc8, 0x2e, 0x00, 0x2e, 0x80, 0x2e, 0x00, 0xb0, + 0x50, 0x30, 0x21, 0x2e, 0x59, 0xf5, + 0x10, 0x30, 0x21, 0x2e, 0x6a, 0xf5, 0x80, 0x2e, 0x3b, 0x03, 0x00, 0x00, 0x00, + 0x00, 0x08, 0x19, 0x01, 0x00, 0x22, + 0x00, 0x75, 0x00, 0x00, 0x10, 0x00, 0x10, 0xd1, 0x00, 0xb3, 0x43, 0x80, 0x2e, + 0x00, 0xc1, 0x80, 0x2e, 0x00, 0xc1, + 0x80, 0x2e, 0x00, 0xc1, 0x80, 0x2e, 0x00, 0xc1, 0x80, 0x2e, 0x00, 0xc1, 0x80, + 0x2e, 0x00, 0xc1, 0x80, 0x2e, 0x00, + 0xc1, 0x80, 0x2e, 0x00, 0xc1, 0x80, 0x2e, 0x00, 0xc1, 0x80, 0x2e, 0x00, 0xc1, + 0x80, 0x2e, 0x00, 0xc1, 0x80, 0x2e, + 0x00, 0xc1, 0x80, 0x2e, 0x00, 0xc1, 0x80, 0x2e, 0x00, 0xc1, 0x80, 0x2e, 0x00, + 0xc1, 0x80, 0x2e, 0x00, 0xc1, 0x80, + 0x2e, 0x00, 0xc1, 0x80, 0x2e, 0x00, 0xc1, 0x80, 0x2e, 0x00, 0xc1, 0x80, 0x2e, + 0x00, 0xc1, 0x80, 0x2e, 0x00, 0xc1, + 0x80, 0x2e, 0x00, 0xc1, 0x80, 0x2e, 0x00, 0xc1, 0x80, 0x2e, 0x00, 0xc1, 0x80, + 0x2e, 0x00, 0xc1, 0x80, 0x2e, 0x00, + 0xc1, 0x80, 0x2e, 0x00, 0xc1, 0x80, 0x2e, 0x00, 0xc1, 0x80, 0x2e, 0x00, 0xc1, + 0x80, 0x2e, 0x00, 0xc1, 0x80, 0x2e, + 0x00, 0xc1, 0x80, 0x2e, 0x00, 0xc1, 0x80, 0x2e, 0x00, 0xc1, 0x80, 0x2e, 0x00, + 0xc1, 0x80, 0x2e, 0x00, 0xc1, 0x80, + 0x2e, 0x00, 0xc1, 0x80, 0x2e, 0x00, 0xc1, 0x80, 0x2e, 0x00, 0xc1, 0x80, 0x2e, + 0x00, 0xc1, 0x80, 0x2e, 0x00, 0xc1, + 0x80, 0x2e, 0x00, 0xc1, 0x80, 0x2e, 0x00, 0xc1, 0xe0, 0x5f, 0x00, 0x00, 0x00, + 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x92, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x19, 0x00, 0x00, 0x88, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, + 0xe0, 0xaa, 0x38, 0x05, 0xe0, 0x90, 0x30, 0xfa, 0x00, 0x96, 0x00, 0x4b, 0x09, + 0x11, 0x00, 0x11, 0x00, 0x02, 0x00, + 0x2d, 0x01, 0xd4, 0x7b, 0x3b, 0x01, 0xdb, 0x7a, 0x04, 0x00, 0x3f, 0x7b, 0xcd, + 0x6c, 0xc3, 0x04, 0x85, 0x09, 0xc3, + 0x04, 0xec, 0xe6, 0x0c, 0x46, 0x01, 0x00, 0x27, 0x00, 0x19, 0x00, 0x96, 0x00, + 0xa0, 0x00, 0x01, 0x00, 0x0c, 0x00, + 0xf0, 0x3c, 0x00, 0x01, 0x01, 0x00, 0x03, 0x00, 0x01, 0x00, 0x0e, 0x00, 0x00, + 0x00, 0x32, 0x00, 0x05, 0x00, 0xee, + 0x06, 0x04, 0x00, 0xc8, 0x00, 0x00, 0x00, 0x04, 0x00, 0xa8, 0x05, 0xee, 0x06, + 0x00, 0x04, 0xbc, 0x02, 0xb3, 0x00, + 0x85, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0xb4, 0x00, 0x01, 0x00, 0xb9, 0x00, 0x01, 0x00, 0x98, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x01, 0x00, 0x80, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, + 0x2e, 0x00, 0xc1, 0xfd, 0x2d, 0xde, + 0x00, 0xeb, 0x00, 0xda, 0x00, 0x00, 0x0c, 0xff, 0x0f, 0x00, 0x04, 0xc0, 0x00, + 0x5b, 0xf5, 0xc9, 0x01, 0x1e, 0xf2, + 0x80, 0x00, 0x3f, 0xff, 0x19, 0xf4, 0x58, 0xf5, 0x66, 0xf5, 0x64, 0xf5, 0xc0, + 0xf1, 0xf0, 0x00, 0xe0, 0x00, 0xcd, + 0x01, 0xd3, 0x01, 0xdb, 0x01, 0xff, 0x7f, 0xff, 0x01, 0xe4, 0x00, 0x74, 0xf7, + 0xf3, 0x00, 0xfa, 0x00, 0xff, 0x3f, + 0xca, 0x03, 0x6c, 0x38, 0x56, 0xfe, 0x44, 0xfd, 0xbc, 0x02, 0xf9, 0x06, 0x00, + 0xfc, 0x12, 0x02, 0xae, 0x01, 0x58, + 0xfa, 0x9a, 0xfd, 0x77, 0x05, 0xbb, 0x02, 0x96, 0x01, 0x95, 0x01, 0x7f, 0x01, + 0x82, 0x01, 0x89, 0x01, 0x87, 0x01, + 0x88, 0x01, 0x8a, 0x01, 0x8c, 0x01, 0x8f, 0x01, 0x8d, 0x01, 0x92, 0x01, 0x91, + 0x01, 0xdd, 0x00, 0x9f, 0x01, 0x7e, + 0x01, 0xdb, 0x00, 0xb6, 0x01, 0x70, 0x69, 0x26, 0xd3, 0x9c, 0x07, 0x1f, 0x05, + 0x9d, 0x00, 0x00, 0x08, 0xbc, 0x05, + 0x37, 0xfa, 0xa2, 0x01, 0xaa, 0x01, 0xa1, 0x01, 0xa8, 0x01, 0xa0, 0x01, 0xa8, + 0x05, 0xb4, 0x01, 0xb4, 0x01, 0xce, + 0x00, 0xd0, 0x00, 0xfc, 0x00, 0xc5, 0x01, 0xff, 0xfb, 0xb1, 0x00, 0x00, 0x38, + 0x00, 0x30, 0xfd, 0xf5, 0xfc, 0xf5, + 0xcd, 0x01, 0xa0, 0x00, 0x5f, 0xff, 0x00, 0x40, 0xff, 0x00, 0x00, 0x80, 0x6d, + 0x0f, 0xeb, 0x00, 0x7f, 0xff, 0xc2, + 0xf5, 0x68, 0xf7, 0xb3, 0xf1, 0x67, 0x0f, 0x5b, 0x0f, 0x61, 0x0f, 0x80, 0x0f, + 0x58, 0xf7, 0x5b, 0xf7, 0x83, 0x0f, + 0x86, 0x00, 0x72, 0x0f, 0x85, 0x0f, 0xc6, 0xf1, 0x7f, 0x0f, 0x6c, 0xf7, 0x00, + 0xe0, 0x00, 0xff, 0xd1, 0xf5, 0x87, + 0x0f, 0x8a, 0x0f, 0xff, 0x03, 0xf0, 0x3f, 0x8b, 0x00, 0x8e, 0x00, 0x90, 0x00, + 0xb9, 0x00, 0x2d, 0xf5, 0xca, 0xf5, + 0xcb, 0x01, 0x20, 0xf2, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x30, 0x50, 0x98, 0x2e, + 0xd7, 0x0e, 0x50, 0x32, 0x98, 0x2e, 0xfa, 0x03, 0x00, 0x30, 0xf0, 0x7f, 0x00, + 0x2e, 0x00, 0x2e, 0xd0, 0x2e, 0x00, + 0x2e, 0x01, 0x80, 0x08, 0xa2, 0xfb, 0x2f, 0x98, 0x2e, 0xba, 0x03, 0x21, 0x2e, + 0x19, 0x00, 0x01, 0x2e, 0xee, 0x00, + 0x00, 0xb2, 0x07, 0x2f, 0x01, 0x2e, 0x19, 0x00, 0x00, 0xb2, 0x03, 0x2f, 0x01, + 0x50, 0x03, 0x52, 0x98, 0x2e, 0x07, + 0xcc, 0x01, 0x2e, 0xdd, 0x00, 0x00, 0xb2, 0x27, 0x2f, 0x05, 0x2e, 0x8a, 0x00, + 0x05, 0x52, 0x98, 0x2e, 0xc7, 0xc1, + 0x03, 0x2e, 0xe9, 0x00, 0x40, 0xb2, 0xf0, 0x7f, 0x08, 0x2f, 0x01, 0x2e, 0x19, + 0x00, 0x00, 0xb2, 0x04, 0x2f, 0x00, + 0x30, 0x21, 0x2e, 0xe9, 0x00, 0x98, 0x2e, 0xb4, 0xb1, 0x01, 0x2e, 0x18, 0x00, + 0x00, 0xb2, 0x10, 0x2f, 0x05, 0x50, + 0x98, 0x2e, 0x4d, 0xc3, 0x05, 0x50, 0x98, 0x2e, 0x5a, 0xc7, 0x98, 0x2e, 0xf9, + 0xb4, 0x98, 0x2e, 0x54, 0xb2, 0x98, + 0x2e, 0x67, 0xb6, 0x98, 0x2e, 0x17, 0xb2, 0x10, 0x30, 0x21, 0x2e, 0x77, 0x00, + 0x01, 0x2e, 0xef, 0x00, 0x00, 0xb2, + 0x04, 0x2f, 0x98, 0x2e, 0x7a, 0xb7, 0x00, 0x30, 0x21, 0x2e, 0xef, 0x00, 0x01, + 0x2e, 0xd4, 0x00, 0x04, 0xae, 0x0b, + 0x2f, 0x01, 0x2e, 0xdd, 0x00, 0x00, 0xb2, 0x07, 0x2f, 0x05, 0x52, 0x98, 0x2e, + 0x8e, 0x0e, 0x00, 0xb2, 0x02, 0x2f, + 0x10, 0x30, 0x21, 0x2e, 0x7d, 0x00, 0x01, 0x2e, 0x7d, 0x00, 0x00, 0x90, 0x90, + 0x2e, 0xf1, 0x02, 0x01, 0x2e, 0xd7, + 0x00, 0x00, 0xb2, 0x04, 0x2f, 0x98, 0x2e, 0x2f, 0x0e, 0x00, 0x30, 0x21, 0x2e, + 0x7b, 0x00, 0x01, 0x2e, 0x7b, 0x00, + 0x00, 0xb2, 0x12, 0x2f, 0x01, 0x2e, 0xd4, 0x00, 0x00, 0x90, 0x02, 0x2f, 0x98, + 0x2e, 0x1f, 0x0e, 0x09, 0x2d, 0x98, + 0x2e, 0x81, 0x0d, 0x01, 0x2e, 0xd4, 0x00, 0x04, 0x90, 0x02, 0x2f, 0x50, 0x32, + 0x98, 0x2e, 0xfa, 0x03, 0x00, 0x30, + 0x21, 0x2e, 0x7b, 0x00, 0x01, 0x2e, 0x7c, 0x00, 0x00, 0xb2, 0x90, 0x2e, 0x09, + 0x03, 0x01, 0x2e, 0x7c, 0x00, 0x01, + 0x31, 0x01, 0x08, 0x00, 0xb2, 0x04, 0x2f, 0x98, 0x2e, 0x47, 0xcb, 0x10, 0x30, + 0x21, 0x2e, 0x77, 0x00, 0x81, 0x30, + 0x01, 0x2e, 0x7c, 0x00, 0x01, 0x08, 0x00, 0xb2, 0x61, 0x2f, 0x03, 0x2e, 0x89, + 0x00, 0x01, 0x2e, 0xd4, 0x00, 0x98, + 0xbc, 0x98, 0xb8, 0x05, 0xb2, 0x0f, 0x58, 0x23, 0x2f, 0x07, 0x90, 0x09, 0x54, + 0x00, 0x30, 0x37, 0x2f, 0x15, 0x41, + 0x04, 0x41, 0xdc, 0xbe, 0x44, 0xbe, 0xdc, 0xba, 0x2c, 0x01, 0x61, 0x00, 0x0f, + 0x56, 0x4a, 0x0f, 0x0c, 0x2f, 0xd1, + 0x42, 0x94, 0xb8, 0xc1, 0x42, 0x11, 0x30, 0x05, 0x2e, 0x6a, 0xf7, 0x2c, 0xbd, + 0x2f, 0xb9, 0x80, 0xb2, 0x08, 0x22, + 0x98, 0x2e, 0xc3, 0xb7, 0x21, 0x2d, 0x61, 0x30, 0x23, 0x2e, 0xd4, 0x00, 0x98, + 0x2e, 0xc3, 0xb7, 0x00, 0x30, 0x21, + 0x2e, 0x5a, 0xf5, 0x18, 0x2d, 0xe1, 0x7f, 0x50, 0x30, 0x98, 0x2e, 0xfa, 0x03, + 0x0f, 0x52, 0x07, 0x50, 0x50, 0x42, + 0x70, 0x30, 0x0d, 0x54, 0x42, 0x42, 0x7e, 0x82, 0xe2, 0x6f, 0x80, 0xb2, 0x42, + 0x42, 0x05, 0x2f, 0x21, 0x2e, 0xd4, + 0x00, 0x10, 0x30, 0x98, 0x2e, 0xc3, 0xb7, 0x03, 0x2d, 0x60, 0x30, 0x21, 0x2e, + 0xd4, 0x00, 0x01, 0x2e, 0xd4, 0x00, + 0x06, 0x90, 0x18, 0x2f, 0x01, 0x2e, 0x76, 0x00, 0x0b, 0x54, 0x07, 0x52, 0xe0, + 0x7f, 0x98, 0x2e, 0x7a, 0xc1, 0xe1, + 0x6f, 0x08, 0x1a, 0x40, 0x30, 0x08, 0x2f, 0x21, 0x2e, 0xd4, 0x00, 0x20, 0x30, + 0x98, 0x2e, 0xaf, 0xb7, 0x50, 0x32, + 0x98, 0x2e, 0xfa, 0x03, 0x05, 0x2d, 0x98, 0x2e, 0x38, 0x0e, 0x00, 0x30, 0x21, + 0x2e, 0xd4, 0x00, 0x00, 0x30, 0x21, + 0x2e, 0x7c, 0x00, 0x18, 0x2d, 0x01, 0x2e, 0xd4, 0x00, 0x03, 0xaa, 0x01, 0x2f, + 0x98, 0x2e, 0x45, 0x0e, 0x01, 0x2e, + 0xd4, 0x00, 0x3f, 0x80, 0x03, 0xa2, 0x01, 0x2f, 0x00, 0x2e, 0x02, 0x2d, 0x98, + 0x2e, 0x5b, 0x0e, 0x30, 0x30, 0x98, + 0x2e, 0xce, 0xb7, 0x00, 0x30, 0x21, 0x2e, 0x7d, 0x00, 0x50, 0x32, 0x98, 0x2e, + 0xfa, 0x03, 0x01, 0x2e, 0x77, 0x00, + 0x00, 0xb2, 0x24, 0x2f, 0x98, 0x2e, 0xf5, 0xcb, 0x03, 0x2e, 0xd5, 0x00, 0x11, + 0x54, 0x01, 0x0a, 0xbc, 0x84, 0x83, + 0x86, 0x21, 0x2e, 0xc9, 0x01, 0xe0, 0x40, 0x13, 0x52, 0xc4, 0x40, 0x82, 0x40, + 0xa8, 0xb9, 0x52, 0x42, 0x43, 0xbe, + 0x53, 0x42, 0x04, 0x0a, 0x50, 0x42, 0xe1, 0x7f, 0xf0, 0x31, 0x41, 0x40, 0xf2, + 0x6f, 0x25, 0xbd, 0x08, 0x08, 0x02, + 0x0a, 0xd0, 0x7f, 0x98, 0x2e, 0xa8, 0xcf, 0x06, 0xbc, 0xd1, 0x6f, 0xe2, 0x6f, + 0x08, 0x0a, 0x80, 0x42, 0x98, 0x2e, + 0x58, 0xb7, 0x00, 0x30, 0x21, 0x2e, 0xee, 0x00, 0x21, 0x2e, 0x77, 0x00, 0x21, + 0x2e, 0xdd, 0x00, 0x80, 0x2e, 0xf4, + 0x01, 0x1a, 0x24, 0x22, 0x00, 0x80, 0x2e, 0xec, 0x01, 0x10, 0x50, 0xfb, 0x7f, + 0x98, 0x2e, 0xf3, 0x03, 0x57, 0x50, + 0xfb, 0x6f, 0x01, 0x30, 0x71, 0x54, 0x11, 0x42, 0x42, 0x0e, 0xfc, 0x2f, 0xc0, + 0x2e, 0x01, 0x42, 0xf0, 0x5f, 0x80, + 0x2e, 0x00, 0xc1, 0xfd, 0x2d, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x9a, 0x01, + 0x34, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x20, 0x50, 0xe7, 0x7f, 0xf6, 0x7f, 0x06, 0x32, 0x0f, 0x2e, 0x61, + 0xf5, 0xfe, 0x09, 0xc0, 0xb3, 0x04, + 0x2f, 0x17, 0x30, 0x2f, 0x2e, 0xef, 0x00, 0x2d, 0x2e, 0x61, 0xf5, 0xf6, 0x6f, + 0xe7, 0x6f, 0xe0, 0x5f, 0xc8, 0x2e, + 0x20, 0x50, 0xe7, 0x7f, 0xf6, 0x7f, 0x46, 0x30, 0x0f, 0x2e, 0xa4, 0xf1, 0xbe, + 0x09, 0x80, 0xb3, 0x06, 0x2f, 0x0d, + 0x2e, 0xd4, 0x00, 0x84, 0xaf, 0x02, 0x2f, 0x16, 0x30, 0x2d, 0x2e, 0x7b, 0x00, + 0x86, 0x30, 0x2d, 0x2e, 0x60, 0xf5, + 0xf6, 0x6f, 0xe7, 0x6f, 0xe0, 0x5f, 0xc8, 0x2e, 0x01, 0x2e, 0x77, 0xf7, 0x09, + 0xbc, 0x0f, 0xb8, 0x00, 0xb2, 0x10, + 0x50, 0xfb, 0x7f, 0x10, 0x30, 0x0b, 0x2f, 0x03, 0x2e, 0x8a, 0x00, 0x96, 0xbc, + 0x9f, 0xb8, 0x40, 0xb2, 0x05, 0x2f, + 0x03, 0x2e, 0x68, 0xf7, 0x9e, 0xbc, 0x9f, 0xb8, 0x40, 0xb2, 0x07, 0x2f, 0x03, + 0x2e, 0x7e, 0x00, 0x41, 0x90, 0x01, + 0x2f, 0x98, 0x2e, 0xdc, 0x03, 0x03, 0x2c, 0x00, 0x30, 0x21, 0x2e, 0x7e, 0x00, + 0xfb, 0x6f, 0xf0, 0x5f, 0xb8, 0x2e, + 0x20, 0x50, 0xe0, 0x7f, 0xfb, 0x7f, 0x00, 0x2e, 0x27, 0x50, 0x98, 0x2e, 0x3b, + 0xc8, 0x29, 0x50, 0x98, 0x2e, 0xa7, + 0xc8, 0x01, 0x50, 0x98, 0x2e, 0x55, 0xcc, 0xe1, 0x6f, 0x2b, 0x50, 0x98, 0x2e, + 0xe0, 0xc9, 0xfb, 0x6f, 0x00, 0x30, + 0xe0, 0x5f, 0x21, 0x2e, 0x7e, 0x00, 0xb8, 0x2e, 0x73, 0x50, 0x01, 0x30, 0x57, + 0x54, 0x11, 0x42, 0x42, 0x0e, 0xfc, + 0x2f, 0xb8, 0x2e, 0x21, 0x2e, 0x59, 0xf5, 0x10, 0x30, 0xc0, 0x2e, 0x21, 0x2e, + 0x4a, 0xf1, 0x90, 0x50, 0xf7, 0x7f, + 0xe6, 0x7f, 0xd5, 0x7f, 0xc4, 0x7f, 0xb3, 0x7f, 0xa1, 0x7f, 0x90, 0x7f, 0x82, + 0x7f, 0x7b, 0x7f, 0x98, 0x2e, 0x35, + 0xb7, 0x00, 0xb2, 0x90, 0x2e, 0x97, 0xb0, 0x03, 0x2e, 0x8f, 0x00, 0x07, 0x2e, + 0x91, 0x00, 0x05, 0x2e, 0xb1, 0x00, + 0x3f, 0xba, 0x9f, 0xb8, 0x01, 0x2e, 0xb1, 0x00, 0xa3, 0xbd, 0x4c, 0x0a, 0x05, + 0x2e, 0xb1, 0x00, 0x04, 0xbe, 0xbf, + 0xb9, 0xcb, 0x0a, 0x4f, 0xba, 0x22, 0xbd, 0x01, 0x2e, 0xb3, 0x00, 0xdc, 0x0a, + 0x2f, 0xb9, 0x03, 0x2e, 0xb8, 0x00, + 0x0a, 0xbe, 0x9a, 0x0a, 0xcf, 0xb9, 0x9b, 0xbc, 0x01, 0x2e, 0x97, 0x00, 0x9f, + 0xb8, 0x93, 0x0a, 0x0f, 0xbc, 0x91, + 0x0a, 0x0f, 0xb8, 0x90, 0x0a, 0x25, 0x2e, 0x18, 0x00, 0x05, 0x2e, 0xc1, 0xf5, + 0x2e, 0xbd, 0x2e, 0xb9, 0x01, 0x2e, + 0x19, 0x00, 0x31, 0x30, 0x8a, 0x04, 0x00, 0x90, 0x07, 0x2f, 0x01, 0x2e, 0xd4, + 0x00, 0x04, 0xa2, 0x03, 0x2f, 0x01, + 0x2e, 0x18, 0x00, 0x00, 0xb2, 0x0c, 0x2f, 0x19, 0x50, 0x05, 0x52, 0x98, 0x2e, + 0x4d, 0xb7, 0x05, 0x2e, 0x78, 0x00, + 0x80, 0x90, 0x10, 0x30, 0x01, 0x2f, 0x21, 0x2e, 0x78, 0x00, 0x25, 0x2e, 0xdd, + 0x00, 0x98, 0x2e, 0x3e, 0xb7, 0x00, + 0xb2, 0x02, 0x30, 0x01, 0x30, 0x04, 0x2f, 0x01, 0x2e, 0x19, 0x00, 0x00, 0xb2, + 0x00, 0x2f, 0x21, 0x30, 0x01, 0x2e, + 0xea, 0x00, 0x08, 0x1a, 0x0e, 0x2f, 0x23, 0x2e, 0xea, 0x00, 0x33, 0x30, 0x1b, + 0x50, 0x0b, 0x09, 0x01, 0x40, 0x17, + 0x56, 0x46, 0xbe, 0x4b, 0x08, 0x4c, 0x0a, 0x01, 0x42, 0x0a, 0x80, 0x15, 0x52, + 0x01, 0x42, 0x00, 0x2e, 0x01, 0x2e, + 0x18, 0x00, 0x00, 0xb2, 0x1f, 0x2f, 0x03, 0x2e, 0xc0, 0xf5, 0xf0, 0x30, 0x48, + 0x08, 0x47, 0xaa, 0x74, 0x30, 0x07, + 0x2e, 0x7a, 0x00, 0x61, 0x22, 0x4b, 0x1a, 0x05, 0x2f, 0x07, 0x2e, 0x66, 0xf5, + 0xbf, 0xbd, 0xbf, 0xb9, 0xc0, 0x90, + 0x0b, 0x2f, 0x1d, 0x56, 0x2b, 0x30, 0xd2, 0x42, 0xdb, 0x42, 0x01, 0x04, 0xc2, + 0x42, 0x04, 0xbd, 0xfe, 0x80, 0x81, + 0x84, 0x23, 0x2e, 0x7a, 0x00, 0x02, 0x42, 0x02, 0x32, 0x25, 0x2e, 0x62, 0xf5, + 0x05, 0x2e, 0xd6, 0x00, 0x81, 0x84, + 0x25, 0x2e, 0xd6, 0x00, 0x02, 0x31, 0x25, 0x2e, 0x60, 0xf5, 0x05, 0x2e, 0x8a, + 0x00, 0x0b, 0x50, 0x90, 0x08, 0x80, + 0xb2, 0x0b, 0x2f, 0x05, 0x2e, 0xca, 0xf5, 0xf0, 0x3e, 0x90, 0x08, 0x25, 0x2e, + 0xca, 0xf5, 0x05, 0x2e, 0x59, 0xf5, + 0xe0, 0x3f, 0x90, 0x08, 0x25, 0x2e, 0x59, 0xf5, 0x90, 0x6f, 0xa1, 0x6f, 0xb3, + 0x6f, 0xc4, 0x6f, 0xd5, 0x6f, 0xe6, + 0x6f, 0xf7, 0x6f, 0x7b, 0x6f, 0x82, 0x6f, 0x70, 0x5f, 0xc8, 0x2e, 0xc0, 0x50, + 0x90, 0x7f, 0xe5, 0x7f, 0xd4, 0x7f, + 0xc3, 0x7f, 0xb1, 0x7f, 0xa2, 0x7f, 0x87, 0x7f, 0xf6, 0x7f, 0x7b, 0x7f, 0x00, + 0x2e, 0x01, 0x2e, 0x60, 0xf5, 0x60, + 0x7f, 0x98, 0x2e, 0x35, 0xb7, 0x02, 0x30, 0x63, 0x6f, 0x15, 0x52, 0x50, 0x7f, + 0x62, 0x7f, 0x5a, 0x2c, 0x02, 0x32, + 0x1a, 0x09, 0x00, 0xb3, 0x14, 0x2f, 0x00, 0xb2, 0x03, 0x2f, 0x09, 0x2e, 0x18, + 0x00, 0x00, 0x91, 0x0c, 0x2f, 0x43, + 0x7f, 0x98, 0x2e, 0x97, 0xb7, 0x1f, 0x50, 0x02, 0x8a, 0x02, 0x32, 0x04, 0x30, + 0x25, 0x2e, 0x64, 0xf5, 0x15, 0x52, + 0x50, 0x6f, 0x43, 0x6f, 0x44, 0x43, 0x25, 0x2e, 0x60, 0xf5, 0xd9, 0x08, 0xc0, + 0xb2, 0x36, 0x2f, 0x98, 0x2e, 0x3e, + 0xb7, 0x00, 0xb2, 0x06, 0x2f, 0x01, 0x2e, 0x19, 0x00, 0x00, 0xb2, 0x02, 0x2f, + 0x50, 0x6f, 0x00, 0x90, 0x0a, 0x2f, + 0x01, 0x2e, 0x79, 0x00, 0x00, 0x90, 0x19, 0x2f, 0x10, 0x30, 0x21, 0x2e, 0x79, + 0x00, 0x00, 0x30, 0x98, 0x2e, 0xdc, + 0x03, 0x13, 0x2d, 0x01, 0x2e, 0xc3, 0xf5, 0x0c, 0xbc, 0x0f, 0xb8, 0x12, 0x30, + 0x10, 0x04, 0x03, 0xb0, 0x26, 0x25, + 0x21, 0x50, 0x03, 0x52, 0x98, 0x2e, 0x4d, 0xb7, 0x10, 0x30, 0x21, 0x2e, 0xee, + 0x00, 0x02, 0x30, 0x60, 0x7f, 0x25, + 0x2e, 0x79, 0x00, 0x60, 0x6f, 0x00, 0x90, 0x05, 0x2f, 0x00, 0x30, 0x21, 0x2e, + 0xea, 0x00, 0x15, 0x50, 0x21, 0x2e, + 0x64, 0xf5, 0x15, 0x52, 0x23, 0x2e, 0x60, 0xf5, 0x02, 0x32, 0x50, 0x6f, 0x00, + 0x90, 0x02, 0x2f, 0x03, 0x30, 0x27, + 0x2e, 0x78, 0x00, 0x07, 0x2e, 0x60, 0xf5, 0x1a, 0x09, 0x00, 0x91, 0xa3, 0x2f, + 0x19, 0x09, 0x00, 0x91, 0xa0, 0x2f, + 0x90, 0x6f, 0xa2, 0x6f, 0xb1, 0x6f, 0xc3, 0x6f, 0xd4, 0x6f, 0xe5, 0x6f, 0x7b, + 0x6f, 0xf6, 0x6f, 0x87, 0x6f, 0x40, + 0x5f, 0xc8, 0x2e, 0xc0, 0x50, 0xe7, 0x7f, 0xf6, 0x7f, 0x26, 0x30, 0x0f, 0x2e, + 0x61, 0xf5, 0x2f, 0x2e, 0x7c, 0x00, + 0x0f, 0x2e, 0x7c, 0x00, 0xbe, 0x09, 0xa2, 0x7f, 0x80, 0x7f, 0x80, 0xb3, 0xd5, + 0x7f, 0xc4, 0x7f, 0xb3, 0x7f, 0x91, + 0x7f, 0x7b, 0x7f, 0x0b, 0x2f, 0x23, 0x50, 0x1a, 0x25, 0x12, 0x40, 0x42, 0x7f, + 0x74, 0x82, 0x12, 0x40, 0x52, 0x7f, + 0x00, 0x2e, 0x00, 0x40, 0x60, 0x7f, 0x98, 0x2e, 0x6a, 0xd6, 0x81, 0x30, 0x01, + 0x2e, 0x7c, 0x00, 0x01, 0x08, 0x00, + 0xb2, 0x42, 0x2f, 0x03, 0x2e, 0x89, 0x00, 0x01, 0x2e, 0x89, 0x00, 0x97, 0xbc, + 0x06, 0xbc, 0x9f, 0xb8, 0x0f, 0xb8, + 0x00, 0x90, 0x23, 0x2e, 0xd8, 0x00, 0x10, 0x30, 0x01, 0x30, 0x2a, 0x2f, 0x03, + 0x2e, 0xd4, 0x00, 0x44, 0xb2, 0x05, + 0x2f, 0x47, 0xb2, 0x00, 0x30, 0x2d, 0x2f, 0x21, 0x2e, 0x7c, 0x00, 0x2b, 0x2d, + 0x03, 0x2e, 0xfd, 0xf5, 0x9e, 0xbc, + 0x9f, 0xb8, 0x40, 0x90, 0x14, 0x2f, 0x03, 0x2e, 0xfc, 0xf5, 0x99, 0xbc, 0x9f, + 0xb8, 0x40, 0x90, 0x0e, 0x2f, 0x03, + 0x2e, 0x49, 0xf1, 0x25, 0x54, 0x4a, 0x08, 0x40, 0x90, 0x08, 0x2f, 0x98, 0x2e, + 0x35, 0xb7, 0x00, 0xb2, 0x10, 0x30, + 0x03, 0x2f, 0x50, 0x30, 0x21, 0x2e, 0xd4, 0x00, 0x10, 0x2d, 0x98, 0x2e, 0xaf, + 0xb7, 0x00, 0x30, 0x21, 0x2e, 0x7c, + 0x00, 0x0a, 0x2d, 0x05, 0x2e, 0x69, 0xf7, 0x2d, 0xbd, 0x2f, 0xb9, 0x80, 0xb2, + 0x01, 0x2f, 0x21, 0x2e, 0x7d, 0x00, + 0x23, 0x2e, 0x7c, 0x00, 0xe0, 0x31, 0x21, 0x2e, 0x61, 0xf5, 0xf6, 0x6f, 0xe7, + 0x6f, 0x80, 0x6f, 0xa2, 0x6f, 0xb3, + 0x6f, 0xc4, 0x6f, 0xd5, 0x6f, 0x7b, 0x6f, 0x91, 0x6f, 0x40, 0x5f, 0xc8, 0x2e, + 0x60, 0x51, 0x0a, 0x25, 0x36, 0x88, + 0xf4, 0x7f, 0xeb, 0x7f, 0x00, 0x32, 0x31, 0x52, 0x32, 0x30, 0x13, 0x30, 0x98, + 0x2e, 0x15, 0xcb, 0x0a, 0x25, 0x33, + 0x84, 0xd2, 0x7f, 0x43, 0x30, 0x05, 0x50, 0x2d, 0x52, 0x98, 0x2e, 0x95, 0xc1, + 0xd2, 0x6f, 0x27, 0x52, 0x98, 0x2e, + 0xd7, 0xc7, 0x2a, 0x25, 0xb0, 0x86, 0xc0, 0x7f, 0xd3, 0x7f, 0xaf, 0x84, 0x29, + 0x50, 0xf1, 0x6f, 0x98, 0x2e, 0x4d, + 0xc8, 0x2a, 0x25, 0xae, 0x8a, 0xaa, 0x88, 0xf2, 0x6e, 0x2b, 0x50, 0xc1, 0x6f, + 0xd3, 0x6f, 0xf4, 0x7f, 0x98, 0x2e, + 0xb6, 0xc8, 0xe0, 0x6e, 0x00, 0xb2, 0x32, 0x2f, 0x33, 0x54, 0x83, 0x86, 0xf1, + 0x6f, 0xc3, 0x7f, 0x04, 0x30, 0x30, + 0x30, 0xf4, 0x7f, 0xd0, 0x7f, 0xb2, 0x7f, 0xe3, 0x30, 0xc5, 0x6f, 0x56, 0x40, + 0x45, 0x41, 0x28, 0x08, 0x03, 0x14, + 0x0e, 0xb4, 0x08, 0xbc, 0x82, 0x40, 0x10, 0x0a, 0x2f, 0x54, 0x26, 0x05, 0x91, + 0x7f, 0x44, 0x28, 0xa3, 0x7f, 0x98, + 0x2e, 0xd9, 0xc0, 0x08, 0xb9, 0x33, 0x30, 0x53, 0x09, 0xc1, 0x6f, 0xd3, 0x6f, + 0xf4, 0x6f, 0x83, 0x17, 0x47, 0x40, + 0x6c, 0x15, 0xb2, 0x6f, 0xbe, 0x09, 0x75, 0x0b, 0x90, 0x42, 0x45, 0x42, 0x51, + 0x0e, 0x32, 0xbc, 0x02, 0x89, 0xa1, + 0x6f, 0x7e, 0x86, 0xf4, 0x7f, 0xd0, 0x7f, 0xb2, 0x7f, 0x04, 0x30, 0x91, 0x6f, + 0xd6, 0x2f, 0xeb, 0x6f, 0xa0, 0x5e, + 0xb8, 0x2e, 0x03, 0x2e, 0x97, 0x00, 0x1b, 0xbc, 0x60, 0x50, 0x9f, 0xbc, 0x0c, + 0xb8, 0xf0, 0x7f, 0x40, 0xb2, 0xeb, + 0x7f, 0x2b, 0x2f, 0x03, 0x2e, 0x7f, 0x00, 0x41, 0x40, 0x01, 0x2e, 0xc8, 0x00, + 0x01, 0x1a, 0x11, 0x2f, 0x37, 0x58, + 0x23, 0x2e, 0xc8, 0x00, 0x10, 0x41, 0xa0, 0x7f, 0x38, 0x81, 0x01, 0x41, 0xd0, + 0x7f, 0xb1, 0x7f, 0x98, 0x2e, 0x64, + 0xcf, 0xd0, 0x6f, 0x07, 0x80, 0xa1, 0x6f, 0x11, 0x42, 0x00, 0x2e, 0xb1, 0x6f, + 0x01, 0x42, 0x11, 0x30, 0x01, 0x2e, + 0xfc, 0x00, 0x00, 0xa8, 0x03, 0x30, 0xcb, 0x22, 0x4a, 0x25, 0x01, 0x2e, 0x7f, + 0x00, 0x3c, 0x89, 0x35, 0x52, 0x05, + 0x54, 0x98, 0x2e, 0xc4, 0xce, 0xc1, 0x6f, 0xf0, 0x6f, 0x98, 0x2e, 0x95, 0xcf, + 0x04, 0x2d, 0x01, 0x30, 0xf0, 0x6f, + 0x98, 0x2e, 0x95, 0xcf, 0xeb, 0x6f, 0xa0, 0x5f, 0xb8, 0x2e, 0x03, 0x2e, 0xb3, + 0x00, 0x02, 0x32, 0xf0, 0x30, 0x03, + 0x31, 0x30, 0x50, 0x8a, 0x08, 0x08, 0x08, 0xcb, 0x08, 0xe0, 0x7f, 0x80, 0xb2, + 0xf3, 0x7f, 0xdb, 0x7f, 0x25, 0x2f, + 0x03, 0x2e, 0xca, 0x00, 0x41, 0x90, 0x04, 0x2f, 0x01, 0x30, 0x23, 0x2e, 0xca, + 0x00, 0x98, 0x2e, 0x3f, 0x03, 0xc0, + 0xb2, 0x05, 0x2f, 0x03, 0x2e, 0xda, 0x00, 0x00, 0x30, 0x41, 0x04, 0x23, 0x2e, + 0xda, 0x00, 0x98, 0x2e, 0x92, 0xb2, + 0x10, 0x25, 0xf0, 0x6f, 0x00, 0xb2, 0x05, 0x2f, 0x01, 0x2e, 0xda, 0x00, 0x02, + 0x30, 0x10, 0x04, 0x21, 0x2e, 0xda, + 0x00, 0x40, 0xb2, 0x01, 0x2f, 0x23, 0x2e, 0xc8, 0x01, 0xdb, 0x6f, 0xe0, 0x6f, + 0xd0, 0x5f, 0x80, 0x2e, 0x95, 0xcf, + 0x01, 0x30, 0xe0, 0x6f, 0x98, 0x2e, 0x95, 0xcf, 0x11, 0x30, 0x23, 0x2e, 0xca, + 0x00, 0xdb, 0x6f, 0xd0, 0x5f, 0xb8, + 0x2e, 0xd0, 0x50, 0x0a, 0x25, 0x33, 0x84, 0x55, 0x50, 0xd2, 0x7f, 0xe2, 0x7f, + 0x03, 0x8c, 0xc0, 0x7f, 0xbb, 0x7f, + 0x00, 0x30, 0x05, 0x5a, 0x39, 0x54, 0x51, 0x41, 0xa5, 0x7f, 0x96, 0x7f, 0x80, + 0x7f, 0x98, 0x2e, 0xd9, 0xc0, 0x05, + 0x30, 0xf5, 0x7f, 0x20, 0x25, 0x91, 0x6f, 0x3b, 0x58, 0x3d, 0x5c, 0x3b, 0x56, + 0x98, 0x2e, 0x67, 0xcc, 0xc1, 0x6f, + 0xd5, 0x6f, 0x52, 0x40, 0x50, 0x43, 0xc1, 0x7f, 0xd5, 0x7f, 0x10, 0x25, 0x98, + 0x2e, 0xfe, 0xc9, 0x10, 0x25, 0x98, + 0x2e, 0x74, 0xc0, 0x86, 0x6f, 0x30, 0x28, 0x92, 0x6f, 0x82, 0x8c, 0xa5, 0x6f, + 0x6f, 0x52, 0x69, 0x0e, 0x39, 0x54, + 0xdb, 0x2f, 0x19, 0xa0, 0x15, 0x30, 0x03, 0x2f, 0x00, 0x30, 0x21, 0x2e, 0x81, + 0x01, 0x0a, 0x2d, 0x01, 0x2e, 0x81, + 0x01, 0x05, 0x28, 0x42, 0x36, 0x21, 0x2e, 0x81, 0x01, 0x02, 0x0e, 0x01, 0x2f, + 0x98, 0x2e, 0xf3, 0x03, 0x57, 0x50, + 0x12, 0x30, 0x01, 0x40, 0x98, 0x2e, 0xfe, 0xc9, 0x51, 0x6f, 0x0b, 0x5c, 0x8e, + 0x0e, 0x3b, 0x6f, 0x57, 0x58, 0x02, + 0x30, 0x21, 0x2e, 0x95, 0x01, 0x45, 0x6f, 0x2a, 0x8d, 0xd2, 0x7f, 0xcb, 0x7f, + 0x13, 0x2f, 0x02, 0x30, 0x3f, 0x50, + 0xd2, 0x7f, 0xa8, 0x0e, 0x0e, 0x2f, 0xc0, 0x6f, 0x53, 0x54, 0x02, 0x00, 0x51, + 0x54, 0x42, 0x0e, 0x10, 0x30, 0x59, + 0x52, 0x02, 0x30, 0x01, 0x2f, 0x00, 0x2e, 0x03, 0x2d, 0x50, 0x42, 0x42, 0x42, + 0x12, 0x30, 0xd2, 0x7f, 0x80, 0xb2, + 0x03, 0x2f, 0x00, 0x30, 0x21, 0x2e, 0x80, 0x01, 0x12, 0x2d, 0x01, 0x2e, 0xc9, + 0x00, 0x02, 0x80, 0x05, 0x2e, 0x80, + 0x01, 0x11, 0x30, 0x91, 0x28, 0x00, 0x40, 0x25, 0x2e, 0x80, 0x01, 0x10, 0x0e, + 0x05, 0x2f, 0x01, 0x2e, 0x7f, 0x01, + 0x01, 0x90, 0x01, 0x2f, 0x98, 0x2e, 0xf3, 0x03, 0x00, 0x2e, 0xa0, 0x41, 0x01, + 0x90, 0xa6, 0x7f, 0x90, 0x2e, 0xe3, + 0xb4, 0x01, 0x2e, 0x95, 0x01, 0x00, 0xa8, 0x90, 0x2e, 0xe3, 0xb4, 0x5b, 0x54, + 0x95, 0x80, 0x82, 0x40, 0x80, 0xb2, + 0x02, 0x40, 0x2d, 0x8c, 0x3f, 0x52, 0x96, 0x7f, 0x90, 0x2e, 0xc2, 0xb3, 0x29, + 0x0e, 0x76, 0x2f, 0x01, 0x2e, 0xc9, + 0x00, 0x00, 0x40, 0x81, 0x28, 0x45, 0x52, 0xb3, 0x30, 0x98, 0x2e, 0x0f, 0xca, + 0x5d, 0x54, 0x80, 0x7f, 0x00, 0x2e, + 0xa1, 0x40, 0x72, 0x7f, 0x82, 0x80, 0x82, 0x40, 0x60, 0x7f, 0x98, 0x2e, 0xfe, + 0xc9, 0x10, 0x25, 0x98, 0x2e, 0x74, + 0xc0, 0x62, 0x6f, 0x05, 0x30, 0x87, 0x40, 0xc0, 0x91, 0x04, 0x30, 0x05, 0x2f, + 0x05, 0x2e, 0x83, 0x01, 0x80, 0xb2, + 0x14, 0x30, 0x00, 0x2f, 0x04, 0x30, 0x05, 0x2e, 0xc9, 0x00, 0x73, 0x6f, 0x81, + 0x40, 0xe2, 0x40, 0x69, 0x04, 0x11, + 0x0f, 0xe1, 0x40, 0x16, 0x30, 0xfe, 0x29, 0xcb, 0x40, 0x02, 0x2f, 0x83, 0x6f, + 0x83, 0x0f, 0x22, 0x2f, 0x47, 0x56, + 0x13, 0x0f, 0x12, 0x30, 0x77, 0x2f, 0x49, 0x54, 0x42, 0x0e, 0x12, 0x30, 0x73, + 0x2f, 0x00, 0x91, 0x0a, 0x2f, 0x01, + 0x2e, 0x8b, 0x01, 0x19, 0xa8, 0x02, 0x30, 0x6c, 0x2f, 0x63, 0x50, 0x00, 0x2e, + 0x17, 0x42, 0x05, 0x42, 0x68, 0x2c, + 0x12, 0x30, 0x0b, 0x25, 0x08, 0x0f, 0x50, 0x30, 0x02, 0x2f, 0x21, 0x2e, 0x83, + 0x01, 0x03, 0x2d, 0x40, 0x30, 0x21, + 0x2e, 0x83, 0x01, 0x2b, 0x2e, 0x85, 0x01, 0x5a, 0x2c, 0x12, 0x30, 0x00, 0x91, + 0x2b, 0x25, 0x04, 0x2f, 0x63, 0x50, + 0x02, 0x30, 0x17, 0x42, 0x17, 0x2c, 0x02, 0x42, 0x98, 0x2e, 0xfe, 0xc9, 0x10, + 0x25, 0x98, 0x2e, 0x74, 0xc0, 0x05, + 0x2e, 0xc9, 0x00, 0x81, 0x84, 0x5b, 0x30, 0x82, 0x40, 0x37, 0x2e, 0x83, 0x01, + 0x02, 0x0e, 0x07, 0x2f, 0x5f, 0x52, + 0x40, 0x30, 0x62, 0x40, 0x41, 0x40, 0x91, 0x0e, 0x01, 0x2f, 0x21, 0x2e, 0x83, + 0x01, 0x05, 0x30, 0x2b, 0x2e, 0x85, + 0x01, 0x12, 0x30, 0x36, 0x2c, 0x16, 0x30, 0x15, 0x25, 0x81, 0x7f, 0x98, 0x2e, + 0xfe, 0xc9, 0x10, 0x25, 0x98, 0x2e, + 0x74, 0xc0, 0x19, 0xa2, 0x16, 0x30, 0x15, 0x2f, 0x05, 0x2e, 0x97, 0x01, 0x80, + 0x6f, 0x82, 0x0e, 0x05, 0x2f, 0x01, + 0x2e, 0x86, 0x01, 0x06, 0x28, 0x21, 0x2e, 0x86, 0x01, 0x0b, 0x2d, 0x03, 0x2e, + 0x87, 0x01, 0x5f, 0x54, 0x4e, 0x28, + 0x91, 0x42, 0x00, 0x2e, 0x82, 0x40, 0x90, 0x0e, 0x01, 0x2f, 0x21, 0x2e, 0x88, + 0x01, 0x02, 0x30, 0x13, 0x2c, 0x05, + 0x30, 0xc0, 0x6f, 0x08, 0x1c, 0xa8, 0x0f, 0x16, 0x30, 0x05, 0x30, 0x5b, 0x50, + 0x09, 0x2f, 0x02, 0x80, 0x2d, 0x2e, + 0x82, 0x01, 0x05, 0x42, 0x05, 0x80, 0x00, 0x2e, 0x02, 0x42, 0x3e, 0x80, 0x00, + 0x2e, 0x06, 0x42, 0x02, 0x30, 0x90, + 0x6f, 0x3e, 0x88, 0x01, 0x40, 0x04, 0x41, 0x4c, 0x28, 0x01, 0x42, 0x07, 0x80, + 0x10, 0x25, 0x24, 0x40, 0x00, 0x40, + 0x00, 0xa8, 0xf5, 0x22, 0x23, 0x29, 0x44, 0x42, 0x7a, 0x82, 0x7e, 0x88, 0x43, + 0x40, 0x04, 0x41, 0x00, 0xab, 0xf5, + 0x23, 0xdf, 0x28, 0x43, 0x42, 0xd9, 0xa0, 0x14, 0x2f, 0x00, 0x90, 0x02, 0x2f, + 0xd2, 0x6f, 0x81, 0xb2, 0x05, 0x2f, + 0x63, 0x54, 0x06, 0x28, 0x90, 0x42, 0x85, 0x42, 0x09, 0x2c, 0x02, 0x30, 0x5b, + 0x50, 0x03, 0x80, 0x29, 0x2e, 0x7e, + 0x01, 0x2b, 0x2e, 0x82, 0x01, 0x05, 0x42, 0x12, 0x30, 0x2b, 0x2e, 0x83, 0x01, + 0x45, 0x82, 0x00, 0x2e, 0x40, 0x40, + 0x7a, 0x82, 0x02, 0xa0, 0x08, 0x2f, 0x63, 0x50, 0x3b, 0x30, 0x15, 0x42, 0x05, + 0x42, 0x37, 0x80, 0x37, 0x2e, 0x7e, + 0x01, 0x05, 0x42, 0x12, 0x30, 0x01, 0x2e, 0xc9, 0x00, 0x02, 0x8c, 0x40, 0x40, + 0x84, 0x41, 0x7a, 0x8c, 0x04, 0x0f, + 0x03, 0x2f, 0x01, 0x2e, 0x8b, 0x01, 0x19, 0xa4, 0x04, 0x2f, 0x2b, 0x2e, 0x82, + 0x01, 0x98, 0x2e, 0xf3, 0x03, 0x12, + 0x30, 0x81, 0x90, 0x61, 0x52, 0x08, 0x2f, 0x65, 0x42, 0x65, 0x42, 0x43, 0x80, + 0x39, 0x84, 0x82, 0x88, 0x05, 0x42, + 0x45, 0x42, 0x85, 0x42, 0x05, 0x43, 0x00, 0x2e, 0x80, 0x41, 0x00, 0x90, 0x90, + 0x2e, 0xe1, 0xb4, 0x65, 0x54, 0xc1, + 0x6f, 0x80, 0x40, 0x00, 0xb2, 0x43, 0x58, 0x69, 0x50, 0x44, 0x2f, 0x55, 0x5c, + 0xb7, 0x87, 0x8c, 0x0f, 0x0d, 0x2e, + 0x96, 0x01, 0xc4, 0x40, 0x36, 0x2f, 0x41, 0x56, 0x8b, 0x0e, 0x2a, 0x2f, 0x0b, + 0x52, 0xa1, 0x0e, 0x0a, 0x2f, 0x05, + 0x2e, 0x8f, 0x01, 0x14, 0x25, 0x98, 0x2e, 0xfe, 0xc9, 0x4b, 0x54, 0x02, 0x0f, + 0x69, 0x50, 0x05, 0x30, 0x65, 0x54, + 0x15, 0x2f, 0x03, 0x2e, 0x8e, 0x01, 0x4d, 0x5c, 0x8e, 0x0f, 0x3a, 0x2f, 0x05, + 0x2e, 0x8f, 0x01, 0x98, 0x2e, 0xfe, + 0xc9, 0x4f, 0x54, 0x82, 0x0f, 0x05, 0x30, 0x69, 0x50, 0x65, 0x54, 0x30, 0x2f, + 0x6d, 0x52, 0x15, 0x30, 0x42, 0x8c, + 0x45, 0x42, 0x04, 0x30, 0x2b, 0x2c, 0x84, 0x43, 0x6b, 0x52, 0x42, 0x8c, 0x00, + 0x2e, 0x85, 0x43, 0x15, 0x30, 0x24, + 0x2c, 0x45, 0x42, 0x8e, 0x0f, 0x20, 0x2f, 0x0d, 0x2e, 0x8e, 0x01, 0xb1, 0x0e, + 0x1c, 0x2f, 0x23, 0x2e, 0x8e, 0x01, + 0x1a, 0x2d, 0x0e, 0x0e, 0x17, 0x2f, 0xa1, 0x0f, 0x15, 0x2f, 0x23, 0x2e, 0x8d, + 0x01, 0x13, 0x2d, 0x98, 0x2e, 0x74, + 0xc0, 0x43, 0x54, 0xc2, 0x0e, 0x0a, 0x2f, 0x65, 0x50, 0x04, 0x80, 0x0b, 0x30, + 0x06, 0x82, 0x0b, 0x42, 0x79, 0x80, + 0x41, 0x40, 0x12, 0x30, 0x25, 0x2e, 0x8c, 0x01, 0x01, 0x42, 0x05, 0x30, 0x69, + 0x50, 0x65, 0x54, 0x84, 0x82, 0x43, + 0x84, 0xbe, 0x8c, 0x84, 0x40, 0x86, 0x41, 0x26, 0x29, 0x94, 0x42, 0xbe, 0x8e, + 0xd5, 0x7f, 0x19, 0xa1, 0x43, 0x40, + 0x0b, 0x2e, 0x8c, 0x01, 0x84, 0x40, 0xc7, 0x41, 0x5d, 0x29, 0x27, 0x29, 0x45, + 0x42, 0x84, 0x42, 0xc2, 0x7f, 0x01, + 0x2f, 0xc0, 0xb3, 0x1d, 0x2f, 0x05, 0x2e, 0x94, 0x01, 0x99, 0xa0, 0x01, 0x2f, + 0x80, 0xb3, 0x13, 0x2f, 0x80, 0xb3, + 0x18, 0x2f, 0xc0, 0xb3, 0x16, 0x2f, 0x12, 0x40, 0x01, 0x40, 0x92, 0x7f, 0x98, + 0x2e, 0x74, 0xc0, 0x92, 0x6f, 0x10, + 0x0f, 0x20, 0x30, 0x03, 0x2f, 0x10, 0x30, 0x21, 0x2e, 0x7e, 0x01, 0x0a, 0x2d, + 0x21, 0x2e, 0x7e, 0x01, 0x07, 0x2d, + 0x20, 0x30, 0x21, 0x2e, 0x7e, 0x01, 0x03, 0x2d, 0x10, 0x30, 0x21, 0x2e, 0x7e, + 0x01, 0xc2, 0x6f, 0x01, 0x2e, 0xc9, + 0x00, 0xbc, 0x84, 0x02, 0x80, 0x82, 0x40, 0x00, 0x40, 0x90, 0x0e, 0xd5, 0x6f, + 0x02, 0x2f, 0x15, 0x30, 0x98, 0x2e, + 0xf3, 0x03, 0x41, 0x91, 0x05, 0x30, 0x07, 0x2f, 0x67, 0x50, 0x3d, 0x80, 0x2b, + 0x2e, 0x8f, 0x01, 0x05, 0x42, 0x04, + 0x80, 0x00, 0x2e, 0x05, 0x42, 0x02, 0x2c, 0x00, 0x30, 0x00, 0x30, 0xa2, 0x6f, + 0x98, 0x8a, 0x86, 0x40, 0x80, 0xa7, + 0x05, 0x2f, 0x98, 0x2e, 0xf3, 0x03, 0xc0, 0x30, 0x21, 0x2e, 0x95, 0x01, 0x06, + 0x25, 0x1a, 0x25, 0xe2, 0x6f, 0x76, + 0x82, 0x96, 0x40, 0x56, 0x43, 0x51, 0x0e, 0xfb, 0x2f, 0xbb, 0x6f, 0x30, 0x5f, + 0xb8, 0x2e, 0x01, 0x2e, 0xb8, 0x00, + 0x01, 0x31, 0x41, 0x08, 0x40, 0xb2, 0x20, 0x50, 0xf2, 0x30, 0x02, 0x08, 0xfb, + 0x7f, 0x01, 0x30, 0x10, 0x2f, 0x05, + 0x2e, 0xcc, 0x00, 0x81, 0x90, 0xe0, 0x7f, 0x03, 0x2f, 0x23, 0x2e, 0xcc, 0x00, + 0x98, 0x2e, 0x55, 0xb6, 0x98, 0x2e, + 0x1d, 0xb5, 0x10, 0x25, 0xfb, 0x6f, 0xe0, 0x6f, 0xe0, 0x5f, 0x80, 0x2e, 0x95, + 0xcf, 0x98, 0x2e, 0x95, 0xcf, 0x10, + 0x30, 0x21, 0x2e, 0xcc, 0x00, 0xfb, 0x6f, 0xe0, 0x5f, 0xb8, 0x2e, 0x00, 0x51, + 0x05, 0x58, 0xeb, 0x7f, 0x2a, 0x25, + 0x89, 0x52, 0x6f, 0x5a, 0x89, 0x50, 0x13, 0x41, 0x06, 0x40, 0xb3, 0x01, 0x16, + 0x42, 0xcb, 0x16, 0x06, 0x40, 0xf3, + 0x02, 0x13, 0x42, 0x65, 0x0e, 0xf5, 0x2f, 0x05, 0x40, 0x14, 0x30, 0x2c, 0x29, + 0x04, 0x42, 0x08, 0xa1, 0x00, 0x30, + 0x90, 0x2e, 0x52, 0xb6, 0xb3, 0x88, 0xb0, 0x8a, 0xb6, 0x84, 0xa4, 0x7f, 0xc4, + 0x7f, 0xb5, 0x7f, 0xd5, 0x7f, 0x92, + 0x7f, 0x73, 0x30, 0x04, 0x30, 0x55, 0x40, 0x42, 0x40, 0x8a, 0x17, 0xf3, 0x08, + 0x6b, 0x01, 0x90, 0x02, 0x53, 0xb8, + 0x4b, 0x82, 0xad, 0xbe, 0x71, 0x7f, 0x45, 0x0a, 0x09, 0x54, 0x84, 0x7f, 0x98, + 0x2e, 0xd9, 0xc0, 0xa3, 0x6f, 0x7b, + 0x54, 0xd0, 0x42, 0xa3, 0x7f, 0xf2, 0x7f, 0x60, 0x7f, 0x20, 0x25, 0x71, 0x6f, + 0x75, 0x5a, 0x77, 0x58, 0x79, 0x5c, + 0x75, 0x56, 0x98, 0x2e, 0x67, 0xcc, 0xb1, 0x6f, 0x62, 0x6f, 0x50, 0x42, 0xb1, + 0x7f, 0xb3, 0x30, 0x10, 0x25, 0x98, + 0x2e, 0x0f, 0xca, 0x84, 0x6f, 0x20, 0x29, 0x71, 0x6f, 0x92, 0x6f, 0xa5, 0x6f, + 0x76, 0x82, 0x6a, 0x0e, 0x73, 0x30, + 0x00, 0x30, 0xd0, 0x2f, 0xd2, 0x6f, 0xd1, 0x7f, 0xb4, 0x7f, 0x98, 0x2e, 0x2b, + 0xb7, 0x15, 0xbd, 0x0b, 0xb8, 0x02, + 0x0a, 0xc2, 0x6f, 0xc0, 0x7f, 0x98, 0x2e, 0x2b, 0xb7, 0x15, 0xbd, 0x0b, 0xb8, + 0x42, 0x0a, 0xc0, 0x6f, 0x08, 0x17, + 0x41, 0x18, 0x89, 0x16, 0xe1, 0x18, 0xd0, 0x18, 0xa1, 0x7f, 0x27, 0x25, 0x16, + 0x25, 0x98, 0x2e, 0x79, 0xc0, 0x8b, + 0x54, 0x90, 0x7f, 0xb3, 0x30, 0x82, 0x40, 0x80, 0x90, 0x0d, 0x2f, 0x7d, 0x52, + 0x92, 0x6f, 0x98, 0x2e, 0x0f, 0xca, + 0xb2, 0x6f, 0x90, 0x0e, 0x06, 0x2f, 0x8b, 0x50, 0x14, 0x30, 0x42, 0x6f, 0x51, + 0x6f, 0x14, 0x42, 0x12, 0x42, 0x01, + 0x42, 0x00, 0x2e, 0x31, 0x6f, 0x98, 0x2e, 0x74, 0xc0, 0x41, 0x6f, 0x80, 0x7f, + 0x98, 0x2e, 0x74, 0xc0, 0x82, 0x6f, + 0x10, 0x04, 0x43, 0x52, 0x01, 0x0f, 0x05, 0x2e, 0xcb, 0x00, 0x00, 0x30, 0x04, + 0x30, 0x21, 0x2f, 0x51, 0x6f, 0x43, + 0x58, 0x8c, 0x0e, 0x04, 0x30, 0x1c, 0x2f, 0x85, 0x88, 0x41, 0x6f, 0x04, 0x41, + 0x8c, 0x0f, 0x04, 0x30, 0x16, 0x2f, + 0x84, 0x88, 0x00, 0x2e, 0x04, 0x41, 0x04, 0x05, 0x8c, 0x0e, 0x04, 0x30, 0x0f, + 0x2f, 0x82, 0x88, 0x31, 0x6f, 0x04, + 0x41, 0x04, 0x05, 0x8c, 0x0e, 0x04, 0x30, 0x08, 0x2f, 0x83, 0x88, 0x00, 0x2e, + 0x04, 0x41, 0x8c, 0x0f, 0x04, 0x30, + 0x02, 0x2f, 0x21, 0x2e, 0xad, 0x01, 0x14, 0x30, 0x00, 0x91, 0x14, 0x2f, 0x03, + 0x2e, 0xa1, 0x01, 0x41, 0x90, 0x0e, + 0x2f, 0x03, 0x2e, 0xad, 0x01, 0x14, 0x30, 0x4c, 0x28, 0x23, 0x2e, 0xad, 0x01, + 0x46, 0xa0, 0x06, 0x2f, 0x81, 0x84, + 0x8d, 0x52, 0x48, 0x82, 0x82, 0x40, 0x21, 0x2e, 0xa1, 0x01, 0x42, 0x42, 0x5c, + 0x2c, 0x02, 0x30, 0x05, 0x2e, 0xaa, + 0x01, 0x80, 0xb2, 0x02, 0x30, 0x55, 0x2f, 0x03, 0x2e, 0xa9, 0x01, 0x92, 0x6f, + 0xb3, 0x30, 0x98, 0x2e, 0x0f, 0xca, + 0xb2, 0x6f, 0x90, 0x0f, 0x00, 0x30, 0x02, 0x30, 0x4a, 0x2f, 0xa2, 0x6f, 0x87, + 0x52, 0x91, 0x00, 0x85, 0x52, 0x51, + 0x0e, 0x02, 0x2f, 0x00, 0x2e, 0x43, 0x2c, 0x02, 0x30, 0xc2, 0x6f, 0x7f, 0x52, + 0x91, 0x0e, 0x02, 0x30, 0x3c, 0x2f, + 0x51, 0x6f, 0x81, 0x54, 0x98, 0x2e, 0xfe, 0xc9, 0x10, 0x25, 0xb3, 0x30, 0x21, + 0x25, 0x98, 0x2e, 0x0f, 0xca, 0x32, + 0x6f, 0xc0, 0x7f, 0xb3, 0x30, 0x12, 0x25, 0x98, 0x2e, 0x0f, 0xca, 0x42, 0x6f, + 0xb0, 0x7f, 0xb3, 0x30, 0x12, 0x25, + 0x98, 0x2e, 0x0f, 0xca, 0xb2, 0x6f, 0x90, 0x28, 0x83, 0x52, 0x98, 0x2e, 0xfe, + 0xc9, 0xc2, 0x6f, 0x90, 0x0f, 0x00, + 0x30, 0x02, 0x30, 0x1d, 0x2f, 0x05, 0x2e, 0xa1, 0x01, 0x80, 0xb2, 0x12, 0x30, + 0x0f, 0x2f, 0x42, 0x6f, 0x03, 0x2e, + 0xab, 0x01, 0x91, 0x0e, 0x02, 0x30, 0x12, 0x2f, 0x52, 0x6f, 0x03, 0x2e, 0xac, + 0x01, 0x91, 0x0f, 0x02, 0x30, 0x0c, + 0x2f, 0x21, 0x2e, 0xaa, 0x01, 0x0a, 0x2c, 0x12, 0x30, 0x03, 0x2e, 0xcb, 0x00, + 0x8d, 0x58, 0x08, 0x89, 0x41, 0x40, + 0x11, 0x43, 0x00, 0x43, 0x25, 0x2e, 0xa1, 0x01, 0xd4, 0x6f, 0x8f, 0x52, 0x00, + 0x43, 0x3a, 0x89, 0x00, 0x2e, 0x10, + 0x43, 0x10, 0x43, 0x61, 0x0e, 0xfb, 0x2f, 0x03, 0x2e, 0xa0, 0x01, 0x11, 0x1a, + 0x02, 0x2f, 0x02, 0x25, 0x21, 0x2e, + 0xa0, 0x01, 0xeb, 0x6f, 0x00, 0x5f, 0xb8, 0x2e, 0x91, 0x52, 0x10, 0x30, 0x02, + 0x30, 0x95, 0x56, 0x52, 0x42, 0x4b, + 0x0e, 0xfc, 0x2f, 0x8d, 0x54, 0x88, 0x82, 0x93, 0x56, 0x80, 0x42, 0x53, 0x42, + 0x40, 0x42, 0x42, 0x86, 0x83, 0x54, + 0xc0, 0x2e, 0xc2, 0x42, 0x00, 0x2e, 0xa3, 0x52, 0x00, 0x51, 0x52, 0x40, 0x47, + 0x40, 0x1a, 0x25, 0x01, 0x2e, 0x97, + 0x00, 0x8f, 0xbe, 0x72, 0x86, 0xfb, 0x7f, 0x0b, 0x30, 0x7c, 0xbf, 0xa5, 0x50, + 0x10, 0x08, 0xdf, 0xba, 0x70, 0x88, + 0xf8, 0xbf, 0xcb, 0x42, 0xd3, 0x7f, 0x6c, 0xbb, 0xfc, 0xbb, 0xc5, 0x0a, 0x90, + 0x7f, 0x1b, 0x7f, 0x0b, 0x43, 0xc0, + 0xb2, 0xe5, 0x7f, 0xb7, 0x7f, 0xa6, 0x7f, 0xc4, 0x7f, 0x90, 0x2e, 0x1c, 0xb7, + 0x07, 0x2e, 0xd2, 0x00, 0xc0, 0xb2, + 0x0b, 0x2f, 0x97, 0x52, 0x01, 0x2e, 0xcd, 0x00, 0x82, 0x7f, 0x98, 0x2e, 0xbb, + 0xcc, 0x0b, 0x30, 0x37, 0x2e, 0xd2, + 0x00, 0x82, 0x6f, 0x90, 0x6f, 0x1a, 0x25, 0x00, 0xb2, 0x8b, 0x7f, 0x14, 0x2f, + 0xa6, 0xbd, 0x25, 0xbd, 0xb6, 0xb9, + 0x2f, 0xb9, 0x80, 0xb2, 0xd4, 0xb0, 0x0c, 0x2f, 0x99, 0x54, 0x9b, 0x56, 0x0b, + 0x30, 0x0b, 0x2e, 0xb1, 0x00, 0xa1, + 0x58, 0x9b, 0x42, 0xdb, 0x42, 0x6c, 0x09, 0x2b, 0x2e, 0xb1, 0x00, 0x8b, 0x42, + 0xcb, 0x42, 0x86, 0x7f, 0x73, 0x84, + 0xa7, 0x56, 0xc3, 0x08, 0x39, 0x52, 0x05, 0x50, 0x72, 0x7f, 0x63, 0x7f, 0x98, + 0x2e, 0xc2, 0xc0, 0xe1, 0x6f, 0x62, + 0x6f, 0xd1, 0x0a, 0x01, 0x2e, 0xcd, 0x00, 0xd5, 0x6f, 0xc4, 0x6f, 0x72, 0x6f, + 0x97, 0x52, 0x9d, 0x5c, 0x98, 0x2e, + 0x06, 0xcd, 0x23, 0x6f, 0x90, 0x6f, 0x99, 0x52, 0xc0, 0xb2, 0x04, 0xbd, 0x54, + 0x40, 0xaf, 0xb9, 0x45, 0x40, 0xe1, + 0x7f, 0x02, 0x30, 0x06, 0x2f, 0xc0, 0xb2, 0x02, 0x30, 0x03, 0x2f, 0x9b, 0x5c, + 0x12, 0x30, 0x94, 0x43, 0x85, 0x43, + 0x03, 0xbf, 0x6f, 0xbb, 0x80, 0xb3, 0x20, 0x2f, 0x06, 0x6f, 0x26, 0x01, 0x16, + 0x6f, 0x6e, 0x03, 0x45, 0x42, 0xc0, + 0x90, 0x29, 0x2e, 0xce, 0x00, 0x9b, 0x52, 0x14, 0x2f, 0x9b, 0x5c, 0x00, 0x2e, + 0x93, 0x41, 0x86, 0x41, 0xe3, 0x04, + 0xae, 0x07, 0x80, 0xab, 0x04, 0x2f, 0x80, 0x91, 0x0a, 0x2f, 0x86, 0x6f, 0x73, + 0x0f, 0x07, 0x2f, 0x83, 0x6f, 0xc0, + 0xb2, 0x04, 0x2f, 0x54, 0x42, 0x45, 0x42, 0x12, 0x30, 0x04, 0x2c, 0x11, 0x30, + 0x02, 0x2c, 0x11, 0x30, 0x11, 0x30, + 0x02, 0xbc, 0x0f, 0xb8, 0xd2, 0x7f, 0x00, 0xb2, 0x0a, 0x2f, 0x01, 0x2e, 0xfc, + 0x00, 0x05, 0x2e, 0xc7, 0x01, 0x10, + 0x1a, 0x02, 0x2f, 0x21, 0x2e, 0xc7, 0x01, 0x03, 0x2d, 0x02, 0x2c, 0x01, 0x30, + 0x01, 0x30, 0xb0, 0x6f, 0x98, 0x2e, + 0x95, 0xcf, 0xd1, 0x6f, 0xa0, 0x6f, 0x98, 0x2e, 0x95, 0xcf, 0xe2, 0x6f, 0x9f, + 0x52, 0x01, 0x2e, 0xce, 0x00, 0x82, + 0x40, 0x50, 0x42, 0x0c, 0x2c, 0x42, 0x42, 0x11, 0x30, 0x23, 0x2e, 0xd2, 0x00, + 0x01, 0x30, 0xb0, 0x6f, 0x98, 0x2e, + 0x95, 0xcf, 0xa0, 0x6f, 0x01, 0x30, 0x98, 0x2e, 0x95, 0xcf, 0x00, 0x2e, 0xfb, + 0x6f, 0x00, 0x5f, 0xb8, 0x2e, 0x83, + 0x86, 0x01, 0x30, 0x00, 0x30, 0x94, 0x40, 0x24, 0x18, 0x06, 0x00, 0x53, 0x0e, + 0x4f, 0x02, 0xf9, 0x2f, 0xb8, 0x2e, + 0xa9, 0x52, 0x00, 0x2e, 0x60, 0x40, 0x41, 0x40, 0x0d, 0xbc, 0x98, 0xbc, 0xc0, + 0x2e, 0x01, 0x0a, 0x0f, 0xb8, 0xab, + 0x52, 0x53, 0x3c, 0x52, 0x40, 0x40, 0x40, 0x4b, 0x00, 0x82, 0x16, 0x26, 0xb9, + 0x01, 0xb8, 0x41, 0x40, 0x10, 0x08, + 0x97, 0xb8, 0x01, 0x08, 0xc0, 0x2e, 0x11, 0x30, 0x01, 0x08, 0x43, 0x86, 0x25, + 0x40, 0x04, 0x40, 0xd8, 0xbe, 0x2c, + 0x0b, 0x22, 0x11, 0x54, 0x42, 0x03, 0x80, 0x4b, 0x0e, 0xf6, 0x2f, 0xb8, 0x2e, + 0x9f, 0x50, 0x10, 0x50, 0xad, 0x52, + 0x05, 0x2e, 0xd3, 0x00, 0xfb, 0x7f, 0x00, 0x2e, 0x13, 0x40, 0x93, 0x42, 0x41, + 0x0e, 0xfb, 0x2f, 0x98, 0x2e, 0xa5, + 0xb7, 0x98, 0x2e, 0x87, 0xcf, 0x01, 0x2e, 0xd9, 0x00, 0x00, 0xb2, 0xfb, 0x6f, + 0x0b, 0x2f, 0x01, 0x2e, 0x69, 0xf7, + 0xb1, 0x3f, 0x01, 0x08, 0x01, 0x30, 0xf0, 0x5f, 0x23, 0x2e, 0xd9, 0x00, 0x21, + 0x2e, 0x69, 0xf7, 0x80, 0x2e, 0x7a, + 0xb7, 0xf0, 0x5f, 0xb8, 0x2e, 0x01, 0x2e, 0xc0, 0xf8, 0x03, 0x2e, 0xfc, 0xf5, + 0x15, 0x54, 0xaf, 0x56, 0x82, 0x08, + 0x0b, 0x2e, 0x69, 0xf7, 0xcb, 0x0a, 0xb1, 0x58, 0x80, 0x90, 0xdd, 0xbe, 0x4c, + 0x08, 0x5f, 0xb9, 0x59, 0x22, 0x80, + 0x90, 0x07, 0x2f, 0x03, 0x34, 0xc3, 0x08, 0xf2, 0x3a, 0x0a, 0x08, 0x02, 0x35, + 0xc0, 0x90, 0x4a, 0x0a, 0x48, 0x22, + 0xc0, 0x2e, 0x23, 0x2e, 0xfc, 0xf5, 0x10, 0x50, 0xfb, 0x7f, 0x98, 0x2e, 0x56, + 0xc7, 0x98, 0x2e, 0x49, 0xc3, 0x10, + 0x30, 0xfb, 0x6f, 0xf0, 0x5f, 0x21, 0x2e, 0xcc, 0x00, 0x21, 0x2e, 0xca, 0x00, + 0xb8, 0x2e, 0x03, 0x2e, 0xd3, 0x00, + 0x16, 0xb8, 0x02, 0x34, 0x4a, 0x0c, 0x21, 0x2e, 0x2d, 0xf5, 0xc0, 0x2e, 0x23, + 0x2e, 0xd3, 0x00, 0x03, 0xbc, 0x21, + 0x2e, 0xd5, 0x00, 0x03, 0x2e, 0xd5, 0x00, 0x40, 0xb2, 0x10, 0x30, 0x21, 0x2e, + 0x77, 0x00, 0x01, 0x30, 0x05, 0x2f, + 0x05, 0x2e, 0xd8, 0x00, 0x80, 0x90, 0x01, 0x2f, 0x23, 0x2e, 0x6f, 0xf5, 0xc0, + 0x2e, 0x21, 0x2e, 0xd9, 0x00, 0x11, + 0x30, 0x81, 0x08, 0x01, 0x2e, 0x6a, 0xf7, 0x71, 0x3f, 0x23, 0xbd, 0x01, 0x08, + 0x02, 0x0a, 0xc0, 0x2e, 0x21, 0x2e, + 0x6a, 0xf7, 0x30, 0x25, 0x00, 0x30, 0x21, 0x2e, 0x5a, 0xf5, 0x10, 0x50, 0x21, + 0x2e, 0x7b, 0x00, 0x21, 0x2e, 0x7c, + 0x00, 0xfb, 0x7f, 0x98, 0x2e, 0xc3, 0xb7, 0x40, 0x30, 0x21, 0x2e, 0xd4, 0x00, + 0xfb, 0x6f, 0xf0, 0x5f, 0x03, 0x25, + 0x80, 0x2e, 0xaf, 0xb7, 0x80, 0x2e, 0x00, 0xc1, 0x80, 0x2e, 0x00, 0xc1, 0x80, + 0x2e, 0x00, 0xc1, 0x80, 0x2e, 0x00, + 0xc1, 0x80, 0x2e, 0x00, 0xc1, 0x80, 0x2e, 0x00, 0xc1, 0x80, 0x2e, 0x00, 0xc1, + 0x80, 0x2e, 0x00, 0xc1, 0x80, 0x2e, + 0x00, 0xc1, 0x80, 0x2e, 0x00, 0xc1, 0x80, 0x2e, 0x00, 0xc1, 0x80, 0x2e, 0x00, + 0xc1, 0x80, 0x2e, 0x00, 0xc1, 0x80, + 0x2e, 0x00, 0xc1, 0x80, 0x2e, 0x00, 0xc1, 0x01, 0x2e, 0x5d, 0xf7, 0x08, 0xbc, + 0x80, 0xac, 0x0e, 0xbb, 0x02, 0x2f, + 0x00, 0x30, 0x41, 0x04, 0x82, 0x06, 0xc0, 0xa4, 0x00, 0x30, 0x11, 0x2f, 0x40, + 0xa9, 0x03, 0x2f, 0x40, 0x91, 0x0d, + 0x2f, 0x00, 0xa7, 0x0b, 0x2f, 0x80, 0xb3, 0xb3, 0x58, 0x02, 0x2f, 0x90, 0xa1, + 0x26, 0x13, 0x20, 0x23, 0x80, 0x90, + 0x10, 0x30, 0x01, 0x2f, 0xcc, 0x0e, 0x00, 0x2f, 0x00, 0x30, 0xb8, 0x2e, 0xb5, + 0x50, 0x18, 0x08, 0x08, 0xbc, 0x88, + 0xb6, 0x0d, 0x17, 0xc6, 0xbd, 0x56, 0xbc, 0xb7, 0x58, 0xda, 0xba, 0x04, 0x01, + 0x1d, 0x0a, 0x10, 0x50, 0x05, 0x30, + 0x32, 0x25, 0x45, 0x03, 0xfb, 0x7f, 0xf6, 0x30, 0x21, 0x25, 0x98, 0x2e, 0x37, + 0xca, 0x16, 0xb5, 0x9a, 0xbc, 0x06, + 0xb8, 0x80, 0xa8, 0x41, 0x0a, 0x0e, 0x2f, 0x80, 0x90, 0x02, 0x2f, 0x2d, 0x50, + 0x48, 0x0f, 0x09, 0x2f, 0xbf, 0xa0, + 0x04, 0x2f, 0xbf, 0x90, 0x06, 0x2f, 0xb7, 0x54, 0xca, 0x0f, 0x03, 0x2f, 0x00, + 0x2e, 0x02, 0x2c, 0xb7, 0x52, 0x2d, + 0x52, 0xf2, 0x33, 0x98, 0x2e, 0xd9, 0xc0, 0xfb, 0x6f, 0xf1, 0x37, 0xc0, 0x2e, + 0x01, 0x08, 0xf0, 0x5f, 0xbf, 0x56, + 0xb9, 0x54, 0xd0, 0x40, 0xc4, 0x40, 0x0b, 0x2e, 0xfd, 0xf3, 0xbf, 0x52, 0x90, + 0x42, 0x94, 0x42, 0x95, 0x42, 0x05, + 0x30, 0xc1, 0x50, 0x0f, 0x88, 0x06, 0x40, 0x04, 0x41, 0x96, 0x42, 0xc5, 0x42, + 0x48, 0xbe, 0x73, 0x30, 0x0d, 0x2e, + 0xd8, 0x00, 0x4f, 0xba, 0x84, 0x42, 0x03, 0x42, 0x81, 0xb3, 0x02, 0x2f, 0x2b, + 0x2e, 0x6f, 0xf5, 0x06, 0x2d, 0x05, + 0x2e, 0x77, 0xf7, 0xbd, 0x56, 0x93, 0x08, 0x25, 0x2e, 0x77, 0xf7, 0xbb, 0x54, + 0x25, 0x2e, 0xc2, 0xf5, 0x07, 0x2e, + 0xfd, 0xf3, 0x42, 0x30, 0xb4, 0x33, 0xda, 0x0a, 0x4c, 0x00, 0x27, 0x2e, 0xfd, + 0xf3, 0x43, 0x40, 0xd4, 0x3f, 0xdc, + 0x08, 0x43, 0x42, 0x00, 0x2e, 0x00, 0x2e, 0x43, 0x40, 0x24, 0x30, 0xdc, 0x0a, + 0x43, 0x42, 0x04, 0x80, 0x03, 0x2e, + 0xfd, 0xf3, 0x4a, 0x0a, 0x23, 0x2e, 0xfd, 0xf3, 0x61, 0x34, 0xc0, 0x2e, 0x01, + 0x42, 0x00, 0x2e, 0x60, 0x50, 0x1a, + 0x25, 0x7a, 0x86, 0xe0, 0x7f, 0xf3, 0x7f, 0x03, 0x25, 0xc3, 0x52, 0x41, 0x84, + 0xdb, 0x7f, 0x33, 0x30, 0x98, 0x2e, + 0x16, 0xc2, 0x1a, 0x25, 0x7d, 0x82, 0xf0, 0x6f, 0xe2, 0x6f, 0x32, 0x25, 0x16, + 0x40, 0x94, 0x40, 0x26, 0x01, 0x85, + 0x40, 0x8e, 0x17, 0xc4, 0x42, 0x6e, 0x03, 0x95, 0x42, 0x41, 0x0e, 0xf4, 0x2f, + 0xdb, 0x6f, 0xa0, 0x5f, 0xb8, 0x2e, + 0xb0, 0x51, 0xfb, 0x7f, 0x98, 0x2e, 0xe8, 0x0d, 0x5a, 0x25, 0x98, 0x2e, 0x0f, + 0x0e, 0xcb, 0x58, 0x32, 0x87, 0xc4, + 0x7f, 0x65, 0x89, 0x6b, 0x8d, 0xc5, 0x5a, 0x65, 0x7f, 0xe1, 0x7f, 0x83, 0x7f, + 0xa6, 0x7f, 0x74, 0x7f, 0xd0, 0x7f, + 0xb6, 0x7f, 0x94, 0x7f, 0x17, 0x30, 0xc7, 0x52, 0xc9, 0x54, 0x51, 0x7f, 0x00, + 0x2e, 0x85, 0x6f, 0x42, 0x7f, 0x00, + 0x2e, 0x51, 0x41, 0x45, 0x81, 0x42, 0x41, 0x13, 0x40, 0x3b, 0x8a, 0x00, 0x40, + 0x4b, 0x04, 0xd0, 0x06, 0xc0, 0xac, + 0x85, 0x7f, 0x02, 0x2f, 0x02, 0x30, 0x51, 0x04, 0xd3, 0x06, 0x41, 0x84, 0x05, + 0x30, 0x5d, 0x02, 0xc9, 0x16, 0xdf, + 0x08, 0xd3, 0x00, 0x8d, 0x02, 0xaf, 0xbc, 0xb1, 0xb9, 0x59, 0x0a, 0x65, 0x6f, + 0x11, 0x43, 0xa1, 0xb4, 0x52, 0x41, + 0x53, 0x41, 0x01, 0x43, 0x34, 0x7f, 0x65, 0x7f, 0x26, 0x31, 0xe5, 0x6f, 0xd4, + 0x6f, 0x98, 0x2e, 0x37, 0xca, 0x32, + 0x6f, 0x75, 0x6f, 0x83, 0x40, 0x42, 0x41, 0x23, 0x7f, 0x12, 0x7f, 0xf6, 0x30, + 0x40, 0x25, 0x51, 0x25, 0x98, 0x2e, + 0x37, 0xca, 0x14, 0x6f, 0x20, 0x05, 0x70, 0x6f, 0x25, 0x6f, 0x69, 0x07, 0xa2, + 0x6f, 0x31, 0x6f, 0x0b, 0x30, 0x04, + 0x42, 0x9b, 0x42, 0x8b, 0x42, 0x55, 0x42, 0x32, 0x7f, 0x40, 0xa9, 0xc3, 0x6f, + 0x71, 0x7f, 0x02, 0x30, 0xd0, 0x40, + 0xc3, 0x7f, 0x03, 0x2f, 0x40, 0x91, 0x15, 0x2f, 0x00, 0xa7, 0x13, 0x2f, 0x00, + 0xa4, 0x11, 0x2f, 0x84, 0xbd, 0x98, + 0x2e, 0x79, 0xca, 0x55, 0x6f, 0xb7, 0x54, 0x54, 0x41, 0x82, 0x00, 0xf3, 0x3f, + 0x45, 0x41, 0xcb, 0x02, 0xf6, 0x30, + 0x98, 0x2e, 0x37, 0xca, 0x35, 0x6f, 0xa4, 0x6f, 0x41, 0x43, 0x03, 0x2c, 0x00, + 0x43, 0xa4, 0x6f, 0x35, 0x6f, 0x17, + 0x30, 0x42, 0x6f, 0x51, 0x6f, 0x93, 0x40, 0x42, 0x82, 0x00, 0x41, 0xc3, 0x00, + 0x03, 0x43, 0x51, 0x7f, 0x00, 0x2e, + 0x94, 0x40, 0x41, 0x41, 0x4c, 0x02, 0xc4, 0x6f, 0xd1, 0x56, 0x63, 0x0e, 0x74, + 0x6f, 0x51, 0x43, 0xa5, 0x7f, 0x8a, + 0x2f, 0x09, 0x2e, 0xd8, 0x00, 0x01, 0xb3, 0x21, 0x2f, 0xcb, 0x58, 0x90, 0x6f, + 0x13, 0x41, 0xb6, 0x6f, 0xe4, 0x7f, + 0x00, 0x2e, 0x91, 0x41, 0x14, 0x40, 0x92, 0x41, 0x15, 0x40, 0x17, 0x2e, 0x6f, + 0xf5, 0xb6, 0x7f, 0xd0, 0x7f, 0xcb, + 0x7f, 0x98, 0x2e, 0x00, 0x0c, 0x07, 0x15, 0xc2, 0x6f, 0x14, 0x0b, 0x29, 0x2e, + 0x6f, 0xf5, 0xc3, 0xa3, 0xc1, 0x8f, + 0xe4, 0x6f, 0xd0, 0x6f, 0xe6, 0x2f, 0x14, 0x30, 0x05, 0x2e, 0x6f, 0xf5, 0x14, + 0x0b, 0x29, 0x2e, 0x6f, 0xf5, 0x18, + 0x2d, 0xcd, 0x56, 0x04, 0x32, 0xb5, 0x6f, 0x1c, 0x01, 0x51, 0x41, 0x52, 0x41, + 0xc3, 0x40, 0xb5, 0x7f, 0xe4, 0x7f, + 0x98, 0x2e, 0x1f, 0x0c, 0xe4, 0x6f, 0x21, 0x87, 0x00, 0x43, 0x04, 0x32, 0xcf, + 0x54, 0x5a, 0x0e, 0xef, 0x2f, 0x15, + 0x54, 0x09, 0x2e, 0x77, 0xf7, 0x22, 0x0b, 0x29, 0x2e, 0x77, 0xf7, 0xfb, 0x6f, + 0x50, 0x5e, 0xb8, 0x2e, 0x10, 0x50, + 0x01, 0x2e, 0xd4, 0x00, 0x00, 0xb2, 0xfb, 0x7f, 0x51, 0x2f, 0x01, 0xb2, 0x48, + 0x2f, 0x02, 0xb2, 0x42, 0x2f, 0x03, + 0x90, 0x56, 0x2f, 0xd7, 0x52, 0x79, 0x80, 0x42, 0x40, 0x81, 0x84, 0x00, 0x40, + 0x42, 0x42, 0x98, 0x2e, 0x93, 0x0c, + 0xd9, 0x54, 0xd7, 0x50, 0xa1, 0x40, 0x98, 0xbd, 0x82, 0x40, 0x3e, 0x82, 0xda, + 0x0a, 0x44, 0x40, 0x8b, 0x16, 0xe3, + 0x00, 0x53, 0x42, 0x00, 0x2e, 0x43, 0x40, 0x9a, 0x02, 0x52, 0x42, 0x00, 0x2e, + 0x41, 0x40, 0x15, 0x54, 0x4a, 0x0e, + 0x3a, 0x2f, 0x3a, 0x82, 0x00, 0x30, 0x41, 0x40, 0x21, 0x2e, 0x85, 0x0f, 0x40, + 0xb2, 0x0a, 0x2f, 0x98, 0x2e, 0xb1, + 0x0c, 0x98, 0x2e, 0x45, 0x0e, 0x98, 0x2e, 0x5b, 0x0e, 0xfb, 0x6f, 0xf0, 0x5f, + 0x00, 0x30, 0x80, 0x2e, 0xce, 0xb7, + 0xdd, 0x52, 0xd3, 0x54, 0x42, 0x42, 0x4f, 0x84, 0x73, 0x30, 0xdb, 0x52, 0x83, + 0x42, 0x1b, 0x30, 0x6b, 0x42, 0x23, + 0x30, 0x27, 0x2e, 0xd7, 0x00, 0x37, 0x2e, 0xd4, 0x00, 0x21, 0x2e, 0xd6, 0x00, + 0x7a, 0x84, 0x17, 0x2c, 0x42, 0x42, + 0x30, 0x30, 0x21, 0x2e, 0xd4, 0x00, 0x12, 0x2d, 0x21, 0x30, 0x00, 0x30, 0x23, + 0x2e, 0xd4, 0x00, 0x21, 0x2e, 0x7b, + 0xf7, 0x0b, 0x2d, 0x17, 0x30, 0x98, 0x2e, 0x51, 0x0c, 0xd5, 0x50, 0x0c, 0x82, + 0x72, 0x30, 0x2f, 0x2e, 0xd4, 0x00, + 0x25, 0x2e, 0x7b, 0xf7, 0x40, 0x42, 0x00, 0x2e, 0xfb, 0x6f, 0xf0, 0x5f, 0xb8, + 0x2e, 0x70, 0x50, 0x0a, 0x25, 0x39, + 0x86, 0xfb, 0x7f, 0xe1, 0x32, 0x62, 0x30, 0x98, 0x2e, 0xc2, 0xc4, 0xb5, 0x56, + 0xa5, 0x6f, 0xab, 0x08, 0x91, 0x6f, + 0x4b, 0x08, 0xdf, 0x56, 0xc4, 0x6f, 0x23, 0x09, 0x4d, 0xba, 0x93, 0xbc, 0x8c, + 0x0b, 0xd1, 0x6f, 0x0b, 0x09, 0xcb, + 0x52, 0xe1, 0x5e, 0x56, 0x42, 0xaf, 0x09, 0x4d, 0xba, 0x23, 0xbd, 0x94, 0x0a, + 0xe5, 0x6f, 0x68, 0xbb, 0xeb, 0x08, + 0xbd, 0xb9, 0x63, 0xbe, 0xfb, 0x6f, 0x52, 0x42, 0xe3, 0x0a, 0xc0, 0x2e, 0x43, + 0x42, 0x90, 0x5f, 0xd1, 0x50, 0x03, + 0x2e, 0x25, 0xf3, 0x13, 0x40, 0x00, 0x40, 0x9b, 0xbc, 0x9b, 0xb4, 0x08, 0xbd, + 0xb8, 0xb9, 0x98, 0xbc, 0xda, 0x0a, + 0x08, 0xb6, 0x89, 0x16, 0xc0, 0x2e, 0x19, 0x00, 0x62, 0x02, 0x10, 0x50, 0xfb, + 0x7f, 0x98, 0x2e, 0x81, 0x0d, 0x01, + 0x2e, 0xd4, 0x00, 0x31, 0x30, 0x08, 0x04, 0xfb, 0x6f, 0x01, 0x30, 0xf0, 0x5f, + 0x23, 0x2e, 0xd6, 0x00, 0x21, 0x2e, + 0xd7, 0x00, 0xb8, 0x2e, 0x01, 0x2e, 0xd7, 0x00, 0x03, 0x2e, 0xd6, 0x00, 0x48, + 0x0e, 0x01, 0x2f, 0x80, 0x2e, 0x1f, + 0x0e, 0xb8, 0x2e, 0xe3, 0x50, 0x21, 0x34, 0x01, 0x42, 0x82, 0x30, 0xc1, 0x32, + 0x25, 0x2e, 0x62, 0xf5, 0x01, 0x00, + 0x22, 0x30, 0x01, 0x40, 0x4a, 0x0a, 0x01, 0x42, 0xb8, 0x2e, 0xe3, 0x54, 0xf0, + 0x3b, 0x83, 0x40, 0xd8, 0x08, 0xe5, + 0x52, 0x83, 0x42, 0x00, 0x30, 0x83, 0x30, 0x50, 0x42, 0xc4, 0x32, 0x27, 0x2e, + 0x64, 0xf5, 0x94, 0x00, 0x50, 0x42, + 0x40, 0x42, 0xd3, 0x3f, 0x84, 0x40, 0x7d, 0x82, 0xe3, 0x08, 0x40, 0x42, 0x83, + 0x42, 0xb8, 0x2e, 0xdd, 0x52, 0x00, + 0x30, 0x40, 0x42, 0x7c, 0x86, 0xb9, 0x52, 0x09, 0x2e, 0x70, 0x0f, 0xbf, 0x54, + 0xc4, 0x42, 0xd3, 0x86, 0x54, 0x40, + 0x55, 0x40, 0x94, 0x42, 0x85, 0x42, 0x21, 0x2e, 0xd7, 0x00, 0x42, 0x40, 0x25, + 0x2e, 0xfd, 0xf3, 0xc0, 0x42, 0x7e, + 0x82, 0x05, 0x2e, 0x7d, 0x00, 0x80, 0xb2, 0x14, 0x2f, 0x05, 0x2e, 0x89, 0x00, + 0x27, 0xbd, 0x2f, 0xb9, 0x80, 0x90, + 0x02, 0x2f, 0x21, 0x2e, 0x6f, 0xf5, 0x0c, 0x2d, 0x07, 0x2e, 0x71, 0x0f, 0x14, + 0x30, 0x1c, 0x09, 0x05, 0x2e, 0x77, + 0xf7, 0xbd, 0x56, 0x47, 0xbe, 0x93, 0x08, 0x94, 0x0a, 0x25, 0x2e, 0x77, 0xf7, + 0xe7, 0x54, 0x50, 0x42, 0x4a, 0x0e, + 0xfc, 0x2f, 0xb8, 0x2e, 0x50, 0x50, 0x02, 0x30, 0x43, 0x86, 0xe5, 0x50, 0xfb, + 0x7f, 0xe3, 0x7f, 0xd2, 0x7f, 0xc0, + 0x7f, 0xb1, 0x7f, 0x00, 0x2e, 0x41, 0x40, 0x00, 0x40, 0x48, 0x04, 0x98, 0x2e, + 0x74, 0xc0, 0x1e, 0xaa, 0xd3, 0x6f, + 0x14, 0x30, 0xb1, 0x6f, 0xe3, 0x22, 0xc0, 0x6f, 0x52, 0x40, 0xe4, 0x6f, 0x4c, + 0x0e, 0x12, 0x42, 0xd3, 0x7f, 0xeb, + 0x2f, 0x03, 0x2e, 0x86, 0x0f, 0x40, 0x90, 0x11, 0x30, 0x03, 0x2f, 0x23, 0x2e, + 0x86, 0x0f, 0x02, 0x2c, 0x00, 0x30, + 0xd0, 0x6f, 0xfb, 0x6f, 0xb0, 0x5f, 0xb8, 0x2e, 0x40, 0x50, 0xf1, 0x7f, 0x0a, + 0x25, 0x3c, 0x86, 0xeb, 0x7f, 0x41, + 0x33, 0x22, 0x30, 0x98, 0x2e, 0xc2, 0xc4, 0xd3, 0x6f, 0xf4, 0x30, 0xdc, 0x09, + 0x47, 0x58, 0xc2, 0x6f, 0x94, 0x09, + 0xeb, 0x58, 0x6a, 0xbb, 0xdc, 0x08, 0xb4, 0xb9, 0xb1, 0xbd, 0xe9, 0x5a, 0x95, + 0x08, 0x21, 0xbd, 0xf6, 0xbf, 0x77, + 0x0b, 0x51, 0xbe, 0xf1, 0x6f, 0xeb, 0x6f, 0x52, 0x42, 0x54, 0x42, 0xc0, 0x2e, + 0x43, 0x42, 0xc0, 0x5f, 0x50, 0x50, + 0xf5, 0x50, 0x31, 0x30, 0x11, 0x42, 0xfb, 0x7f, 0x7b, 0x30, 0x0b, 0x42, 0x11, + 0x30, 0x02, 0x80, 0x23, 0x33, 0x01, + 0x42, 0x03, 0x00, 0x07, 0x2e, 0x80, 0x03, 0x05, 0x2e, 0xd3, 0x00, 0x23, 0x52, + 0xe2, 0x7f, 0xd3, 0x7f, 0xc0, 0x7f, + 0x98, 0x2e, 0xb6, 0x0e, 0xd1, 0x6f, 0x08, 0x0a, 0x1a, 0x25, 0x7b, 0x86, 0xd0, + 0x7f, 0x01, 0x33, 0x12, 0x30, 0x98, + 0x2e, 0xc2, 0xc4, 0xd1, 0x6f, 0x08, 0x0a, 0x00, 0xb2, 0x0d, 0x2f, 0xe3, 0x6f, + 0x01, 0x2e, 0x80, 0x03, 0x51, 0x30, + 0xc7, 0x86, 0x23, 0x2e, 0x21, 0xf2, 0x08, 0xbc, 0xc0, 0x42, 0x98, 0x2e, 0xa5, + 0xb7, 0x00, 0x2e, 0x00, 0x2e, 0xd0, + 0x2e, 0xb0, 0x6f, 0x0b, 0xb8, 0x03, 0x2e, 0x1b, 0x00, 0x08, 0x1a, 0xb0, 0x7f, + 0x70, 0x30, 0x04, 0x2f, 0x21, 0x2e, + 0x21, 0xf2, 0x00, 0x2e, 0x00, 0x2e, 0xd0, 0x2e, 0x98, 0x2e, 0x6d, 0xc0, 0x98, + 0x2e, 0x5d, 0xc0, 0xed, 0x50, 0x98, + 0x2e, 0x44, 0xcb, 0xef, 0x50, 0x98, 0x2e, 0x46, 0xc3, 0xf1, 0x50, 0x98, 0x2e, + 0x53, 0xc7, 0x35, 0x50, 0x98, 0x2e, + 0x64, 0xcf, 0x10, 0x30, 0x98, 0x2e, 0xdc, 0x03, 0x20, 0x26, 0xc0, 0x6f, 0x02, + 0x31, 0x12, 0x42, 0xab, 0x33, 0x0b, + 0x42, 0x37, 0x80, 0x01, 0x30, 0x01, 0x42, 0xf3, 0x37, 0xf7, 0x52, 0xfb, 0x50, + 0x44, 0x40, 0xa2, 0x0a, 0x42, 0x42, + 0x8b, 0x31, 0x09, 0x2e, 0x5e, 0xf7, 0xf9, 0x54, 0xe3, 0x08, 0x83, 0x42, 0x1b, + 0x42, 0x23, 0x33, 0x4b, 0x00, 0xbc, + 0x84, 0x0b, 0x40, 0x33, 0x30, 0x83, 0x42, 0x0b, 0x42, 0xe0, 0x7f, 0xd1, 0x7f, + 0x98, 0x2e, 0x58, 0xb7, 0xd1, 0x6f, + 0x80, 0x30, 0x40, 0x42, 0x03, 0x30, 0xe0, 0x6f, 0xf3, 0x54, 0x04, 0x30, 0x00, + 0x2e, 0x00, 0x2e, 0x01, 0x89, 0x62, + 0x0e, 0xfa, 0x2f, 0x43, 0x42, 0x11, 0x30, 0xfb, 0x6f, 0xc0, 0x2e, 0x01, 0x42, + 0xb0, 0x5f, 0xc1, 0x4a, 0x00, 0x00, + 0x6d, 0x57, 0x00, 0x00, 0x77, 0x8e, 0x00, 0x00, 0xe0, 0xff, 0xff, 0xff, 0xd3, + 0xff, 0xff, 0xff, 0xe5, 0xff, 0xff, + 0xff, 0xee, 0xe1, 0xff, 0xff, 0x7c, 0x13, 0x00, 0x00, 0x46, 0xe6, 0xff, 0xff, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x80, 0x2e, 0x00, 0xc1, 0x80, + 0x2e, 0x00, 0xc1, 0x80, 0x2e, 0x00, 0xc1, 0x80, 0x2e, 0x00, 0xc1, 0x80, 0x2e, + 0x00, 0xc1, 0x80, 0x2e, 0x00, 0xc1, + 0x80, 0x2e, 0x00, 0xc1, 0x80, 0x2e, 0x00, 0xc1, 0x80, 0x2e, 0x00, 0xc1, 0x80, + 0x2e, 0x00, 0xc1, 0x80, 0x2e, 0x00, + 0xc1, 0x80, 0x2e, 0x00, 0xc1, 0x80, 0x2e, 0x00, 0xc1, 0x80, 0x2e, 0x00, 0xc1, + 0x80, 0x2e, 0x00, 0xc1, 0x80, 0x2e, + 0x00, 0xc1, 0x80, 0x2e, 0x00, 0xc1, 0x80, 0x2e, 0x00, 0xc1, 0x80, 0x2e, 0x00, + 0xc1, 0x80, 0x2e, 0x00, 0xc1, 0x80, + 0x2e, 0x00, 0xc1, 0x80, 0x2e, 0x00, 0xc1, 0x80, 0x2e, 0x00, 0xc1, 0x80, 0x2e, + 0x00, 0xc1, 0x80, 0x2e, 0x00, 0xc1, + 0x80, 0x2e, 0x00, 0xc1, 0x80, 0x2e, 0x00, 0xc1, 0x80, 0x2e, 0x00, 0xc1, 0x80, + 0x2e, 0x00, 0xc1, 0x80, 0x2e, 0x00, + 0xc1, 0x80, 0x2e, 0x00, 0xc1, 0x80, 0x2e, 0x00, 0xc1, 0x80, 0x2e, 0x00, 0xc1, + 0x80, 0x2e, 0x00, 0xc1, 0x80, 0x2e, + 0x00, 0xc1, 0x80, 0x2e, 0x00, 0xc1, 0x80, 0x2e, 0x00, 0xc1, 0x80, 0x2e, 0x00, + 0xc1, 0x80, 0x2e, 0x00, 0xc1, 0x80, + 0x2e, 0x00, 0xc1, 0x80, 0x2e, 0x00, 0xc1, 0x80, 0x2e, 0x00, 0xc1, 0x80, 0x2e, + 0x00, 0xc1, 0x80, 0x2e, 0x00, 0xc1, + 0x80, 0x2e, 0x00, 0xc1, 0x80, 0x2e, 0x00, 0xc1, 0x80, 0x2e, 0x00, 0xc1, 0x80, + 0x2e, 0x00, 0xc1, 0x80, 0x2e, 0x00, + 0xc1, 0x80, 0x2e, 0x00, 0xc1, 0x80, 0x2e, 0x00, 0xc1, 0x80, 0x2e, 0x00, 0xc1, + 0x80, 0x2e, 0x00, 0xc1, 0x80, 0x2e, + 0x00, 0xc1, 0x80, 0x2e, 0x00, 0xc1, 0x80, 0x2e, 0x00, 0xc1, 0x80, 0x2e, 0x00, + 0xc1, 0x80, 0x2e, 0x00, 0xc1, 0x80, + 0x2e, 0x00, 0xc1 +}; + +static i2c_master_t bmi270; + +// ----------------------------------------------------------------------------- +// Prototypes +// ----------------------------------------------------------------------------- +static void sparkfun_bmi270_generate_ms_delay(uint32_t period); +static sl_status_t sparkfun_bmi270_reg_write(uint8_t *tx_buffer, + uint32_t tx_len); +static sl_status_t sparkfun_bmi270_reg_read(uint8_t address, + uint8_t *rx_buffer, + uint32_t rx_len); +static sl_status_t sparkfun_bmi270_update_init_ctrl_reg(uint8_t value); +static sl_status_t sparkfun_bmi270_upload_config_file( + const uint8_t *config_data, + uint16_t index, + uint16_t write_len); +static sl_status_t sparkfun_bmi270_write_config_file(void); +static sl_status_t sparkfun_bmi270_check_init_status(void); +static sl_status_t sparkfun_bmi270_enable_features( + bmi270_cfg_data_t *bmi_cfg_data); +static uint8_t sparkfun_bmi270_set_config_acc_value(uint8_t odr, uint8_t bwp, + uint8_t filter); +static sl_status_t sparkfun_bmi270_config_acc(bmi270_cfg_data_t *bmi_cfg_data); +static sl_status_t sparkfun_bmi270_config_acc_range( + bmi270_cfg_data_t *bmi_cfg_data); +static void sparkfun_bmi270_convert_raw_to_acc_meter_per_sec(int16_t *raw_data, + double *acc_data); +static uint8_t sparkfun_bmi270_set_config_gyro_value(uint8_t odr, + uint8_t bwp, + uint8_t noise, + uint8_t filter); +static sl_status_t sparkfun_bmi270_config_gyro(bmi270_cfg_data_t *bmi_cfg_data); +static sl_status_t sparkfun_bmi270_config_gyro_range( + bmi270_cfg_data_t *bmi_cfg_data); +static void sparkfun_bmi270_convert_raw_to_gyro_degree_per_sec( + int16_t *raw_data, + double *gyro_data); + +/******************************************************************************* + * @brief Gives delay in milliseconds + * @param[in] period : value of delay in milliseconds + ******************************************************************************/ +static void sparkfun_bmi270_generate_ms_delay(uint32_t period) +{ + sl_sleeptimer_delay_millisecond(period); +} + +/******************************************************************************* + * @brief Write the register of BMI270 sensor. + * @param[in] write_buffer : write_buffer A pointer to transmit data buffer + * @param[in] length_of_write_buffer : length of a write buffer. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_TRANSMIT on failure. + ******************************************************************************/ +static sl_status_t sparkfun_bmi270_reg_write(uint8_t *tx_buffer, + uint32_t tx_len) +{ + if ((bmi270.handle == NULL) || (NULL == tx_buffer)) { + return SL_STATUS_INVALID_PARAMETER; + } + + if (I2C_MASTER_SUCCESS != i2c_master_write(&bmi270, + tx_buffer, + tx_len)) { + return SL_STATUS_TRANSMIT; + } + + return SL_STATUS_OK; +} + +/******************************************************************************* + * @brief Read the register of BMI270 sensor. + * @param[in] address : Register address. + * @param[in] rx_buffer : A pointer to receive data buffer + * @param[in] rx_len : Data length in number of bytes + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_TRANSMIT on failure. + ******************************************************************************/ +static sl_status_t sparkfun_bmi270_reg_read(uint8_t address, + uint8_t *rx_buffer, + uint32_t rx_len) +{ + if ((bmi270.handle == NULL) || (NULL == rx_buffer)) { + return SL_STATUS_INVALID_PARAMETER; + } + + if (I2C_MASTER_SUCCESS != i2c_master_write_then_read(&bmi270, + &address, + 1, + rx_buffer, + rx_len)) { + return SL_STATUS_TRANSMIT; + } + + return SL_STATUS_OK; +} + +/******************************************************************************* + * @brief Initialized and de-initialized upload of config file in BMI270 sensor. + * @param[in] value : data to be write. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + ******************************************************************************/ +static sl_status_t sparkfun_bmi270_update_init_ctrl_reg(uint8_t value) +{ + sl_status_t status; + uint8_t tx_buffer[2] = { BMI270_INIT_CTRL_REG, value }; + + if (bmi270.handle == NULL) { + return SL_STATUS_INVALID_PARAMETER; + } + + status = sparkfun_bmi270_reg_write(tx_buffer, sizeof(tx_buffer)); + if (SL_STATUS_OK != status) { + return SL_STATUS_FAIL; + } + + return SL_STATUS_OK; +} + +/******************************************************************************* + * @brief Upload configuration file in chunk in BMI270 sensor. + * @param[in] config_data : configuration file array pointer. + * @param[in] index : index of a starting element of a configuration file. + * @param[in] write_len : length of a chunk. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + ******************************************************************************/ +static sl_status_t sparkfun_bmi270_upload_config_file( + const uint8_t *config_data, + uint16_t index, + uint16_t write_len) +{ + sl_status_t status; + uint8_t init_data_addr[2] = { 0 }; + uint8_t tx_buffer[2] = { 0 }; + uint8_t chunk_buffer[write_len + 1]; + + if ((config_data == NULL) || (bmi270.handle == NULL)) { + return SL_STATUS_INVALID_PARAMETER; + } + + /// copy register address in chunk data + chunk_buffer[0] = BMI270_INIT_DATA_REG; + + /// copy chunk data from 1st byte of configuration data buffer + memcpy(&chunk_buffer[1], config_data, write_len); + + /// store 0 to 3 bits of base address of initialized data in first byte + init_data_addr[0] = (uint8_t)((index / 2) & 0x0F); + + /// store 4 to 11 bits of base address of initialized data in second byte + init_data_addr[1] = (uint8_t)((index / 2) >> 4); + + tx_buffer[0] = BMI270_INIT_ADDR_0_REG; + tx_buffer[1] = init_data_addr[0]; + + status = sparkfun_bmi270_reg_write(tx_buffer, sizeof(tx_buffer)); + if (SL_STATUS_OK != status) { + return SL_STATUS_FAIL; + } + + tx_buffer[0] = BMI270_INIT_ADDR_1_REG; + tx_buffer[1] = init_data_addr[1]; + + status = sparkfun_bmi270_reg_write(tx_buffer, sizeof(tx_buffer)); + + if (SL_STATUS_OK != status) { + return SL_STATUS_FAIL; + } else { + /// Burst write configuration file data corresponding to user set length + status = sparkfun_bmi270_reg_write(chunk_buffer, sizeof(chunk_buffer)); + if (SL_STATUS_OK != status) { + return SL_STATUS_FAIL; + } + } + + return SL_STATUS_OK; +} + +/******************************************************************************* + * @brief Start operation to upload config file in BMI270 sensor. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + ******************************************************************************/ +static sl_status_t sparkfun_bmi270_write_config_file(void) +{ + sl_status_t status = SL_STATUS_OK; + uint16_t config_file_index; + uint16_t config_size = sizeof(bmi270_config_file); + + if (bmi270.handle == NULL) { + return SL_STATUS_INVALID_PARAMETER; + } + + /// Write the configuration file + for (config_file_index = 0; config_file_index < config_size; + config_file_index += CHUNK_SIZE) { + status = + sparkfun_bmi270_upload_config_file( + &(bmi270_config_file[config_file_index]), + config_file_index, + CHUNK_SIZE); + + if (status != SL_STATUS_OK) { + break; + } + } + + return status; +} + +/******************************************************************************* + * @brief Check status of BMI270 sensor. + * @param[in] address : Address of register. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + ******************************************************************************/ +static sl_status_t sparkfun_bmi270_check_init_status(void) +{ + sl_status_t status; + uint8_t rx_buffer = 0; + + if (bmi270.handle == NULL) { + return SL_STATUS_INVALID_PARAMETER; + } + + status = + sparkfun_bmi270_reg_read(BMI270_INIT_STATUS_REG, &rx_buffer, + sizeof(rx_buffer)); + + if (SL_STATUS_OK != status) { + return SL_STATUS_FAIL; + } + + if (BMI270_INIT_SUCCESSFUL != rx_buffer) { + return SL_STATUS_FAIL; + } + + return SL_STATUS_OK; +} + +/******************************************************************************* + * @brief Enable feature of BMI270 sensor. + * @param[in] bmi_cfg_data : pointer to store the BMI270 sensor configuration + * data. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + ******************************************************************************/ +static sl_status_t sparkfun_bmi270_enable_features( + bmi270_cfg_data_t *bmi_cfg_data) +{ + sl_status_t status; + uint8_t tx_buffer[2]; + + if ((bmi270.handle == NULL) || (bmi_cfg_data == NULL)) { + return SL_STATUS_INVALID_PARAMETER; + } + + tx_buffer[0] = BMI270_PWR_CTRL_ADDR; + tx_buffer[1] = bmi_cfg_data->enable_features.features; + + status = sparkfun_bmi270_reg_write(tx_buffer, sizeof(tx_buffer)); + if (SL_STATUS_OK != status) { + return SL_STATUS_FAIL; + } + + return SL_STATUS_OK; +} + +/******************************************************************************* + * @brief Set the configuration of accelerometer in one byte. + * @param[in] odr : output data rate value. + * @param[in] bwp : bandwidth value. + * @param[in] filter : filter value. + * @return The following value are returned: + * - \ref one byte. + ******************************************************************************/ +static uint8_t sparkfun_bmi270_set_config_acc_value(uint8_t odr, + uint8_t bwp, + uint8_t filter) +{ + /// Mask to keep only the lower 4 bits + odr = odr & 0x0F; + + /// Mask to keep only the lower 3 bits and shift left by 4 bits + bwp = (bwp & 0x07) << 4; + + /// Mask to keep only the lower 1 bit and shift left by 7 bits + filter = (filter & 0x01) << 7; + + return (odr | bwp | filter); +} + +/******************************************************************************* + * @brief Set the configuration of accelerometer to the BMI270 + * @param[in] bmi_cfg_data : pointer to store the BMI270 sensor configuration + * data. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + ******************************************************************************/ +static sl_status_t sparkfun_bmi270_config_acc(bmi270_cfg_data_t *bmi_cfg_data) +{ + sl_status_t status; + + if ((bmi270.handle == NULL) || (bmi_cfg_data == NULL)) { + return SL_STATUS_INVALID_PARAMETER; + } + + uint8_t config_value = sparkfun_bmi270_set_config_acc_value( + bmi_cfg_data->acc_config.odr, + bmi_cfg_data->acc_config.bw, + bmi_cfg_data->acc_config.filter); + + uint8_t tx_buffer[2] = { BMI270_ACC_CONF_ADDR, config_value }; + + status = sparkfun_bmi270_reg_write(tx_buffer, sizeof(tx_buffer)); + if (SL_STATUS_OK != status) { + return SL_STATUS_FAIL; + } + + return SL_STATUS_OK; +} + +/******************************************************************************* + * @brief Set the range of accelerometer to the BMI270. + * @param[in] bmi_cfg_data : pointer to store the BMI270 sensor configuration + * data. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + ******************************************************************************/ +static sl_status_t sparkfun_bmi270_config_acc_range( + bmi270_cfg_data_t *bmi_cfg_data) +{ + sl_status_t status; + uint8_t tx_buffer[2]; + + if ((bmi270.handle == NULL) || (bmi_cfg_data == NULL)) { + return SL_STATUS_INVALID_PARAMETER; + } + + tx_buffer[0] = BMI270_ACC_RANGE_REG; + tx_buffer[1] = bmi_cfg_data->acc_config.range; + + status = sparkfun_bmi270_reg_write(tx_buffer, sizeof(tx_buffer)); + if (SL_STATUS_OK != status) { + return SL_STATUS_FAIL; + } + + return SL_STATUS_OK; +} + +/******************************************************************************* + * @brief Convert raw int16_t data of accelerometer in double m/s^2 in BMI270 + * sensor. + * @param[in] raw_data : A address of raw data buffer of accelerometer. + * @param[in] acc_data : A address of buffer containing converted reading in + * m/s^2. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + ******************************************************************************/ +static void sparkfun_bmi270_convert_raw_to_acc_meter_per_sec(int16_t *raw_data, + double *acc_data) +{ + bmi270_accel_range_t range = BMI270_ACCEL_RANGE_2G; + double scaling_factor; + + if ((NULL == raw_data) || (NULL == acc_data)) { + return; + } + + switch (range) { + case BMI270_ACCEL_RANGE_2G: + scaling_factor = (2 * GRAVITY_EARTH) / 32768.0; + break; + + case BMI270_ACCEL_RANGE_4G: + scaling_factor = (4 * GRAVITY_EARTH) / 32768.0; + break; + + case BMI270_ACCEL_RANGE_8G: + scaling_factor = (8 * GRAVITY_EARTH) / 32768.0; + break; + + case BMI270_ACCEL_RANGE_16G: + scaling_factor = (16 * GRAVITY_EARTH) / 32768.0; + break; + + default: + scaling_factor = 0; + break; + } + + acc_data[0] = raw_data[0] * scaling_factor; + acc_data[1] = raw_data[1] * scaling_factor; + acc_data[2] = raw_data[2] * scaling_factor; +} + +/******************************************************************************* + * @brief Set the configuration of gyroscope in one byte. + * @param[in] odr : output data rate value. + * @param[in] bwp : bandwidth value. + * @param[in] noise : noise value. + * @param[in] filter : filter value. + * @return The following values are returned: + * - \ref one byte. + ******************************************************************************/ +static uint8_t sparkfun_bmi270_set_config_gyro_value(uint8_t odr, + uint8_t bwp, + uint8_t noise, + uint8_t filter) +{ + /// Mask to keep only the lower 4 bits + odr = odr & 0x0F; + + /// Mask to keep only the lower 2 bits and shift left by 4 bits + bwp = (bwp & 0x03) << 4; + + /// Mask to keep only the lower 1 bit and shift left by 6 bits + noise = (noise & 0x01) << 6; + + /// Mask to keep only the lower 1 bit and shift left by 7 bits + filter = (filter & 0x01) << 7; + + return (odr | bwp | noise | filter); +} + +/******************************************************************************* + * @brief Set the configuration of gyroscope to BMI270. + * @param[in] bmi_cfg_data : pointer to store the BMI270 sensor configuration + * data. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + ******************************************************************************/ +static sl_status_t sparkfun_bmi270_config_gyro(bmi270_cfg_data_t *bmi_cfg_data) +{ + uint8_t tx_buffer[2]; + sl_status_t status; + uint8_t config_value; + + if ((bmi270.handle == NULL) || (bmi_cfg_data == NULL)) { + return SL_STATUS_INVALID_PARAMETER; + } + + config_value = sparkfun_bmi270_set_config_gyro_value( + bmi_cfg_data->gyro_config.odr, + bmi_cfg_data->gyro_config.bw, + bmi_cfg_data->gyro_config.noise, + bmi_cfg_data->gyro_config.filter); + + tx_buffer[0] = BMI270_GYR_CONF_ADDR; + tx_buffer[1] = config_value; + + status = sparkfun_bmi270_reg_write(tx_buffer, sizeof(tx_buffer)); + if (SL_STATUS_OK != status) { + return SL_STATUS_FAIL; + } + + return SL_STATUS_OK; +} + +/******************************************************************************* + * @brief Set the range of gyroscope. + * @param[in] bmi_cfg_data : pointer to store the BMI270 sensor configuration + * data. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + ******************************************************************************/ +static sl_status_t sparkfun_bmi270_config_gyro_range( + bmi270_cfg_data_t *bmi_cfg_data) +{ + sl_status_t status; + uint8_t tx_buffer[2]; + + if ((bmi270.handle == NULL) || (bmi_cfg_data == NULL)) { + return SL_STATUS_INVALID_PARAMETER; + } + + tx_buffer[0] = BMI270_GYRO_RANGE_REG; + tx_buffer[1] = bmi_cfg_data->gyro_config.range; + + status = sparkfun_bmi270_reg_write(tx_buffer, sizeof(tx_buffer)); + if (SL_STATUS_OK != status) { + return SL_STATUS_FAIL; + } + + return SL_STATUS_OK; +} + +/******************************************************************************* + * @brief Convert raw int16_t data of gyroscope in double degree/s in BMI270 + * sensor. + * @param[in] raw_data : A address of raw data buffer of gyroscope. + * @param[in] acc_data : A address of buffer containing converted reading in + * degree/s. + * @return The following values are returned: + * - \ref SL_STATUS_OK on success. + * - \ref SL_STATUS_FAIL on failure. + ******************************************************************************/ +static void sparkfun_bmi270_convert_raw_to_gyro_degree_per_sec( + int16_t *raw_data, + double *gyro_data) +{ + bmi270_gyro_range_t range = BMI270_GYRO_RANGE_2000DPS; + double scaling_factor; + + if ((NULL == raw_data) || (NULL == gyro_data)) { + return; + } + + switch (range) { + case BMI270_GYRO_RANGE_2000DPS: + scaling_factor = 2000.0 / 32768.0; + break; + + case BMI270_GYRO_RANGE_1000DPS: + scaling_factor = 1000.0 / 32768.0; + break; + + case BMI270_GYRO_RANGE_500DPS: + scaling_factor = 500.0 / 32768.0; + break; + + case BMI270_GYRO_RANGE_250DPS: + scaling_factor = 250.0 / 32768.0; + break; + + case BMI270_GYRO_RANGE_125DPS: + scaling_factor = 125.0 / 32768.0; + break; + + default: + scaling_factor = 0; + break; + } + + gyro_data[0] = raw_data[0] * scaling_factor; + gyro_data[1] = raw_data[1] * scaling_factor; + gyro_data[2] = raw_data[2] * scaling_factor; +} + +// ----------------------------------------------------------------------------- +// Public Function +// ----------------------------------------------------------------------------- + +/******************************************************************************* + * Function to initialize and probe BMI270 sensor + ******************************************************************************/ +sl_status_t sparkfun_bmi270_init(bmi270_cfg_data_t *bmi_cfg_data) +{ + sl_status_t status; + + if ((bmi_cfg_data->bmi270_slave_address != BMI270_ADDR) + || (NULL == bmi_cfg_data)) { + return SL_STATUS_INVALID_PARAMETER; + } + + i2c_master_config_t i2c_cfg; + i2c_master_configure_default(&i2c_cfg); + i2c_cfg.speed = I2C_MASTER_SPEED_STANDARD; + i2c_cfg.scl = HAL_PIN_NC; + i2c_cfg.sda = HAL_PIN_NC; + i2c_cfg.addr = bmi_cfg_data->bmi270_slave_address; + +#if (SPARKFUN_BMI270_I2C_UC == 1) + i2c_cfg.speed = SPARKFUN_BMI270_I2C_SPEED_MODE; +#endif + + bmi270.handle = bmi_cfg_data->i2c_instance; + + if (i2c_master_open(&bmi270, &i2c_cfg) == I2C_MASTER_ERROR) { + return SL_STATUS_INITIALIZATION; + } + + /// reset the sensor + status = sparkfun_bmi270_reset(); + if (status != SL_STATUS_OK) { + return SL_STATUS_FAIL; + } + + /// As per data-sheet, need delay >= 2ms to make I2C operational + sparkfun_bmi270_generate_ms_delay(5); + + /// connect a sensor + status = sparkfun_bmi270_is_present(); + if (status != SL_STATUS_OK) { + return SL_STATUS_FAIL; + } + + /// As per data-sheet, need delay >= 450us. + sparkfun_bmi270_generate_ms_delay(1); + + /// disable advance power mode + status = sparkfun_bmi270_update_advance_power_mode(DISABLE_ADV_POWER); + if (status != SL_STATUS_OK) { + return SL_STATUS_FAIL; + } + + /// make sensor ready to load configuration file + status = sparkfun_bmi270_update_init_ctrl_reg(CLR_INIT_CTRL_REG); + if (status != SL_STATUS_OK) { + return SL_STATUS_FAIL; + } + + /// write config file + status = sparkfun_bmi270_write_config_file(); + if (SL_STATUS_OK != status) { + return SL_STATUS_FAIL; + } + + /// config file loaded + status = sparkfun_bmi270_update_init_ctrl_reg(SET_INIT_CTRL_REG); + if (status != SL_STATUS_OK) { + return SL_STATUS_FAIL; + } + + /// As per data-sheet, need delay >= 20us. + sparkfun_bmi270_generate_ms_delay(100); + + /// check initialization status + status = sparkfun_bmi270_check_init_status(); + if (status != SL_STATUS_OK) { + return SL_STATUS_FAIL; + } + + return SL_STATUS_OK; +} + +/******************************************************************************* + * Function to reset bmi270 sensor + ******************************************************************************/ +sl_status_t sparkfun_bmi270_reset(void) +{ + sl_status_t status; + uint8_t tx_buffer[2] = { BMI270_CMD_REG, SOFT_RESET_CMD }; + + if (bmi270.handle == NULL) { + return SL_STATUS_INVALID_PARAMETER; + } + + status = sparkfun_bmi270_reg_write(tx_buffer, sizeof(tx_buffer)); + if (SL_STATUS_OK != status) { + return SL_STATUS_FAIL; + } + + return SL_STATUS_OK; +} + +/******************************************************************************* + * Check presence of BMI270 sensor on I2C bus. + ******************************************************************************/ +sl_status_t sparkfun_bmi270_is_present(void) +{ + sl_status_t status; + uint8_t rx_buffer = 0; + + if (bmi270.handle == NULL) { + return SL_STATUS_INVALID_PARAMETER; + } + + status = sparkfun_bmi270_reg_read(BMI270_CHIP_IDENTIFY_CODE_REG, + &rx_buffer, + sizeof(rx_buffer)); + if (SL_STATUS_OK != status) { + return SL_STATUS_FAIL; + } + + if (BMI270_CHIP_ID != rx_buffer) { + return SL_STATUS_NOT_AVAILABLE; + } + + return SL_STATUS_OK; +} + +/******************************************************************************* + * Function to update advance power mode of bmi270 sensor + ******************************************************************************/ +sl_status_t sparkfun_bmi270_update_advance_power_mode(uint8_t value) +{ + sl_status_t status; + uint8_t tx_buffer[2] = { BMI270_POWER_CFG_REG, value }; + + if (bmi270.handle == NULL) { + return SL_STATUS_INVALID_PARAMETER; + } + + status = sparkfun_bmi270_reg_write(tx_buffer, sizeof(tx_buffer)); + if (SL_STATUS_OK != status) { + return SL_STATUS_FAIL; + } + + return SL_STATUS_OK; +} + +/******************************************************************************* + * Function to enable and configure default features of BMI270 sensor. + ******************************************************************************/ +sl_status_t sparkfun_bmi270_enable_and_config_features( + bmi270_cfg_data_t *bmi_cfg_data) +{ + sl_status_t status; + + if ((bmi270.handle == NULL) || (NULL == bmi_cfg_data)) { + return SL_STATUS_INVALID_PARAMETER; + } + + /// enable features of bmi270 sensor + status = sparkfun_bmi270_enable_features(bmi_cfg_data); + if (SL_STATUS_OK != status) { + return SL_STATUS_FAIL; + } + + /// check whether accelerometer is enabled + if (bmi_cfg_data->enable_features.features & BMI270_FEATURE_ACC) { + /// configure range of accelerometer + status = sparkfun_bmi270_config_acc_range(bmi_cfg_data); + if (SL_STATUS_OK != status) { + return SL_STATUS_FAIL; + } + + /// configure various parameters of accelerometer + status = sparkfun_bmi270_config_acc(bmi_cfg_data); + if (SL_STATUS_OK != status) { + return SL_STATUS_FAIL; + } + } + + /// check whether gyroscope is enabled + if (bmi_cfg_data->enable_features.features & BMI270_FEATURE_GYRO) { + /// configure range of gyroscope + status = sparkfun_bmi270_config_gyro_range(bmi_cfg_data); + if (SL_STATUS_OK != status) { + return SL_STATUS_FAIL; + } + + /// configure various parameters of gyroscope + status = sparkfun_bmi270_config_gyro(bmi_cfg_data); + if (SL_STATUS_OK != status) { + return SL_STATUS_FAIL; + } + } + + return SL_STATUS_OK; +} + +/******************************************************************************* + * Function to read accelerometer reading + ******************************************************************************/ +sl_status_t sparkfun_bmi270_read_acc_reading(bmi270_cfg_data_t *bmi_cfg_data, + double *acc_buffer) +{ + sl_status_t status; + uint8_t raw_acc_buff[6]; /// < basic raw buffer + int16_t raw_acc_buff_conv[3]; /// < converted raw buffer + + if ((bmi270.handle == NULL) || (acc_buffer == NULL) + || (bmi_cfg_data == NULL)) { + return SL_STATUS_INVALID_PARAMETER; + } + + if (bmi_cfg_data->enable_features.features & BMI270_FEATURE_ACC) { + /// Read accelerometer data + status = sparkfun_bmi270_reg_read(BMI270_ACC_X_LSB_ADDR, + raw_acc_buff, + sizeof(raw_acc_buff)); + if (SL_STATUS_OK != status) { + return SL_STATUS_FAIL; + } + + raw_acc_buff_conv[0] = (int16_t)((raw_acc_buff[1] << 8) | raw_acc_buff[0]); + raw_acc_buff_conv[1] = (int16_t)((raw_acc_buff[3] << 8) | raw_acc_buff[2]); + raw_acc_buff_conv[2] = (int16_t)((raw_acc_buff[5] << 8) | raw_acc_buff[4]); + + /// convert raw accelerometer data to meter per second square + sparkfun_bmi270_convert_raw_to_acc_meter_per_sec(raw_acc_buff_conv, + acc_buffer); + } else { + return SL_STATUS_NOT_AVAILABLE; + } + + return SL_STATUS_OK; +} + +/******************************************************************************* + * Function to read gyroscope reading + ******************************************************************************/ +sl_status_t sparkfun_bmi270_read_gyro_reading(bmi270_cfg_data_t *bmi_cfg_data, + double *gyro_buffer) +{ + sl_status_t status; + uint8_t raw_gyro_buff[6]; /// < basic raw buffer + int16_t raw_gyro_buff_conv[3]; /// < converted raw buffer + + if ((bmi270.handle == NULL) || (gyro_buffer == NULL) + || (bmi_cfg_data == NULL)) { + return SL_STATUS_INVALID_PARAMETER; + } + + if (bmi_cfg_data->enable_features.features & BMI270_FEATURE_GYRO) { + /// Read gyroscope data + status = sparkfun_bmi270_reg_read(BMI270_GYR_X_LSB_ADDR, + raw_gyro_buff, + sizeof(raw_gyro_buff)); + if (SL_STATUS_OK != status) { + return SL_STATUS_FAIL; + } + + raw_gyro_buff_conv[0] = + (int16_t)((raw_gyro_buff[1] << 8) | raw_gyro_buff[0]); + raw_gyro_buff_conv[1] = + (int16_t)((raw_gyro_buff[3] << 8) | raw_gyro_buff[2]); + raw_gyro_buff_conv[2] = + (int16_t)((raw_gyro_buff[5] << 8) | raw_gyro_buff[4]); + + /// convert raw gyroscope data to degree per second + sparkfun_bmi270_convert_raw_to_gyro_degree_per_sec(raw_gyro_buff_conv, + gyro_buffer); + } else { + return SL_STATUS_NOT_AVAILABLE; + } + + return SL_STATUS_OK; +} + +/******************************************************************************* + * Function to read temperature reading + ******************************************************************************/ +sl_status_t sparkfun_bmi270_read_temp_reading(bmi270_cfg_data_t *bmi_cfg_data, + double *temperature_reading) +{ + sl_status_t status; + uint8_t raw_temp0; /// < raw data of temperature 0 (LSB) + uint8_t raw_temp1; /// < raw data of temperature 1 (MSB) + int16_t traw; /// < raw data of temperature + + if ((bmi270.handle == NULL) || (temperature_reading == NULL) + || (bmi_cfg_data == NULL)) { + return SL_STATUS_INVALID_PARAMETER; + } + + if ((bmi_cfg_data->enable_features.features & BMI270_FEATURE_TEMP) + || (bmi_cfg_data->enable_features.features & BMI270_FEATURE_GYRO)) { + status = + sparkfun_bmi270_reg_read(BMI270_TEMP0_REG, &raw_temp0, sizeof(raw_temp0)); + if (SL_STATUS_OK != status) { + return SL_STATUS_FAIL; + } + + status = + sparkfun_bmi270_reg_read(BMI270_TEMP1_REG, &raw_temp1, sizeof(raw_temp1)); + if (SL_STATUS_OK != status) { + return SL_STATUS_FAIL; + } + + traw = (int16_t)((raw_temp1 << 8) | raw_temp0); + + *temperature_reading = 23.0 + ((double)traw / 512.0); + } else { + return SL_STATUS_NOT_AVAILABLE; + } + + return SL_STATUS_OK; +} diff --git a/templates.xml b/templates.xml index e07cb47b..0d5179d7 100644 --- a/templates.xml +++ b/templates.xml @@ -14,6 +14,21 @@ + + + + + + + + + + + + + + @@ -59,6 +74,21 @@ + + + + + + + + + + + + + + @@ -89,6 +119,21 @@ + + + + + + + + + + + + + + @@ -134,6 +179,21 @@ + + + + + + + + + + + + + + @@ -373,7 +433,22 @@ - + + + + + + + + + + + + + + + @@ -509,6 +584,21 @@ + + + + + + + + + + + + + + @@ -1544,4 +1634,64 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/third_party_hw_drivers.slce b/third_party_hw_drivers.slce index 2190a591..3e81f036 100644 --- a/third_party_hw_drivers.slce +++ b/third_party_hw_drivers.slce @@ -1,11 +1,11 @@ id: third_party_hw_drivers label: Third Party Hardware Drivers description: > - Third Party Hardware Driver extension for the Gecko SDK Suite -version: 2.0.2 + Third Party Hardware Driver extension for the Gecko and Wiseconnect SDKs. +version: 3.0.0 sdk: id: gecko_sdk - version: 4.4.0 + version: 4.4.3 component_path: - path: "driver/component/drivers/mikroe" - path: "driver/component/drivers/silabs" diff --git a/third_party_hw_drivers.slsdk b/third_party_hw_drivers.slsdk index 29140365..13f02dfa 100644 --- a/third_party_hw_drivers.slsdk +++ b/third_party_hw_drivers.slsdk @@ -1,10 +1,10 @@ # Properties file for Simplicity Studio metadata id=uc.extension.third_party_hw_drivers -version=2.0.2 +version=3.0.0 label=Third Party Hardware Drivers description=Third Party Hardware Drivers prop.file.templatesFile=templates.xml -prop.subLabel=Third\\ Party\\ Hardware\\ Drivers\\ 2.0.2 +prop.subLabel=Third\\ Party\\ Hardware\\ Drivers\\ 3.0.0 diff --git a/utilities/postbuild_profile/wiseconnect_soc.slpb b/utilities/postbuild_profile/wiseconnect_soc.slpb new file mode 100644 index 00000000..b97f8c87 --- /dev/null +++ b/utilities/postbuild_profile/wiseconnect_soc.slpb @@ -0,0 +1,20 @@ +parameters: +- name: "build_dir" +constants: +- name: "project_name" + value: "wiseconnect_soc" +steps: +- task: "create_rps" + input: "{{build_dir}}/{{project_name}}.out" + map: "{{build_dir}}/{{project_name}}.map" + app-version: "1" + output: "{{build_dir}}/{{project_name}}.rps" +- task: "convert" + input: "{{build_dir}}/{{project_name}}.rps" + output: "{{build_dir}}/{{project_name}}.hex" +- task: "convert" + input: "{{build_dir}}/{{project_name}}.rps" + output: "{{build_dir}}/{{project_name}}.s37" +- task: "convert" + input: "{{build_dir}}/{{project_name}}.rps" + output: "{{build_dir}}/{{project_name}}_isp.bin"

    q{#$*MtOjAY#B?SVo+-e@J$_8$DR+42 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 z click Create and Finish and Project should be generated. -![Create_example](image/create_example.png) + - **Third Party Hardware Drivers - SHTC3 - Temp&Hump 9 Click (Mikroe)** example if the BGM220P Explorer Kit is used. + ![Create_example](image/create_example_1.png) + + - **Third Party Hardware Drivers - SHTC3 - Temp&Hump 9 Click (Mikroe) - Si91x** example if the SiWx917 Wi-Fi 6 and Bluetooth LE 8 MB Flash SoC Pro Kit is used. + ![Create_example](image/create_example_2.png) + + Example project creation dialog pops up -> click Create and Finish and Project should be generated. 3. Build and flash this example to the board. ### Start with an empty example project ### -1. Create an "Empty C Project" for the "BGM220 Explorer Kit Board" using Simplicity Studio v5. Use the default project settings. +1. Create an "Empty C Project" for the your board using Simplicity Studio v5. Use the default project settings. 2. Copy the file `app/example/mikroe_temphum9_shtc3/app.c` into the project root folder (overwriting existing file). @@ -47,10 +65,18 @@ You can either create a project based on an example project or start with an emp - Install the following components: + **If the BGM220P Explorer Kit is used:** + - [Services] → [Timers] → [Sleep Timer] - [Services] → [IO Stream] → [IO Stream: USART] → default instance name: vcom - [Application] → [Utility] → [Log] - - [Third Party Hardware Drivers] → [Sensors] → [SHTC3 - Temp&Hump 9 Click (Mikroe)] + - [Third Party Hardware Drivers] → [Sensors] → [SHTC3 - Temp&Hump 9 Click (Mikroe)] → use default configuration + + **If the SiWx917 Wi-Fi 6 and Bluetooth LE 8 MB Flash SoC Pro Kit is used:** + + - [WiSeConnect 3 SDK] → [Device] → [Si91x] → [MCU] → [Service] → [Sleep Timer for Si91x] + - [WiSeConnect 3 SDK] → [Device] → [Si91x] → [MCU] → [Peripheral] → [I2C] → [i2c2] + - [Third Party Hardware Drivers] → [Sensors] → [SHTC3 - Temp&Hump 9 Click (Mikroe)] → use default configuration 4. Install printf float diff --git a/app/documentation/example/mikroe_temphum9_shtc3/image/create_example.png b/app/documentation/example/mikroe_temphum9_shtc3/image/create_example_1.png similarity index 100% rename from app/documentation/example/mikroe_temphum9_shtc3/image/create_example.png rename to app/documentation/example/mikroe_temphum9_shtc3/image/create_example_1.png diff --git a/app/documentation/example/mikroe_temphum9_shtc3/image/create_example_2.png b/app/documentation/example/mikroe_temphum9_shtc3/image/create_example_2.png new file mode 100644 index 0000000000000000000000000000000000000000..75be4a06ecca32b694b143584c2da6efc1599b47 GIT binary patch literal 61379 zcmdqIWmBAA&^`zukl?{BKybI ztRg7_RXh0=1Q9-32+IpYLDk10z8JwmWO#to4`(PSbeDgB(3|GO9#BvhTGC>|Y99Kh zuf71ig^a_fleq2$)|;UkUe_|2$_`HTw!U#83iaNF9N~_e69Od!ll6&y7ROcUi2&`^ zH77PMxaJ69`Eab1n6Cq|;YhIzya|MO9}|qZhX+y6KSxKK#p}SCj)jr+j5Pe3h#-$H z49MDQTx`7Cv^i^SoSI2+iG6vUXVkH{XkOC4cz!&;O}&wX92N2rBK3Q_v*0=vr9enW z{xie_QjgC|Z6f2lxc{!=OS0yzD zQ*-B4^;iU)+NyR`shjWb(OcnbQ2lld*FZNfI&jmhu$U5J_R0CAqOw&}W=gdHGQmE>KucuR%z?`3#T3m;BAicKlX01LeSyw}eC|^`}ikaQf zOK8+#FB8|$kqb1??e4Bv+k$atz9zZ|PoB#~H^VgH7w%HJX)Eq>^7ekG*yqESE=k`g zonU}Z%O|C}S(Qf>#_B(jRrbxWe+6TY@*?5Jwm$tXQ{URm&Y{7wOHal$zo zKdPY4*VG4s!OM5RJy~o;I1mflLJXAVo0@x9F3&>f<9Zc)@$~!nHv?F!S1Oe#UNCu>1
    TlKZ*=qIE;2mmkUMzRM^KwJ@oj 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 literal 0 HcmV?d00001 diff --git a/app/documentation/example/mikroe_water_detect/README.md b/app/documentation/example/mikroe_water_detect/README.md index 1586e49b..25938c2b 100644 --- a/app/documentation/example/mikroe_water_detect/README.md +++ b/app/documentation/example/mikroe_water_detect/README.md @@ -12,15 +12,25 @@ This device can be used as a household flood alarm sensor, or rain detector for - [EFR32xG24 Explorer Kit](https://www.silabs.com/development-tools/wireless/efr32xg24-explorer-kit?tab=overview). -- [Water Detect Click](https://www.mikroe.com/water-detect-click). +- Or [SiWx917 Wi-Fi 6 and Bluetooth LE 8 MB Flash SoC Pro Kit](https://www.silabs.com/development-tools/wireless/wi-fi/siwx917-pk6031a-wifi-6-bluetooth-le-soc-pro-kit) (BRD4002 + BRD4338A) + +- [Water Detect Click](https://www.mikroe.com/water-detect-click) ## Hardware Connection ## -The Water Detect Click board supports MikroBus, so it can connect easily to EFR32xG24 Explorer Kit's MikroBus header. Be sure that the board's 45-degree corner matches the Explorer Kit's 45-degree white line. +- If the EFR32xG24 Explorer Kit is used: + + The Water Detect Click board supports MikroBus, so it can connect easily to EFR32xG24 Explorer Kit's MikroBus header. Be sure that the board's 45-degree corner matches the Explorer Kit's 45-degree white line. + + The hardware connection is shown in the image below: -The hardware connection is shown in the image below: + ![board](image/hardware_connection.png) -![board](image/hardware_connection.png) +- If the SiWx917 Wi-Fi 6 and Bluetooth LE 8 MB Flash SoC Pro Kit is used: + + | Description | BRD4338A GPIO | BRD4002 Breakout Pad | Water Detector Click | + | -------------| ---------------| ---------------------| -------------------- | + | GPIO | GPIO_46 | P24 | INT | ## Setup ## @@ -28,16 +38,22 @@ You can either create a project based on an example project or start with an emp ### Create a project based on an example project ### -1. From the Launcher Home, add the BRD2703A to My Products, click on it, and click on the **EXAMPLE PROJECTS & DEMOS** tab. Find the example project with filter water +1. From the Launcher Home, add your device to My Products, click on it, and click on the **EXAMPLE PROJECTS & DEMOS** tab. Find the example project filtering by *water* + +2. Click **Create** button on the project: -2. Click **Create** button on the **Third Party Hardware Drivers - Water Detect Click (Mikroe)** example. Example project creation dialog pops up -> click Create and Finish and Project should be generated. -![Create_example](image/create_example.png) + - **Third Party Hardware Drivers - Water Detect Click (Mikroe)** example if the EFR32xG24 Explorer Kit is used. + ![Create_example](image/create_example_1.png) + - **Third Party Hardware Drivers - Water Detect Click (Mikroe) - Si91x** example if the SiWx917 Wi-Fi 6 and Bluetooth LE 8 MB Flash SoC Pro Kit is used. + ![Create_example](image/create_example_2.png) + + Example project creation dialog pops up -> click Create and Finish and Project should be generated. 3. Build and flash this example to the board. ### Start with an empty example project ### -1. Create an "Empty C Project" for the "EFR32xG24 Explorer Kit" using Simplicity Studio v5. Use the default project settings. +1. Create an "Empty C Project" for your board using Simplicity Studio v5. Use the default project settings. 2. Copy the file `app/example/mikroe_water_detect/app.c` into the project root folder (overwriting the existing file). @@ -49,11 +65,17 @@ You can either create a project based on an example project or start with an emp - Install the following components: - - **[Services] → [Timers] → [Sleep Timer]** - - **[Services] → [IO Stream] → [IO Stream: USART]** → default instance name: vcom - - **[Application] → [Utility] → [Log]** - - **[Third Party Hardware Drivers] → [Sensors] → [Water Detect Click (Mikroe)]** → use default configuration. - ![config](image/water_detect_config.png) + **If the EFR32xG24 Explorer Kit is used:** + + - [Services] → [Timers] → [Sleep Timer] + - [Services] → [IO Stream] → [IO Stream: USART] → default instance name: vcom + - [Application] → [Utility] → [Log] + - [Third Party Hardware Drivers] → [Sensors] → [Water Detect Click (Mikroe)] → use default configuration + + **If the SiWx917 Wi-Fi 6 and Bluetooth LE 8 MB Flash SoC Pro Kit is used:** + + - [WiSeConnect 3 SDK] → [Device] → [Si91x] → [MCU] → [Service] → [Sleep Timer for Si91x] + - [Third Party Hardware Drivers] → [Sensors] → [Water Detect Click (Mikroe)] → use default configuration 4. Build and flash this example to the board. diff --git a/app/documentation/example/mikroe_water_detect/image/create_example.png b/app/documentation/example/mikroe_water_detect/image/create_example_1.png similarity index 100% rename from app/documentation/example/mikroe_water_detect/image/create_example.png rename to app/documentation/example/mikroe_water_detect/image/create_example_1.png diff --git a/app/documentation/example/mikroe_water_detect/image/create_example_2.png b/app/documentation/example/mikroe_water_detect/image/create_example_2.png new file mode 100644 index 0000000000000000000000000000000000000000..44586b82b8fb019a3df5d4ae7df1b1bf74a7896f GIT binary patch literal 55485 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%0A}- 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 click Create and Finish and Project should be generated. +3. Build and flash this example to the board. + +### Start with an empty example project ### + +1. Create an "Empty C Project" for your board using Simplicity Studio v5. Use the default project settings. + +2. Copy all of the files in the "app/example/silabs_6dof_imu_bmi270/app.c" folder into the project root folder (overwriting the existing file). + +3. Install the software components: + + - Open the *.slcp file in the project. + + - Select the SOFTWARE COMPONENTS tab. + + - Install the following components: + + - **If the "EFR32xG24 Explorer Kit" is used:** + - [Services] → [IO Stream] → [IO Stream: EUSART] → default instance name: vcom + - [Application] → [Utility] → [Log] + - [Application] → [Utility] → [Assert] + - [Platform] → [Driver] → [I2C] → [I2CSPM] → qwiic instance + - [Third Party Hardware Drivers] → [Sensor] → [BMI270 - 6DOF IMU Breakout (Sparkfun)] → use default configuration + + - **If the "SiWx917 Wi-Fi 6 and Bluetooth LE 8 MB Flash SoC Pro Kit" is used** + - [Application] → [Utility] → [Assert] + - [WiSeConnect 3 SDK] → [Device] → [Si91x] → [MCU] → [Peripheral] → [I2C] → [i2c2] + - [Third Party Hardware Drivers] → [Sensor] → [BMI270 - 6DOF IMU Breakout (Sparkfun)] → use default configuration + +4. Install "Printf float" + + - Open Properties of the project. + + - Select C/C++ Build > Settings > Tool Settings > GNU ARM C Linker > General > Check "Printf float". + +5. Build and flash this example to the board. + +**Note:** + +- Make sure that the SDK extension has already been installed. If not, please follow [this documentation](https://github.com/SiliconLabs/third_party_hw_drivers_extension/blob/master/README.md#how-to-add-to-simplicity-studio-ide). + +- SDK Extension must be enabled for the project to install the "BMI270 - 6DOF IMU Breakout (Sparkfun)" component. + +## How It Works # + +After you flash the code and power the connected boards, the application starts running automatically. Use Putty/Tera Term (or another program) to read the values of the serial output. Note that the "EFR32xG24 Explorer Kit" or the "SiWx917 Wi-Fi 6 and Bluetooth LE 8 MB Flash SoC Pro Kit" uses the default baud rate of 115200. + +First, the main program initializes the driver, configs some parameters and checks communication with the bmi270 device. After that, it read the accelerometer, gyroscope and temperature data periodically. There is a periodic timer in the code, which determines the sampling intervals; the default sampling interval rate is 500 ms. If you need more frequent sampling, it is possible to change the value of the macro "READING_INTERVAL_MSEC" in the "app.c" file. The screenshot of the console is shown in the image below: + +![log_output](image/log.png) + +## Report Bugs & Get Support ## + +To report bugs in the Application Examples projects, please create a new "Issue" in the "Issues" section of [third_party_hw_drivers_extension](https://github.com/SiliconLabs/third_party_hw_drivers_extension) repo. Please reference the board, project, and source files associated with the bug, and reference line numbers. If you are proposing a fix, also include information on the proposed fix. Since these examples are provided as-is, there is no guarantee that these examples will be updated to fix these issues. + +Questions and comments related to these examples should be made by creating a new "Issue" in the "Issues" section of [third_party_hw_drivers_extension](https://github.com/SiliconLabs/third_party_hw_drivers_extension) repo. diff --git a/app/documentation/example/sparkfun_6dof_imu_bmi270/image/create_example.png b/app/documentation/example/sparkfun_6dof_imu_bmi270/image/create_example.png new file mode 100644 index 0000000000000000000000000000000000000000..5bef414d24f70cbd2a5910fa084812006c562c02 GIT binary patch literal 71913 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 ?#48<*2FBKOI36=!x%I@L40?!1!~S=hUdW+bS6 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