Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

A series of questions about signals, locking the screen and then unlocking it to have an effect #18

Open
nakatsusizuru opened this issue Nov 15, 2023 · 4 comments

Comments

@nakatsusizuru
Copy link

Besides external antennas, what other methods can be used to enhance the signal by modifying the code? Then it still worked in iOS 17.1.1, but Apple did not fix it. But after testing, it was found that after working for about 30 seconds to about 1 minute, the spam will become invalid. It will only continue to work until the screen is locked and then unlocked. Can this issue be modified to achieve persistent broadcasting?

@nakatsusizuru
Copy link
Author

In addition, I am using esp32-s3-devkitc-1

@ckcr4lyf
Copy link
Owner

Then it still worked in iOS 17.1.1, but Apple did not fix it.

I am not too sure about that, it seems Apple has "fixed" it to the point where you cannot spam the same iPhone with hundreds of advertisements if the user tries to close them.

it was found that after working for about 30 seconds to about 1 minute, the spam will become invalid. It will only continue to work until the screen is locked and then unlocked. Can this issue be modified to achieve persistent broadcasting?

I think this is the fix that apple has made - it will still show some advertisements (it seems one of each kind - e.g. one AppleTV pairing, one contact sharing, one transfer number), but then it will not show more, unless the user locks / unlocks again.

In the past (like 2 months ago) it would spam airpods every second. So definitely something has changed.

I will try and get my hands on an old iPhone and see if I can still replicate that behavior. That said, I do not think the Bluetooth range of the ESP32 has anything to do with it.

@Goal75KG
Copy link

Besides external antennas, what other methods can be used to enhance the signal by modifying the code? Then it still worked in iOS 17.1.1, but Apple did not fix it. But after testing, it was found that after working for about 30 seconds to about 1 minute, the spam will become invalid. It will only continue to work until the screen is locked and then unlocked. Can this issue be modified to achieve persistent broadcasting?

Try to set BLE power level in EvilAppleJuice-ESP32-INO.ino:

void setup()
{
  Serial.begin(115200);
  Serial.println("Starting ESP32 BLE");

  BLEDevice::init("AirPods 69");

  // Set the BLE power level
  esp_ble_tx_power_set(ESP_BLE_PWR_TYPE_ADV, ESP_PWR_LVL_P21);
  esp_ble_tx_power_set(ESP_BLE_PWR_TYPE_SCAN, ESP_PWR_LVL_P21);
  esp_ble_tx_power_set(ESP_BLE_PWR_TYPE_DEFAULT, ESP_PWR_LVL_P21);

  // Create the BLE Server
  BLEServer* pServer = BLEDevice::createServer();
  pAdvertising = pServer->getAdvertising();

  // seems we need to init it with an address in setup() step.
  esp_bd_addr_t null_addr = { 0xFE, 0xED, 0xC0, 0xFF, 0xEE, 0x69 };
  pAdvertising->setDeviceAddress(null_addr, BLE_ADDR_TYPE_RANDOM);
}

@RapierXbox
Copy link
Contributor

It looks like it does have a effect on the Apple Vision Pro popups. I isolated them to only spam them and if looks like it only shows up one time but after locking and unlocking it works again mos of the times.

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

No branches or pull requests

4 participants