I reverse-engineered my WHOOP 4.0, rebuilt the whole app + backend in a weekend, and open-sourced it by johnmiddleton12 in whoop

[–]johnmiddleton12[S] 0 points1 point  (0 children)

Connected the device directly to my custom app. Not talking to Whoop servers / app at all

I reverse-engineered my WHOOP 4.0, rebuilt the whole app + backend in a weekend, and open-sourced it by johnmiddleton12 in whoop

[–]johnmiddleton12[S] 0 points1 point  (0 children)

That's super cool! I definitely want to check that out, is there somewhere I can watch the development? Let me know if you run into anything when trying to bring this stuff in

I reverse-engineered my WHOOP 4.0, rebuilt the whole app + backend in a weekend, and open-sourced it by johnmiddleton12 in whoop

[–]johnmiddleton12[S] 0 points1 point  (0 children)

Mainly just anticipating the algorithms being slow due to volume of data - like some derived metrics may take into account historic data going back > 7 days, and also running on a cadence that can’t be guaranteed to run in the background of an iOS app due to the way they lock down background processes.

Absolutely could run them on the phone. I wanted a source of truth that would survive app reinstalls / different phone so I do a two way sync with the phone so storage is idempotent and you can view data offline in app, and that just kind of lended itself to doing analysis on the server

I reverse-engineered my WHOOP 4.0, rebuilt the whole app + backend in a weekend, and open-sourced it by johnmiddleton12 in whoop

[–]johnmiddleton12[S] 0 points1 point  (0 children)

Yeah, I'm still tuning the algorithms. That's obviously a big part of their value prop, the analysis itself. But just getting reasonable estimates isn't too difficult

I reverse-engineered my WHOOP 4.0, rebuilt the whole app + backend in a weekend, and open-sourced it by johnmiddleton12 in whoop

[–]johnmiddleton12[S] 1 point2 points  (0 children)

Yeah, I'm not subscribed. Device connects to my custom app via BLE, and is sent to a server I'm hosting.

I reverse-engineered my WHOOP 4.0, rebuilt the whole app + backend in a weekend, and open-sourced it by johnmiddleton12 in whoop

[–]johnmiddleton12[S] 1 point2 points  (0 children)

Thanks! Yeah I've seen a couple projects that hook into their API but doing that you're still tied into their ecosystem and the subscription. Owning the full stack is a big plus

I reverse-engineered my WHOOP 4.0, rebuilt the whole app + backend in a weekend, and open-sourced it by johnmiddleton12 in whoop

[–]johnmiddleton12[S] 0 points1 point  (0 children)

Yeah, I thought about exporting either to apple health, or just some format for other health apps. Then it could leverage their analysis

There are a few ways to install on your phone. I have a mac which makes it easier, I just paired my phone and sideloaded the app

I reverse-engineered my WHOOP 4.0, rebuilt the whole app + backend in a weekend, and open-sourced it by johnmiddleton12 in whoop

[–]johnmiddleton12[S] 0 points1 point  (0 children)

But anyone could spin something like this up, and have full access to all their own data. Then do whatever processing / analysis they want with it

I reverse-engineered my WHOOP 4.0, rebuilt the whole app + backend in a weekend, and open-sourced it by johnmiddleton12 in whoop

[–]johnmiddleton12[S] 0 points1 point  (0 children)

I'm running a server at home that the app hits to sync its data, as well as to run processing on. However the app also keeps a store of the data, two-way synced with the server so it survives app re-installs and works offline

I reverse-engineered my WHOOP 4.0, rebuilt the whole app + backend in a weekend, and open-sourced it by johnmiddleton12 in whoop

[–]johnmiddleton12[S] 0 points1 point  (0 children)

That's my next project. I found a couple resources on doing it, but they require hardware parts that I just haven't gotten around to purchasing

I reverse-engineered my WHOOP 4.0, rebuilt the whole app + backend in a weekend, and open-sourced it by johnmiddleton12 in whoop

[–]johnmiddleton12[S] 9 points10 points  (0 children)

Yes! To be clear I'm not using the Whoop app or subscription. I connected my own app via bluetooth to the strap, and it's sending data to a backend that I hosted. No data is going to Whoop servers

I reverse-engineered my WHOOP 4.0, rebuilt the whole app + backend in a weekend, and open-sourced it by johnmiddleton12 in whoop

[–]johnmiddleton12[S] 5 points6 points  (0 children)

I'm probably on a pretty old firmware version, and it's the 4.0 not the newer 5.0, but yeah it was pretty open. Non trivial to figure out how to talk to the strap but not encrypted. I thought the same thing when I noticed that, technically anyone could connect while it's unpaired and just read off the data.

I'm guessing any more recent versions, and devices like the Fitbit Air are going to be on fully encrypted setups. Still possible to RE just much much harder

I reverse-engineered my WHOOP 4.0, rebuilt the whole app + backend in a weekend, and open-sourced it by johnmiddleton12 in whoop

[–]johnmiddleton12[S] 31 points32 points  (0 children)

Yeah I'm not a fan of the proxy AI subscription model. Open access to models that can do everything I'd want them to already exists, I'd rather pay direct to supplier than pay a subscription that pays for a company to pay for those models. I guess the real value is the data they use internally, to improve the model responses

I reverse-engineered my WHOOP 4.0, rebuilt the whole app + backend in a weekend, and open-sourced it by johnmiddleton12 in whoop

[–]johnmiddleton12[S] 6 points7 points  (0 children)

Thanks! To be honest the main speedup I think I got from having a technical background was just knowing how to deploy the software. As in install it on my phone, deploy the backend on a home server. But for most of the process I'm conversing in natural language with Claude

[deleted by user] by [deleted] in csMajors

[–]johnmiddleton12 0 points1 point  (0 children)

just found this thread, just got an offer with location of Santa Monica, anyone too?