Is there any way to connect to the device and upload my application to the watch without using the cloud? I’d like to be able to work on this without relying on an external service.
Searching for information about this only gives me references to rebble, to repebble, so it seems as though this is no longer possible? Where can I find information about this?
You don’t need the cloud to sideload apps — you just need the .pbw file and a way to push it to your watch.
Getting the .pbw files:apps.repebble.com hosts the app files directly.
Installing without cloud:
Android:Gadgetbridge connects directly to your Pebble via Bluetooth and can install .pbw files — no Rebble account needed (I haven’t used gadgetbridge myself yet, and as far as I know, the current watches aren’t supported.)
Command line:libpebble2 lets you push .pbw files over Bluetooth from a computer
So Rebble/Repebble is only needed for app store discovery, not for installation itself.
Thanks for the reply, but how can I use this to interact with with device using the pebble command? When I type pebble ping, surely it doesn’t make a roundtrip to a server on the Internet, so how can I establish a connection to the device?
Small correction to my earlier answer: the command-line route via libpebble2 (pebble install --serial) requires classic Bluetooth Serial (SPP). I assumed that works in general, but I just tested it myself — on newer BLE-only watches (no SPP), it just times out. For BLE-only watches you’d need a direct GATT client, which libpebble2 doesn’t provide.
I reckon the alternatives are either via the Repebble app or via GadgetBridge (haven’t tried that yet)
Another option if you want to avoid --serial’s BLE limitations: pebble install --phone uses your Pebble app as a relay instead. The watch needs to be paired with the app and have Developer Mode switched on in it (that’s what exposes a local IP:port). The PC then talks to the app over local WiFi (WebSocket), and
the app just forwards those same raw protocol packets to the watch over its already-open BLE connection, passing responses back the same way. No internet is involved anywhere in that chain — PC and phone just need to be on the same local network (doesn’t even need internet access itself), and the phone-to-watch
link is local BLE. So still no Rebble account or cloud service, fully offline — the phone just acts as a Bluetooth-to-WiFi bridge since the PC has no direct BLE/GATT path to the watch itself.
Use the --phone option when installing, turn on the “LAN dev connection” option in the Pebble app. Ihl’l tell you tyour local IP, that’s the one you should use with the --phone option