# Heltec Wireless Stick Lite (V3) board configuration

# Copyright (c) 2021 Instituto de Pesquisas Eldorado (eldorado.org.br)
# Copyright (c) 2023 The Zephyr Project Contributors
# SPDX-License-Identifier: Apache-2.0

config BOARD_HELTEC_WIRELESS_STICK_LITE
	bool "Heltec Wireless Stick Lite (V3) Board"
	depends on SOC_SERIES_ESP32S3

choice SOC_PART_NUMBER
	default SOC_ESP32S3_FN8
endchoice
