menu "FabLight Configuration"
######### WLAN ###########
    config WIFI_SSID
        string "WiFi SSID"
        default "myssid"
        help
            SSID (network name) for the example to connect to.

    config WIFI_PASSWORD
        string "WiFi Password"
        default "mypassword"
        help
            WiFi password (WPA or WPA2) for the example to use.

    choice WIFI_SCAN_METHOD
        prompt "scan method"
        default WIFI_FAST_SCAN
        help
            scan method for the esp32 to use

        config WIFI_FAST_SCAN
            bool "fast"
        config WIFI_ALL_CHANNEL_SCAN
            bool "all"
    endchoice

######### MQTT ###########
    config MQTT_URI
        string "MQTT Broker URL"
        default "mqtts://mqtt.eclipseprojects.io:8883"
        help
            URL of an mqtt broker which this example connects to.

    config MQTT_CERTIFICATE_OVERRIDE
        string "MQTT Broker certificate override"
        default ""
        help
            Please leave empty if broker certificate included from a textfile; otherwise fill in a base64 part of PEM
            format certificate

    config MQTT_CERTIFICATE_OVERRIDDEN
        bool
        default y if MQTT_CERTIFICATE_OVERRIDE != ""
    
    config MQTT_USER
        string "MQTT User"
        default "myuser"
        help
            Please leave empty if no Username for MQTT is required.

    config MQTT_PASSWORD
        string "MQTT Password"
        default "mypassword"
        help
            Please leave empty if no Password for MQTT is required.
    
    config MQTT_USE_USERNAME
        bool
        default y if MQTT_USER != ""

######### FABLIGHT ###########
    config FABLIGHT_ID
        int "FabLight ID"
        default 1
        help
            Numerical ID of the FabLight device

    config FABLIGHT_KEEP_STATE
        bool
        default n
        help
            Keep state of LED segments after powerloss
    
    config FABLIGHT_LED_TIMEOUT
        int "FabLight LED Timeout"
        default 120
        help
            Time in seconds, when FabLight clears LEDs on connection loss

######### FABLIGHT LEDS ###########
    config LED_SEGMENT_COUNT
        int "Segment count"
        default 3
        help
            Number of different addressable segments

    config LED_SEGMENT_SIZE
        int "Segment size"
        default 2
        help
            Number of LEDs per segment
    
    config LED_PATTERN_TIME
        int "Pattern time"
        default 3000
        help
            Timebase for the patterns in milliseconds

    config LED_BLINK_COUNT
        int "Blink count"
        default 6
        help
            Number of blinks per pattern

    config LED_LIMIT
        int "Brightness limt"
        default 170 #0xAA
        help
            Brightness limit to prevent overheating of enclosure

######### PINOUT ###########
    config PIN_SEGMENT_DATA_0
        int "Segment data pin 0"
        default 10
        help
            GPIO pin number for the segment 0 data pin
    config PIN_SEGMENT_DATA_1
        int "Segment data pin 1"
        default 11
        help
            GPIO pin number for the segment 1 data pin
    config PIN_SEGMENT_DATA_2
        int "Segment data pin 2"
        default 12
        help
            GPIO pin number for the segment 2 data pin
    config PIN_SEGMENT_DATA_3
        int "Segment data pin 3"
        default 13
        help
            GPIO pin number for the segment 3 data pin
    config PIN_SEGMENT_DATA_4
        int "Segment data pin 4"
        default 14
        help
            GPIO pin number for the segment 4 data pin
    config PIN_SEGMENT_DATA_5
        int "Segment data pin 5"
        default 21
        help
            GPIO pin number for the segment 5 data pin

    config PIN_EXTERNAL_0
        int "IO external 0"
        default 4
        help
            GPIO pin number for the external data pin 0
    config PIN_EXTERNAL_1
        int "IO external 1"
        default 5
        help
            GPIO pin number for the external data pin 1
    config PIN_EXTERNAL_2
        int "IO external 2"
        default 6
        help
            GPIO pin number for the external data pin 2
    config PIN_EXTERNAL_3
        int "IO external 3"
        default 7
        help
            GPIO pin number for the external data pin 3
    config PIN_EXTERNAL_4
        int "IO external 4"
        default 15
        help
            GPIO pin number for the external data pin 4
    config PIN_EXTERNAL_5
        int "IO external 5"
        default 16
        help
            GPIO pin number for the external data pin 5

    config PIN_BUZZER
        int "Buzzer pin"
        default 21
        help
            GPIO pin number for the buzzer

    config PIN_INTERNAL_LED
        int "Internal LED data pin"
        default 48
        help
            GPIO pin number for the internal LED
    
    
endmenu
