Esp8266_deauther: Type issue with DisplayUI font: char to uint8_t

Created on 26 Mar 2018  路  6Comments  路  Source: SpacehuhnTech/esp8266_deauther

In file DisplayUI.h, line 159, I had to change
const char DejaVu_Sans_Mono_12[] PROGMEM = {
to
const uint8_t DejaVu_Sans_Mono_12[] PROGMEM = {
to avoid compliation error:

invalid conversion from 'const char*' to 'const uint8_t* {aka const unsigned char*}' [-fpermissive]

Cheers !

bug

All 6 comments

Same for me, it started to happen after I accepted to update an Adafruit lib in the library manager.

Confirmed by enabling compile log and seeing this:

Multiple libraries were found for "SH1106Wire.h"
 Used: ~/Arduino/libraries/ESP8266_and_ESP32_Oled_Driver_for_SSD1306_display

Applying the same solution makes the error go away and does not seem to affect the UI.

Weird, those are the default types when generating a font and using the library.
Does it fix it when you change it from const char to unsinged const char?

commit 14b99ef should have temporarily fixed that

closing this issue

```Arduino: 1.8.3 (Windows 7), Board: "WEMOS D1 mini, 160 MHz, 80MHz, DIO, 115200, 4M (1M SPIFFS)"

Build options changed, rebuilding all
sketchDisplayUI.cpp: In member function 'void DisplayUI::setupDisplay()':

DisplayUI.cpp:16: error: invalid conversion from 'const uint8_t* {aka const unsigned char}' to 'const char' [-fpermissive]

display.setFont(DejaVu_Sans_Mono_12);

                                  ^

In file included from C:UsersTRUONGANAppDataLocalArduino15packagesdeautherhardwareesp82662.0.0-deautherlibrariesesp8266-oled-ssd1306-3.2.7/SH1106Wire.h:31:0,

             from sketch\A_config.h:7,

             from sketch\Settings.h:8,

             from sketch\DisplayUI.h:10,

             from sketch\DisplayUI.cpp:1:

C:UsersTRUONGANAppDataLocalArduino15packagesdeautherhardwareesp82662.0.0-deautherlibrariesesp8266-oled-ssd1306-3.2.7/OLEDDisplay.h:187:10: error: initializing argument 1 of 'void OLEDDisplay::setFont(const char*)' [-fpermissive]

 void setFont(const char *fontData);

      ^

Multiple libraries were found for "Adafruit_NeoPixel.h"
Used: C:Program FilesArduinolibrariesAdafruit_NeoPixel-master
Not used: C:UsersTRUONGANAppDataLocalArduino15packagesdeautherhardwareesp82662.0.0-deautherlibrariesAdafruit_NeoPixel-1.1.6
Multiple libraries were found for "ArduinoJson.h"
Used: C:UsersTRUONGANAppDataLocalArduino15packagesdeautherhardwareesp82662.0.0-deautherlibrariesArduinoJson
Not used: C:Program FilesArduinolibrariesArduinoJson-master
Multiple libraries were found for "SH1106Wire.h"
Used: C:UsersTRUONGANAppDataLocalArduino15packagesdeautherhardwareesp82662.0.0-deautherlibrariesesp8266-oled-ssd1306-3.2.7
Not used: C:Program FilesArduinolibrariesesp8266-oled-ssd1306-master
Not used: C:Program FilesArduinolibrariesesp8266-oled-ssd1306-master
Not used: C:Program FilesArduinolibrariesesp8266-oled-ssd1306-master
Not used: C:Program FilesArduinolibrariesesp8266-oled-ssd1306-master
Multiple libraries were found for "LinkedList.h"
Used: C:UsersTRUONGANAppDataLocalArduino15packagesdeautherhardwareesp82662.0.0-deautherlibrariesLinkedList
Not used: C:Program FilesArduinolibrariesLinkedList-master
exit status 1
invalid conversion from 'const uint8_t* {aka const unsigned char}' to 'const char' [-fpermissive]

This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences.
```

@vuong244 the fix is in the first comment of this issue, otherwise delete and reinstall the SDK for esp8266deauther from the boards manager.

@vuong244 ba虂c xo虂a display.setFont(DejaVu_Sans_Mono_12); la虁 ok

Was this page helpful?
0 / 5 - 0 ratings

Related issues

tobybear picture tobybear  路  4Comments

lamkeysing92 picture lamkeysing92  路  3Comments

ghost picture ghost  路  4Comments

crazyguy830 picture crazyguy830  路  3Comments

dave0111 picture dave0111  路  3Comments