Общение с батареями от ноутбука на чипах bq20z

если ты не видишь отличий, программирование не твоё, у тебя фазенда огромная, работы непочатый край, займись благоустройством

укажи мне на них, чтобы я считал что программирование это твое, и не говорил тебе куда идти, при попытке дать мне совет что делать.

или ты назаменял

word(0x0001) на (word)(0x0001)
и
byte(0x10) на (byte)(0x10)

и от этого внезапно код стал

у тебя есть прекрасная возможность показать кто здесь дурак, берёшь скетч первого поста и компилируешь для:

 Nologo ESP32C3 Super Mini, ESP32S3, RP2040, ESP8266, STM32F103 (STM Core) - компилируется

ну не будет компилировать)) это ты называешь

только в отличии от твоей порнографии, мастер йода, достаточно в 110 строке указать явный тип

void ReadSMB(uint16_t comm) {

я честно пытался понять, чем же код от ТС отличается, а оно вон как оказывается.

Вот видишь, два часа всего тебе понадобилось, чтобы разобраться, а вот если бы не пнул тебя в строгом соответствии с “Психологическим Айкидо” Михаила Литвака, не надавил на профнепригодность ты бы решение на гора не выдал, осталось только в железе проверить, работает, как задумывалось @Komandir или нет.
Польза сообществу точно есть!

сравниваем, что там компилятор выдал:
твой код:

. Variables and constants in RAM (global, static), used 29140 / 80192 bytes (36%)
║   SEGMENT  BYTES    DESCRIPTION
╠══ DATA     1504     initialized variables
╠══ RODATA   1444     constants       
╚══ BSS      26192    zeroed variables
. Instruction RAM (IRAM_ATTR, ICACHE_RAM_ATTR), used 60411 / 65536 bytes (92%)
║   SEGMENT  BYTES    DESCRIPTION
╠══ ICACHE   32768    reserved space for flash instruction cache
╚══ IRAM     27643    code in IRAM    
. Code in flash (default, ICACHE_FLASH_ATTR), used 247768 / 1048576 bytes (23%)
║   SEGMENT  BYTES    DESCRIPTION
╚══ IROM     247768   code in flash   

мой код:

. Variables and constants in RAM (global, static), used 29140 / 80192 bytes (36%)
║   SEGMENT  BYTES    DESCRIPTION
╠══ DATA     1504     initialized variables
╠══ RODATA   1444     constants       
╚══ BSS      26192    zeroed variables
. Instruction RAM (IRAM_ATTR, ICACHE_RAM_ATTR), used 60411 / 65536 bytes (92%)
║   SEGMENT  BYTES    DESCRIPTION
╠══ ICACHE   32768    reserved space for flash instruction cache
╚══ IRAM     27643    code in IRAM    
. Code in flash (default, ICACHE_FLASH_ATTR), used 247736 / 1048576 bytes (23%)
║   SEGMENT  BYTES    DESCRIPTION
╚══ IROM     247736   code in flash   

у тебя есть рекурсия однако