Giter Site home page Giter Site logo

dispod's People

Contributors

an-erd avatar

Stargazers

 avatar

Watchers

 avatar

dispod's Issues

Pack data for archiver

To save memory in RAM and to have a more compact output file, packing of data should be used. It seems that the packages for RCS/custom come in the order
1st: RSC Values (cadence)
2nd: Custom Values (GCT, strike)
and in addition every x secs the heartbeat package incl. time.

Strategy to implement:

  • if there's an unused time element in archiver, put in the package.
  • receive RSC values and store in archiver (dispod_archiver_add_RSCValues()) and add to package
  • add custom values and store in archiver (dispod_archiver_add_customValues()), add to package and store in sd card buffer.

Add messages why WiFi failed

When using the device standalone there's no chance to understand why connecting to a WLAN failed. Add either some output on the display and/or a log file on SD card.

Handle WiFi wrong password

If a known SSID is found, but the PWD is wrong, in main.cpp DISPOD_WIFI_INIT_DONE_EVT is done, but DISPOD_WIFI_GOT_IP_EVT is never reached.

Check, which result we receive in this case and how to proceed.

Act on IDLE in running screen

When for a certain configurable time in running screen w/o receiving a BLE packet, leave running screen and go back to status screen.

add version info to device

add a software or other version to device.

  • print during bootup/info page
  • use for OTA version reference

Handle W ( ) BT_APPL: bta_gattc_conn_cback() - cif=1 connected=0 conn_id=1 reason=0x003e

Handle 0x3E Connection Failed to be Established

I (10662) DISPOD_GATTC: ESP_GAP_BLE_SCAN_STOP_COMPLETE_EVT
I (10666) DISPOD_GATTC: stop scan successfully
I (10668) DISPOD_TFT: dispod_screen_task: update display, screen_to_show 1
I (10675) DISPOD_TFT: dispod_screen_task: SCREEN_STATUS
W (11132) BT_APPL: bta_gattc_conn_cback() - cif=1 connected=0 conn_id=1 reason=0x003e
I (11134) DISPOD_GATTC: esp_gattc_cb()
I (11134) DISPOD_GATTC: ESP_GATTC_DISCONNECT_EVT, reason = 62
I (11141) DISPOD_TFT: dispod_screen_task: update display, screen_to_show 1
I (11141) DISPOD_GATTC: esp_gattc_cb()
I (11148) DISPOD_TFT: dispod_screen_task: SCREEN_STATUS
I (11153) DISPOD_GATTC: ESP_GATTC_OPEN_EVT
E (11163) DISPOD_GATTC: open failed, status 133

Handle W ( ) BT_APPL: bta_gattc_conn_cback() - cif=1 connected=0 conn_id=1 reason=0x0008

Handle W (101129) BT_APPL: bta_gattc_conn_cback() - cif=1 connected=0 conn_id=1 reason=0x0008, by automatic rescan/reconnect.

Logs, appeared in SCREEN_RUNNING.

I (26687) DISPOD: DISPOD_GO_TO_RUNNING_SCREEN_EVT
I (26693) DISPOD_TFT: dispod_screen_task: update display, screen_to_show 2
I (26700) DISPOD_TFT: dispod_screen_task: switching from '1' to '2'
I (26707) DISPOD_TFT: dispod_screen_task: SCREEN_RUNNING
I (26786) DISPOD_TFT: drawindicator textwidth 48 for 'Cad', textheight 25
I (26788) DISPOD_TFT: TFT_drawRoundRect x0 220 y0 10 w 29 h 20 r 8
I (26790) DISPOD_TFT: TFT_fillCircle x0 170 y0 20 r 8
I (26797) DISPOD_TFT: drawindicator textwidth 53 for 'GCT', textheight 25
I (26805) DISPOD_TFT: TFT_drawRoundRect x0 160 y0 45 w 66 h 20 r 8
I (26810) DISPOD_TFT: TFT_fillCircle x0 170 y0 55 r 8
I (26820) DISPOD_TFT: updateDisplayWithRunningValues: cad   0 stance   0 strike 0
W (101129) BT_APPL: bta_gattc_conn_cback() - cif=1 connected=0 conn_id=1 reason=0x0008
I (101132) DISPOD_GATTC: esp_gattc_cb()
I (101133) DISPOD_GATTC: ESP_GATTC_DISCONNECT_EVT, reason = 8
I (101139) DISPOD_TFT: dispod_screen_task: update display, screen_to_show 2
I (101139) DISPOD_GATTC: esp_gattc_cb()

Act on IDLE in status screen

When idle in status screen for a certain time, do:

  • first switch of display but wake up if device is moved (IMU)
  • after a period of time in display off, shut down device completly

BLE packages in status screen -> idle
small device movement in status screen -> idle
pick up device, tap, ... -> non idle

continuous reboot after flash

Investigate on and get rid off...

rst:0x10 (RTCWDT_RTC_RESET),boot:0x17 (SPI_FAST_FLASH_BOOT)
flash read err, 1000
ets_main.c 371
ets Jun 8 2016 00:22:57

Clarify: E (106) boot: ota data partition invalid and no factory, will try all partitions

Toolchain path: /opt/xtensa-esp32-elf/bin/xtensa-esp32-elf-gcc
Toolchain version: crosstool-ng-1.22.0-80-g6c4433a5
Compiler version: 5.2.0
Python requirements from C:/msys32/home/AKAEM/esp/esp-idf/requirements.txt are satisfied.
MONITOR
--- idf_monitor on COM6 115200 ---
--- Quit: Ctrl+] | Menu: Ctrl+T | Help: Ctrl+T followed by Ctrl+H ---
ets Jun 8 2016 00:22:57

rst:0x1 (POWERON_RESET),boot:0x17 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:2
load:0x3fff0018,len:4
load:0x3fff001c,len:5916
load:0x40078000,len:8836
load:0x40080400,len:6312
entry 0x40080728
I (28) boot: ESP-IDF v3.3-beta1-dirty 2nd stage bootloader
I (28) boot: compile time 14:44:01
I (28) boot: Enabling RNG early entropy source...
I (34) boot: SPI Speed : 40MHz
I (38) boot: SPI Mode : DIO
I (42) boot: SPI Flash Size : 16MB
I (46) boot: Partition Table:
I (50) boot: ## Label Usage Type ST Offset Length
I (57) boot: 0 nvs WiFi data 01 02 00009000 00005000
I (64) boot: 1 otadata OTA data 01 00 0000e000 00002000
I (72) boot: 2 app0 OTA app 00 10 00010000 00640000
I (79) boot: 3 app1 OTA app 00 11 00650000 00640000
I (87) boot: 4 eeprom Unknown data 01 99 00c90000 00001000
I (94) boot: 5 spiffs Unknown data 01 82 00c91000 0036f000
I (102) boot: End of partition table
E (106) boot: ota data partition invalid and no factory, will try all partitions
I

Check, if no known WiFi available

Use test case to check when no knwon SSID is available. Should be "red" for WiFi and NTP, but BLE, et.c should be available with no RTC.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.