Skip to content

Conversation

Copilot
Copy link
Contributor

@Copilot Copilot AI commented Sep 16, 2025

This PR implements the ability to completely disable WiFi functionality by setting the SSID to special values, addressing the need to eliminate unnecessary WiFi signals that could interfere with other devices.

Implementation

When the SSID is set to either an empty string "" or "none", the SmartSpin2k will:

  • Skip WiFi radio initialization entirely
  • Disable HTTP server startup
  • Skip firmware update checks over WiFi
  • Set internetConnection flag to false
  • Log appropriate messages indicating WiFi is disabled

BLE functionality remains fully operational for device configuration and control when WiFi is disabled.

Usage

Users can disable WiFi through the SmartSpin2K companion app by:

  1. Connecting via Bluetooth
  2. Setting the SSID field to blank or "none"
  3. Saving the configuration

The setting persists across device reboots and can be re-enabled by setting a valid SSID.

Technical Details

The implementation adds WiFi disable checks to key functions:

  • startWifi() - Returns early when WiFi disabled
  • stopWifi() - Handles case where WiFi was never started
  • HTTP_Server::start() - Skips server initialization
  • HTTP_Server::FirmwareUpdate() - Skips update checks
  • HTTP_Server::webClientUpdate() - Skips client handling

All WiFi-dependent components safely handle the disabled state, and existing functionality remains unchanged when WiFi is enabled.

Fixes #613.

Warning

Firewall rules blocked me from connecting to one or more addresses (expand for details)

I tried to connect to the following addresses, but was blocked by firewall rules:

  • api.registry.nm1.platformio.org
    • Triggering command: /usr/bin/python /home/REDACTED/.local/bin/pio test -e native -v (dns block)
    • Triggering command: /usr/bin/python /home/REDACTED/.local/bin/pio check --pattern=src/HTTP_Server_Basic.cpp --environment=native (dns block)
  • api.registry.platformio.org
    • Triggering command: /usr/bin/python /home/REDACTED/.local/bin/pio test -e native -v (dns block)
    • Triggering command: /usr/bin/python /home/REDACTED/.local/bin/pio check --pattern=src/HTTP_Server_Basic.cpp --environment=native (dns block)
  • collector.platformio.org
    • Triggering command: /usr/bin/python /home/REDACTED/.local/bin/pio test -e native -v (dns block)
    • Triggering command: /usr/bin/python /home/REDACTED/.local/bin/pio check --pattern=src/HTTP_Server_Basic.cpp --environment=native (dns block)

If you need me to access, download, or install something from one of these locations, you can either:


✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.

Copy link
Contributor Author

Copilot AI commented Sep 16, 2025

@doudar 👋 This repository doesn't have Copilot instructions. With Copilot instructions, I can understand the repository better, work faster and produce higher quality PRs.

I can generate a .github/copilot-instructions.md file for you automatically. Click here to open a pre-filled issue and assign it to me. I'll write the instructions, and then tag you for review.

@Copilot Copilot AI changed the title [WIP] [FR] Ability to disable WiFi [FR] Add ability to disable WiFi via SSID configuration Sep 16, 2025
@Copilot Copilot AI requested a review from doudar September 16, 2025 15:19
Copilot finished work on behalf of doudar September 16, 2025 15:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[FR] Ability to disable WiFi

2 participants