Converting Hex color to uint_16



  • I'm trying to use the fillScreen() method for the LCD, which expects a color in uint_16.

    I'm currently fetching the color as a a HEX via a GET request to a service, which is returning a String value such as "#ff0000"

    I need to convert the string value from the GET request into a uint_16 so that I can set the color.

    uint16_t color = (uint16_t) strtol(http.getString(), NULL, 16);

    Which gives me the error

    cannot convert 'String' to 'const char*' for argument '1' to 'long int strtol(const char*, char**, int)'
    

    Any recommended way to generate the uint_16 color from a HEX string?


  • M5Stack

    @scientiffic Hi, you could use this web tool to convert it



  • Check out W3Schools as they have tables for the multiple colour systems and codes used on the web.

    FF0000 = 255.0.0