

config COMPONENT_MICROPYTHON_ENABLE
	bool "Enbale micropython component"
	default n
	select COMPONENT_KENDRYTE_SDK_ENABLE
	select COMPONENT_DRIVERS_ENABLE
	select COMPONENT_SPIFFS_ENABLE
	select COMPONENT_UTILS_ENABLE

menu "Micropython configurations"
	depends on COMPONENT_MICROPYTHON_ENABLE
	config MAIXPY_GC_HEAP_SIZE
		hex "GC heap size, hex format, MUST be aligned 8 Bytes, default 512kB(0x80000)"
		default 0x80000
	menu "Modules configurations"

		config CANMV_IDE_SUPPORT
			bool "Enable CanMV IDE protocol support"
			default y

		config MAIXPY_THREAD_ENABLE
			bool "Enable _thread module"
			default y
			select FREERTOS_ENABLE
			select STATIC_TASK_CLEAN_UP_ENABLE

		config MAIXPY_NES_ENABLE
			bool "Enable NES emulator"
			default y
		
		config MAIXPY_VIDEO_ENABLE
			bool "Enable video module"
			default y

		config MAIXPY_TOUCH_SCREEN_ENABLE
			bool "Enable touch screen module"
			default y

		choice MAIXPY_TOUCH_SCREEN_DRIVER
			bool "Select touch screen driver"
			default MAIXPY_TOUCH_SCREEN_DRIVER_NS2009
			depends on MAIXPY_TOUCH_SCREEN_ENABLE
			config MAIXPY_TOUCH_SCREEN_DRIVER_NS2009
				bool "Select ns2009 touch screen driver"
			config MAIXPY_TOUCH_SCREEN_DRIVER_FT52XX
				bool "Select ft52xx touch screen driver"
		endchoice

		config MAIXPY_OMV_MINIMUM
			bool "Minimum size OMV function (just disable omv advanced functions )"
			default n
		config MAIXPY_OMV_CONV_YUV_FAST
			bool "Add YUV convert table, speed up convert but more code"
			default n
		config MAIXPY_OMV_DOUBLE_BUFF
			bool "Set double buffer for sensor(camera)"
			default y
		
		config MAIXPY_MIC_ARRAY_ENABLE
			select MIC_ARRAY_ENABLE
			bool "Enable maix.mic_array module"
			default y

		config MAIXPY_LVGL_ENABLE
			bool "Enbale LittlvGL"
			default n
			select MAIXPY_LODEPNG_ENABLE
		config MAIXPY_LODEPNG_ENABLE
			bool "Enable lodepng module"
			default n

		config MAIXPY_WS2812_ENABLE
			bool "Enable Ws2812"
			default n
			select WS2812_ENABLE

		config MAIXPY_HTPA_ENABLE
			bool "Enable HTPA thermal sensor"
			default n
			select HTPA_ENABLE

		config MAIXPY_AMG88XX_ENABLE
			bool "Enable AMG88XX thermal sensor"
			default n
			select AMG88XX_ENABLE

		config MICROPYTHON_ULAB_ENALBE
			bool "Enable ulab module(a numpy-like fast vector module)"
			default y

		config MAIXPY_SPEECH_RECOGNIZER_ENABLE
			bool "Enable Speech Recognizer"
			default n
			select SPEECH_RECOGNIZER_ENABLE
			
		config MICROPY_SSL_ENABLE
			bool "Enable Https SSL"
			default n

		config MAIXPY_WIZNET5K_ENABLE
			bool "Enable WIZNET5K"
			default n
			select WIZNET5K_ENABLE

		config MICROPY_LWIP_ENABLE
			bool "Enable Lwip"
			default n

		config NETWORK_ESP32XX_HOSTED
			bool "Enable esp32xx hosted driver"
			default n
			select MICROPY_LWIP_ENABLE
			select FREERTOS_ENABLE

	endmenu

	menu "Builtin py modules configurations"

		config MAIXPY_BUILTIN_PY_PYE
			bool "Enable builtin py module pye (about 17KiB)"
			default y
		config MAIXPY_BUILTIN_PY_BOARD
			bool "Enable builtin py module board"
			default y
		config MAIXPY_BUILTIN_PY_FPIOA_MANAGER
			bool "Enable builtin py module fpioa_manager"
			default y
	endmenu

	menu "Debug configurations"
		config MAIXPY_K210_UARTHS_DEBUG
			bool "Use UARTHS to debug(pin9, pin10), UART2 to REPL(pin4, pin5)"
			default n
		config MAIXPY_LVGL_DEBUG
			depends on MAIXPY_LVGL_ENABLE
			bool "Enable LVGL debug info logging"
			default y

		config MAIXPY_LVGL_DEBUG_LEVEL
			depends on MAIXPY_LVGL_DEBUG
			int "LVGL debug level:[0,3]( [TRACE, INFO, WARN, ERROR])"
			default 2
	endmenu

	config BUILTIN_PY_DIR
		string "builtin py directory"
		default ""
endmenu

menu "Others"
	depends on COMPONENT_MICROPYTHON_ENABLE
	config COMPONENT_LIB_SIPEED_KPU_SRC_ENABLE
		bool "Compile lib_sipeed_kpu source code"
		default n
endmenu

