GithubHelp home page GithubHelp logo

matthewkukanich / findmyflipper Goto Github PK

View Code? Open in Web Editor NEW
831.0 831.0 35.0 258 KB

The FindMy Flipper app turns your FlipperZero into an AirTag or other tracking device, compatible with Apple AirTags and Samsung SmartTag and Tile Trackers. It uses the BLE beacon to broadcast, allowing users to clone existing tags, generate OpenHaystack key pairs for Apple's FindMy network, and customize beacon intervals and transmit power.

C 47.28% Python 52.72%

findmyflipper's People

Contributors

alphao4 avatar luu176 avatar matthewkukanich avatar user890104 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

findmyflipper's Issues

I couldn't imput 2FA code

I run request_reports.py, it stops with an error before imput F2A.

pyprovision is not installed, querying http://localhost:6969 for an anisette server
C:\Users\User\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.12_qbz5n2kfra8p0\LocalCache\local-packages\Python312\site-packages\urllib3\connectionpool.py:1099: InsecureRequestWarning: Unverified HTTPS request is being made to host 'gsa.apple.com'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings
  warnings.warn(
pyprovision is not installed, querying http://localhost:6969 for an anisette server
C:\Users\User\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.12_qbz5n2kfra8p0\LocalCache\local-packages\Python312\site-packages\urllib3\connectionpool.py:1099: InsecureRequestWarning: Unverified HTTPS request is being made to host 'gsa.apple.com'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings
  warnings.warn(
2FA required, requesting code
pyprovision is not installed, querying http://localhost:6969 for an anisette server
C:\Users\User\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.12_qbz5n2kfra8p0\LocalCache\local-packages\Python312\site-packages\urllib3\connectionpool.py:1099: InsecureRequestWarning: Unverified HTTPS request is being made to host 'gsa.apple.com'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings
  warnings.warn(
'latin-1' codec can't encode characters in position 0-1: ordinal not in range(256)

I think cause of email adress.
I use a Gmail address for my AppleID.
I made iCloud adress, but almost no difference change the problem.
Does someone know how to solve it?

Suggestion: Use several tracking networks in parallell

Just as the header, make an option to have several tracking networks with corresponding tag info working in "round-robin-fashion" where they take turns to "ping" the surroundings. Yes, I know, it is unnecessary :)

FindMyFlipper isn't running in the background.

Hello!

I recently added FindMyFlipper to my Flipper Zero but it seems like it only pings when I have the Find my application open. I understand it says to press "left" to run in the background but when I do that, it just goes back to the main menu. Any ideas?

Keys folder not being created

Every other part of the setup process has gone smoothly, but after opening generate_keys.py, entering 1 as the number of keys to generate, and skipping the name entry, the window immediately closes, and no keys folder is made. Help!

Update the FindMy Flipper app for the SDK version 0.96 f7

Hello!

Your FindMy Flipper app version 1.0 fails to build with the SDK version 0.96.0-rc f7. Please update the app in your repository and create a new pull request to the catalog repository with the updated manifest file.

IMPORTANT: Don’t forget to update the app version and commit version in the manifest file.

View logs

Flipper Team

Error when opening

I have latest unleashed-firmware (unlshd-071) and when i try to open your app (findmy_Unleashed_V2.5.fap) i get this error
Screenshot-20240311-091929

Suggestion: Remote control of the Flipper Zero

I was just thinking about the "lost" mode that you can put AirTags into. This enables you to enter a phone number to the finder to contact you with. What if this could be used to set a random code that enables the Flipper to (slowly) remotely receive commands which might start different actions from a distance? Like Sub-GHz commands or BadUSB etc.

Flipper only pings when app is open

On opening the FindMyFlipper app, I turn on broadcast.
It's location data suddenly becomes available on Find My as expected.
I then press the back button to exit the app, and it's location is no longer pinged to Find My.
Opening the app again, it shows "Broadcast Inactive" again.

There is no transmit icon on the home screen, as I have heard this is meant to be present, from reading another issue.

I am running XFW-DEV 09-03-2024.

Device not being saved after new update.

I have my device set up on the Samsung network, it worked prior to the update and it still kinda works with the update however it does not save the device. Every time I re-open it up it brings me to the Apple Network screen instead of the Samsung Network screen like it used to. It at least saves my credentials so it's easy to set back up, however it never fully saves to the device making this useless as it only works when I have the device in front of me and have to re-add the device each time.

Find my randomly stops tracking

I’ve had an issue where find my flipper will stop tracking randomly even after it’s set to track in the background. I have to go back in the app for it to work again then it starts tracking again

"Invalid public bytes for the given curve" after receiving 1000 position reports (Anisette server v3)

I encountered an error while testing the project. After receiving position reports, I came across the following issue:

Invalid public bytes for the given curve
This error occurred after receiving approximately 1000 position reports.

Important details:

The Anisette server (version 3) is up and running:

CONTAINER ID  IMAGE                  COMMAND              CREATED     STATUS       PORTS                     NAMES
92348d2c177a  dadoum/anisette-v3-server:latest  "/opt/anisette-v3-se…"  2 days ago  Up 5 minutes  0.0.0.0:6969->6969/tcp, :::6969->6969/tcp  anisette-v3

All necessary files are present.

2FA / Code Error

I downloaded the modules like cryptography etc but i get this error when running request_reports.py:

line 17, in
from cores.pypush_gsa_icloud import icloud_login_mobileme, generate_anisette_headers
File "C:\Users\Desktop\FindMyFlipper\AirTagGeneration\cores\pypush_gsa_icloud.py", line 15, in
from Crypto.Hash import SHA256
ModuleNotFoundError: No module named 'Crypto'

I've got pycryptodome and Crypto installed and I also used AI to rectify the error and even when it asked for the 2FA i got nothing on my phone, no sms.

Hope you can help

Result - warnings.warn 'service-data'

Matt, this is an awesome project and thanks for all the hard work to build it!

I generated my key and enabled on my Flipper... But when I run the request_reports.py script I get the following:

python3 request_reports.py Apple ID: Password: pyprovision is not installed, querying http://localhost:6969 for an anisette server /home/joe/FindMyFlipper/AirTagGeneration/venv/lib/python3.11/site-packages/urllib3/connectionpool.py:1099: InsecureRequestWarning: Unverified HTTPS request is being made to host 'gsa.apple.com'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings warnings.warn( pyprovision is not installed, querying http://localhost:6969 for an anisette server /home/joe/FindMyFlipper/AirTagGeneration/venv/lib/python3.11/site-packages/urllib3/connectionpool.py:1099: InsecureRequestWarning: Unverified HTTPS request is being made to host 'gsa.apple.com'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings warnings.warn( pyprovision is not installed, querying http://localhost:6969 for an anisette server /home/joe/FindMyFlipper/AirTagGeneration/venv/lib/python3.11/site-packages/urllib3/connectionpool.py:1099: InsecureRequestWarning: Unverified HTTPS request is being made to host 'setup.icloud.com'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings warnings.warn( 'service-data'

In addition, I do not see a generated auth file on completion.

What am I missing?

Thanks.
Jeff

Samsung mode

Hi, I don't know if it's me, but I can't find a way to switch to the Samsung network. Can someone help me with that?

No module named cryptography

File "C:\Users<user>\Downloads\generate_keys.py", line 3, in
from cryptography.hazmat.primitives.asymmetric import ec
ModuleNotFoundError: No module named 'cryptography'

This was shown when I tried running generate_keys.py

ofw branch not building against OFW

I'm on the latest commit of the OFW dev branch, and the latest commit of the ofw branch for FindMyFlipper 7ce772c534715a67cdd9d06419cf3a5c708e4702, but it is not building. Prior commit 7e6b8f386b8b6a09e4d4e8361f85a230e7a8bfc4 was building.

Error:

********** FBT ERRORS **********
build/f7-firmware-D/.extapps/findmy.impsyms: build/f7-firmware-D/.extapps/findmy.fap: app may not be runnable. Symbols not resolved using firmware's API: {'I_Lock_7x8', 'I_Ok_btn_9x9', 'I_WarningDolphinFlip_45x42', 'I_DolphinDone_80x58'}

Flipper never pinged

when i got to the point where i had to wait for it to broadcast it never did. Any ideas why?

Locked on Apple Network

Hi,
Is there a way to switch from Apple Network to Samsung Network like in your reddit post ?

I'm using the fap file you've built on this repo.

Bug: Always falls back to Apple Network.

When I launch FindMy, register my tag generated using the tutorial you put on youtube, select Samsung Network, etc..

When I get back to the main screen and press the left arrow to let it run in the background, when I re-open the app, it shows me Apple Network.

How do I fix this?

Solved - No module named 'Crypto'

When running request_reports.py I am getting the below error:

/FindMyFlipper/AirTagGeneration/cores/pypush_gsa_icloud.py", line 15, in
from Crypto.Hash import SHA256
ModuleNotFoundError: No module named 'Crypto'

I have installed all requirements modules and Google so far has been unhelpful. Have tried installing cryptodome to try and remedy with no success either.

Samsung smart tag without cloning

Is it possible to switch to Samsung smart tag mode without cloning an existing one? And if not, is it possible to still use the tag after cloning is done?

Update the FindMy Flipper app for the SDK version 0.97 f7

Hello!

Your FindMy Flipper app version 1.0 fails to build with the SDK version 0.97.0-rc f7. Please update the app in your repository and create a new pull request to the catalog repository with the updated manifest file.

IMPORTANT: Don’t forget to update the app version and commit version in the manifest file.

View logs

Flipper Team

Suggestion: Add live battery meter

Hi, it seems like the battery in Apples "Find my" is stuck to 100%, I guess it is a quickfix until proper battery management is implemented. Thanks for a great app!

Suggestion: Autostart at boot

It would be very nice to have it automatically start when booting the Flipper, ideally even before unlocking the device, in case someone gets ahold of it and presses back+left, or just so you don't have to remember to restart it when your device crashes (especially when doing app development). I'm not familiar with how Flipper applications work but I see that there's a FlipperAppType.STARTUP, maybe there could be a second "app" with that type that could be used to start the main app based on a config option?

Importing generated keys in openhaystack

I'm trying to import the generated keys inside OHS however the import function looks for a .plist file; I tried exporting one and it seems holding more keys than the one generated by the python script. Any additional step to perform?

Error .fap Xtreme Firmware

Hello, when I load the findmy_Xtreme.fap I have an error that say “Load failed Bluetooth/findmy_Xtreme.fap Update Application/Firmware to use this (MissingImports)”

If someone could help me, I would be very grateful.

Screenshot Error

*suggestion* Enable alert feature

Hi, I've noticed that the alert feature isn't enabled. I really need this feature because I tend to leave it in some corner and then can't find it (sigh). I've tried connecting to it with the official app and setting it to play alert , but that doesn't work. It only starts to play sound after I unlock it using the password.

Find My Flipper state auto formatting every time the app is opened.

The id's seem to be dynamic and changing every time application is opened.

Steps to recreate:-

  1. Importing key from .key file and checking find my flipperstate.txt
  2. The data would have reverted back to the default.

2nd method

  1. Manually enter the data into the file from a computer ensuring proper formatting.
  2. Data reverted again.

Problems that I am facing due to this:-

Not able to view the location in macless haystack. (webserver is setup and the private key(base64) imported. im not sure if im not able to fetch location due to the bad configuration of app or haystack.
image

"A server problem is blocking Apple ID sign in" after "request_reports" script execution.

All setup and execution occurs as described in your documentation, but upon successful 2FA auth against Apple, I receive a login error.

[me@here AirTagGeneration]$ ~/containerData/anisette/venv/bin/python3 request_reports.py
pyprovision is not installed, querying http://localhost:6969 for an anisette server
pyprovision is not installed, querying http://localhost:6969 for an anisette server
2FA required, requesting code
pyprovision is not installed, querying http://localhost:6969 for an anisette server
Enter 2FA code: 416319
2FA successful
pyprovision is not installed, querying http://localhost:6969 for an anisette server
pyprovision is not installed, querying http://localhost:6969 for an anisette server
pyprovision is not installed, querying http://localhost:6969 for an anisette server
b'\n\n\n\t\n\t\tdsid\n\t\txxxxxxxxxxx\n\n\t\tdelegates\n\t\t\n\t\t\tcom.apple.mobileme\n\t\t\t\n\t\t\t\tstatus\n\t\t\t\t1\n\n\t\t\t\tstatus-message\n\t\t\t\tA server problem is blocking Apple ID sign in. Try signing in later.\n\n\t\t\t\n\n\t\t\n\n\t\tstatus\n\t\t0\n\n\t\n'
'service-data'

For background, I have NO Apple devices and created the Apple ID for this purpose only. The fake MacBook DOES appear in my "Devices" once this process completes, though. I'm not certain the issue isn't beyond the scope of this app, either. Any input is appreciated, as I'm very inexperienced with Apple's authentication schemes.

Error running generate_keys.py

I'm getting an error when running python3 generate_keys.py. I'm sure I'm just doing something wrong, or maybe this only works on a newer version of python?

Python 3.8.10
Ubuntu 20.04.6 LTS
WSL2

Traceback (most recent call last):
  File "generate_keys.py", line 86, in <module>
    main()
  File "generate_keys.py", line 59, in main
    public_key_hash = hashes.Hash(hashes.SHA256())
TypeError: __init__() missing 1 required positional argument: 'backend'

Update the FindMy Flipper app for the SDK version 0.98 f7

Hello!

Your FindMy Flipper app version 1.0 fails to build with the SDK version 0.98.2-rc f7. Please update the app in your repository and create a new pull request to the catalog repository with the updated manifest file.

IMPORTANT: Don’t forget to update the app version and commit version in the manifest file.

View logs

Flipper Team

Unable to run anisette on Raspberry Pi 4 Model B Rev 1.5 (ARMv8)

Basic info:

Operating System: Raspbian GNU/Linux 11 (bullseye)
Kernel: Linux 6.1.21-v8+
Architecture: arm64
processor	: 0
BogoMIPS	: 108.00
Features	: fp asimd evtstrm crc32 cpuid
CPU implementer	: 0x41
CPU architecture: 8
CPU variant	: 0x0
CPU part	: 0xd08
CPU revision	: 3

processor	: 1
BogoMIPS	: 108.00
Features	: fp asimd evtstrm crc32 cpuid
CPU implementer	: 0x41
CPU architecture: 8
CPU variant	: 0x0
CPU part	: 0xd08
CPU revision	: 3

processor	: 2
BogoMIPS	: 108.00
Features	: fp asimd evtstrm crc32 cpuid
CPU implementer	: 0x41
CPU architecture: 8
CPU variant	: 0x0
CPU part	: 0xd08
CPU revision	: 3

processor	: 3
BogoMIPS	: 108.00
Features	: fp asimd evtstrm crc32 cpuid
CPU implementer	: 0x41
CPU architecture: 8
CPU variant	: 0x0
CPU part	: 0xd08
CPU revision	: 3

Hardware	: BCM2835
Revision	: b03115
Serial		: 10000000e7d160c0
Model		: Raspberry Pi 4 Model B Rev 1.5

I am running command: docker run -d --restart always --name anisette-v3 -p 6969:6969 dadoum/anisette-v3-server:latest

After that container is running and returns following with input docker container ls

CONTAINER ID   IMAGE                              COMMAND                  CREATED          STATUS         PORTS                                       NAMES
8ed8f6f8f810   dadoum/anisette-v3-server:latest   "/opt/anisette-v3-se…"   58 seconds ago   Up 2 seconds   0.0.0.0:6969->6969/tcp, :::6969->6969/tcp   anisette-v3

Unfortunately input curl https://localhost:6969 returns:
curl: (7) Failed to connect to localhost port 6969: Connection refused
or
curl: (56) Recv failure: Connection reset by peer

When running docker container ls again I get no information on ports

CONTAINER ID   IMAGE                              COMMAND                  CREATED          STATUS                            PORTS     NAMES
8ed8f6f8f810   dadoum/anisette-v3-server:latest   "/opt/anisette-v3-se…"   10 minutes ago   Restarting (139) 36 seconds ago             anisette-v3

docker logs command doesn't give me anything

docker service logs command gives me this:

Error response from daemon: This node is not a swarm manager. Use "docker swarm init" or "docker swarm join" to connect this node to swarm and try again.

Any help would be appreciated as I am tearing my hair out and cannot get this to work

*suggestion* Add ability to clone tags in the app.

Would be nice if the flipper zero app could directly clone the tag itself. Especially useful for those with iphones and the like that wish to clone their airtags, since nrfconnect on iphone can't get the required info.

no beacons transmitted

Hello,

The app shows "Broadcast Active", without any errors anywhere, however no beacons are actually transmitted.
State file shows mac and data correctly.
Using RogueMaster built from latest git, which includes this app.
Any ideas?

Thanks.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.