Why hello_sensor application is battery critical in my board?

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Anonymous
Not applicable

I designed a mainboard for bcm20732s module which provide VCC and GND for 20732s.

I could download application, like hello_sensor, into 20732s, but after running, trace info like this, why battery level is critical? If battery is low, why download process is ok? SMART SDK is 1.1.0.

GPIO_WP:OFF=0

hello_sensor_create()

1.00

GattDB:20be40, 20bf73

hdl:perm:len:maxlen:uuid

0001:02:02:02:2800

01 18

0014:02:02:02:2800

00 18

0015:02:05:05:2803

02 16 00 00 2a

0016:02:10:10:2a00

48 65 6c 6c 6f 00 00 00 00 00 00 00 00 00 00 00

0017:02:05:05:2803

02 18 00 01 2a

0018:02:02:02:2a01

00 02

0028:02:10:10:2800

23 20 56 7c 05 cf 6e b4 c3 41 77 28 51 82 7e 1b

0029:02:13:13:2803

32 2a 00 26 f6 69 91 68 ee c2 be 44 4d b9 5c 3f

2d c3 8a

002a:82:07:07:00

48 65 6c 6c 6f 20 30

002b:0a:02:02:2902

00 00

002c:02:13:13:2803

0a 2d 00 1a 89 07 4a 2f 3b 7e a6 81 44 3f f9 a8

f2 9b 5e

002d:8e:01:01:00

00

004d:02:02:02:2800

0a 18

004e:02:05:05:2803

02 4f 00 29 2a

004f:02:08:08:2a29

42 72 6f 61 64 63 6f 6d

0050:02:05:05:2803

02 51 00 24 2a

0051:02:08:08:2a24

31 32 33 34 00 00 00 00

0052:02:05:05:2803

02 53 00 23 2a

0053:02:08:08:2a23

93 b8 63 80 5f 9f 91 71

0061:02:02:02:2800

0f 18

0062:02:05:05:2803

02 63 00 19 2a

0063:02:01:01:2a19

64

GattDB complete

02 01 06 06 09 48 65 6c 6c 6f 04 0d 00 00 00 03

03 00 00

02 0a 04

bd_addr: 20732a093e41

GPIO1(11)

GPIO0(104)

GPIO14(1003)

GPIO15(20)

GPIO28(2001)

Interrupt mask:0001 0000 0000

GPIO_WP:OFF=0

GPIO_BUTTON1:OFF=0, INT:1

GPIO_LED:OFF=1

GPIO_BAT

GPIO_BUZ:OFF=0

lebat_bat_lvl_hdl:0063

64

Battery level is critical, Shutting down

permission check retCode = 00

00

Battery level: 0/100

Fine Timer(1000 ms, 1/sec, 80 tick)

Normal Timer(1 s, 80 tick)

23 20 56 7c 05 cf 6e b4 c3 41 77 28 51 82 7e 1b

02 01 05 11 07 23 20 56 7c 05 cf 6e b4 c3 41 77

28 51 82 7e 1b 06 09 48 65 6c 6c 6f

BLE_high_un_adv:timer(1)

0 Likes
1 Solution
Anonymous
Not applicable

In your database_init function, your program probably calls blebat_init(). This function actually comprises of four functions (dbinit, config, startmonitoring, pollmonitor), all which are loaded in ROM.

If you want just the message to go away, you can just comment out startmonitoring and pollmonitor.

View solution in original post

5 Replies
Anonymous
Not applicable

furthermore, if I use SMART SDK  V1.0.1, hello_sensor can run and hello_sensor_timeout occur every one sec even if "Battery level is critical, Shutting down" appear.

Why this phenomenon?

0 Likes
Anonymous
Not applicable

In your database_init function, your program probably calls blebat_init(). This function actually comprises of four functions (dbinit, config, startmonitoring, pollmonitor), all which are loaded in ROM.

If you want just the message to go away, you can just comment out startmonitoring and pollmonitor.

Anonymous
Not applicable

mochi,

I have commented out startmonitoring and pollmonitor in v1.1.0, but hello_sensor is still shut down. callback hello_sensor_timeout() isn't invoked periodically which mean that MCU is power off, so startmonitoring and pollmonitor is not key point, I don't care whether the message is disappeared, I want the application running actually.

In v1.0.1, I don't comment out  startmonitoring and pollmonitor, hello_sensor application is still running even if the message appear.

0 Likes
Anonymous
Not applicable

In that case, your module may have the same crystal issue my module has.

May I point you to this thread:

To fix that, I had to change the crystal warm-up time to 5000 instead of 2800 (i think)

Not sure this is the issue, but worth checking of course.


Note that the battery critical message will come up when the GPIO configured for Vbat measurement is not connected to Vbat.

All sample apps use P15 for this function (and the tag board has it this way as well).

0 Likes