Xteink-X4-crosspoint-reader/platformio.ini
altsysrq 5bf721ae42 Add FTP server support with protocol selection and QR codes
This commit integrates FTP server functionality alongside the existing HTTP
server, allowing users to choose their preferred file transfer protocol.

Key changes:
- Added SimpleFTPServer library dependency (configured for SdFat2)
- Created CrossPointFtpServer wrapper for FTP server management
- Added network credentials to CrossPointSettings (ftpUsername, ftpPassword, httpUsername, httpPassword)
- Created ProtocolSelectionActivity for HTTP/FTP choice
- Created FileTransferActivity to replace CrossPointWebServerActivity
  - Supports both HTTP and FTP protocols
  - Shows QR codes for WiFi credentials (AP mode) and server URLs
  - Displays FTP credentials on screen for easy access
- Updated main.cpp to use FileTransferActivity instead of CrossPointWebServerActivity

The FTP server provides an alternative file transfer method that works well
with dedicated FTP clients and offers better performance for large file transfers.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-05 21:01:33 -06:00

61 lines
1.6 KiB
INI

[platformio]
crosspoint_version = 0.12.0
default_envs = default
[base]
platform = espressif32 @ 6.12.0
board = esp32-c3-devkitm-1
framework = arduino
monitor_speed = 115200
upload_speed = 921600
check_tool = cppcheck
check_flags = --enable=all --suppress=missingIncludeSystem --suppress=unusedFunction --suppress=unmatchedSuppression --suppress=*:*/.pio/* --inline-suppr
check_skip_packages = yes
board_upload.flash_size = 16MB
board_upload.maximum_size = 16777216
board_upload.offset_address = 0x10000
build_flags =
-DARDUINO_USB_MODE=1
-DARDUINO_USB_CDC_ON_BOOT=1
-DMINIZ_NO_ZLIB_COMPATIBLE_NAMES=1
-DEINK_DISPLAY_SINGLE_BUFFER_MODE=1
-DDISABLE_FS_H_WARNING=1
# https://libexpat.github.io/doc/api/latest/#XML_GE
-DXML_GE=0
-DXML_CONTEXT_BYTES=1024
-std=c++2a
# Enable UTF-8 long file names in SdFat
-DUSE_UTF8_LONG_NAMES=1
; Board configuration
board_build.flash_mode = dio
board_build.flash_size = 16MB
board_build.partitions = partitions.csv
extra_scripts =
pre:scripts/build_html.py
; Libraries
lib_deps =
BatteryMonitor=symlink://open-x4-sdk/libs/hardware/BatteryMonitor
InputManager=symlink://open-x4-sdk/libs/hardware/InputManager
EInkDisplay=symlink://open-x4-sdk/libs/display/EInkDisplay
SDCardManager=symlink://open-x4-sdk/libs/hardware/SDCardManager
ArduinoJson @ 7.4.2
QRCode @ 0.0.1
xreef/SimpleFTPServer @ 3.0.1
[env:default]
extends = base
build_flags =
${base.build_flags}
-DCROSSPOINT_VERSION=\"${platformio.crosspoint_version}-dev\"
[env:gh_release]
extends = base
build_flags =
${base.build_flags}
-DCROSSPOINT_VERSION=\"${platformio.crosspoint_version}\"