Sming - Open Source framework for high efficiency native ESP8266 development

User avatar
By swee
#53207 Hi Guys,

1. I am trying to integrate the UDP-based WiFi transmission C++ code (using the sming framework) with the I2S C code (provided by expressif)

2. I can get them to work individually, but just cannot (at the moment) get both to compile properly.

3. After many hours, I am still not getting it done. There is this error message which I cannot work around. The error output is as follows:

make all
CC app/i2s.c
app/i2s.c: In function 'i2s_init':
app/i2s.c:28:70: error: implicit declaration of function 'rom_i2c_writeReg_Mask' [-Werror=implicit-function-declaration]
#define i2c_writeReg_Mask(block, host_id, reg_add, Msb, Lsb, indata) rom_i2c_writeReg_Mask(block, host_id, reg_add, Msb, Lsb, indata)
^
app/i2s.c:30:59: note: in expansion of macro 'i2c_writeReg_Mask'
#define i2c_writeReg_Mask_def(block, reg_add, indata) i2c_writeReg_Mask(block, block##_hostid, reg_add, reg_add##_msb, reg_add##_lsb, indata)
^
app/i2s.c:195:2: note: in expansion of macro 'i2c_writeReg_Mask_def'
i2c_writeReg_Mask_def(i2c_bbpll, i2c_bbpll_en_audio_clock_out, 1);
^
cc1.exe: all warnings being treated as errors
make: *** [out/build/app/i2s.o] Error 1

3. Essentially, the "rom_i2c_readReg_Mask" is an implicit declaration. But I cannot find any declaration in the original I2S code. The funny thing is that the original I2S code compiles beautifully...

Can anyone shed some light on how to go about resolving this?

Thanks!