Bambu firmware drops the FTPS control channel after ~5 min of idle
(observed: '221 Service closing' on PASV after ~6 min in the file
panel). The stale session caused LIST_INFO to surface as an empty
directory, SUB_FILE to fail thumbnail fetches, and FILE_DOWNLOAD /
FILE_DEL to report "file not exist" until the user reopened the
panel.
Adds a reconnect_ftp() helper (quit + reset + ensure_ftp) and wires
it into LIST_INFO, SUB_FILE (zip + thumbnails via download_blob),
FILE_DOWNLOAD (only while no chunk has been pushed yet), and
FILE_DEL on the first error. Retries once and falls through to the
old "empty / not-exist" reply if the second attempt also fails.
Made-with: Cursor