Live data from Hacker News

OpenDrop: An open Apple AirDrop implementation written in Python

github.com

81–90 of 132 posts

Re: OpenDrop: An open Apple AirDrop implementation written in Python

#81
post #51
post #29

Earlier quoted context omitted.

This is true for most Apple protocols in my experience. I’m supposed to be able to control my Homepod from my watch with a tap but it never works. Sometimes I can’t use the Homepod for minutes until it shows up. iMessage regularly fails to show the blue name for contacts, FaceTime is randomly unavailable for certain contacts, Airpods randomly disconnect, Airdrop rarely works. Tethering is also kind of spotty. The wat…

I’ve encountered many of these as well and have always assumed this was somehow the result of trying to make everything “just work”, wherein providing detailed user feedback or error messages would be some kind of admission that it hadn’t “just worked”.

It either "just works" or "just doesn't work"

Re: OpenDrop: An open Apple AirDrop implementation written in Python

#82

I believe AirDrop is a a great example of how Apples vertical integration and full ownership of software and hardware really thrives. It may not offer interoperability with other platforms, but that’s because other platforms don’t have the control needed to implement the same level of integration of hardware and software needed. Without the direct low level control of the radio hardware they would not have been able…

Windows has a lot of integrated solutions like that. I think Linux is the main outlier where there's nearly infinite ways to configure the whole OS and each component has at least 2-3 software alternatives (init systems, desktop environments, network management components)

Re: OpenDrop: An open Apple AirDrop implementation written in Python

#83

Earlier quoted context omitted.

Or the reverse of that where it sends a random meme to anyone walking by.

Before the pandemic, one of my friends used to have a hobby of going to bars and conventions and AirDropping pictures of ducks to strangers who left their AirDrop turned on.

Was it really ducks, or was it an autocorrection?

Re: OpenDrop: An open Apple AirDrop implementation written in Python

#84

I believe AirDrop is a a great example of how Apples vertical integration and full ownership of software and hardware really thrives. It may not offer interoperability with other platforms, but that’s because other platforms don’t have the control needed to implement the same level of integration of hardware and software needed. Without the direct low level control of the radio hardware they would not have been able…

> but that’s because other platforms don’t have the control needed to implement the same level of integration of hardware and software needed.

I seriously doubt this is the case. We're in a thread where people are posting dozens of implementations that work perfectly fine on other hardware.

> Without the direct low level control of the radio hardware they would not have been able to integrate both Bluetooth and WiFi in the way that AirDrop does.

This... is also not necessarily true? Android lets you send arbitrary data through WiFi Direct and Bluetooth alike, I'd really like to see a detailed breakdown that explains how that modulation isn't possible on standard hardware/software stacks though.

Re: OpenDrop: An open Apple AirDrop implementation written in Python

#85
I went from MacOS to Linux recently so I was going through similar projects and there is one important caveat: You have to have WIFI adapter that supports special mode (active monitor mode with frame injection).

Without compatible wifi adapter this will not work unfortunately :-(

Re: OpenDrop: An open Apple AirDrop implementation written in Python

#86
post #69
post #29

Earlier quoted context omitted.

This is true for most Apple protocols in my experience. I’m supposed to be able to control my Homepod from my watch with a tap but it never works. Sometimes I can’t use the Homepod for minutes until it shows up. iMessage regularly fails to show the blue name for contacts, FaceTime is randomly unavailable for certain contacts, Airpods randomly disconnect, Airdrop rarely works. Tethering is also kind of spotty. The wat…

Many "just works" things on the local network start failing for me when I'm using a VPN. Maybe check whether that's the reason. But yes, generally the reliability is so-so. Also, the feature to use Apple Watch to unlock the Mac or iPhone works mostly, at best.

I don’t use a VPN and I don’t think it’s my network because I don’t have any problems with “old” protocols (UPNP, samba, RDP/VNC, SSH, everything on top of HTTP). I wonder what Apple’s protocols do that makes them so error prone. If it was one or two of those I’d say it’s a bad department but the amount of errors suggests a deeper problem in the way Apple develops these things.

Re: OpenDrop: An open Apple AirDrop implementation written in Python

#87
post #26

Earlier quoted context omitted.

I’ve got an MBP that doesn’t show up, and never has, but it sees the rest. Any other macbook or iphone I’ve tried AirDrop with just works, but not my MBP.

I've had trouble with airdrop from phone to mbp when the mbp was on VPN. I don't know how airdrop works but I'm guessing the fact the VPN takes over DNS (and blocks requests to all other nameservers) has something to do with it. Who knows though. Apple's engineers love writing software that doesn't produce useful logs.

They do love clogging the logs with useless messages, though, as anyone who’s opened Console can testify.

Re: OpenDrop: An open Apple AirDrop implementation written in Python

#88

Earlier quoted context omitted.

Oh no, a thousand marketers just had the idea of automatically airdropping advertisements to passers-by. You could even structure it as a lottery-esque type of thing, only giving out good coupons or discounts to random individuals at random intervals, prompting people to loiter and wait for theirs.

The default is to only accept transfers from people that are in your address book.

If I understood their paper[1] correctly you can just use a popular phone number that a person walking by is likely to have in their contacts, like an emergency line number.

My mobile telco's SIM comes with a couple of contacts on it like their customer support line. I don't know anything about AirDrop, but I assume this will work.

[1]: https://www.usenix.org/conference/usenixsecurity21/presentat...

Re: OpenDrop: An open Apple AirDrop implementation written in Python

#89

Earlier quoted context omitted.

Another option (also not Airdrop compatible) is https://github.com/akovacs/uploadserver which is a Rust (Rocket) web server that you can run on a local machine. Open a browser and navigate to the machine's IP address at port 8000 to upload/download files from the web form. Disclaimer: I know the author.

Batteries included. Run: python3 -m http.server and go to port 8000.

You can't upload, but if its just download (on a single thread) this is pretty good.

Re: OpenDrop: An open Apple AirDrop implementation written in Python

#90

I believe AirDrop is a a great example of how Apples vertical integration and full ownership of software and hardware really thrives. It may not offer interoperability with other platforms, but that’s because other platforms don’t have the control needed to implement the same level of integration of hardware and software needed. Without the direct low level control of the radio hardware they would not have been able…

> but that’s because other platforms don’t have the control needed to implement the same level of integration of hardware and software needed. I seriously doubt this is the case. We're in a thread where people are posting dozens of implementations that work perfectly fine on other hardware. > Without the direct low level control of the radio hardware they would not have been able to integrate both Bluetooth and WiFi…

Does WiFi Direct et al even work? I've tried a couple of time to share stuff using a wireless methid from my android device to other Android devices and have never managed to do this successfully. What's the magic trick for doing this Android to Android?
Post reply on HN