AsteroidOS / starship

SailfishOS synchronization app for AsteroidOS.
GNU General Public License v3.0
22 stars 12 forks source link

are you aware of Rockpool? #1

Closed eLtMosen closed 6 years ago

eLtMosen commented 6 years ago

for the sailfish side of a smartwatch client there already is Rockpool https://github.com/abranson/rockpool with full blown sailfish side of the client to learn from, featuring:

It would be awesome if some kind of collaboration could be initiated. How could the community help?

FlorentRevest commented 6 years ago

are you aware of Rockpool?

I have been working on starfish on a local branch for almost a month now. The code is loosely based on rockpool. Most of the features you describe are already bound from libwatchfish to libasteroid in starfishd and it should "kinda work (TM)".

However, there are huge problems with the underlying bluetooth low energy stack on SailfishOS preventing the client from progressing right now. I am actively investigating those issues with Jolla.

How could the community help?

Starfish is the biggest blocker for AsteroidOS 1.0 and I'm really looking forward to having progress on that side. Any contribution is very welcome.

1- Connection

For the near future, we need to find a proper way to establish an encrypted connection from a SFOS phone to an AsteroidOS watch. For now, this is done by libasteroid using QtBluetooth but when discovering certain services (like the battery service), QtBluetooth asks the kernel to setup a high security L2CAP socket which results in a "Permission denied" error code while reading the socket:

read(9, 0xb760d8f8, 16384) = -1 EACCES (Permission denied)

To reproduce that problem, you can try to install https://openrepos.net/content/martonmiklos/ble-scanner from warehouse, install strace with pkcon and run "strace /usr/bin/harbour-ble_scanner" from SSH. Connect to your watch and try discovering the battery service. The connection should crash and you should be able to find that EACCES error in the strace logs.

More of my mumbling at https://log.asteroidos.org/?date=2018-02-16&level=16

I'm currently recompiling my kernel with debugging messages to get more details on the cause of that specific issue.

2- The UI

The code is split in two parts: starfish and starfishd. The starfishd daemon should be pretty much done but the starfish app (the UI frontend) still has a lot of work to be done. This can not be done before having the "Connection" part ready so there isn't much to be done here yet.

"JUST GIMME DA FREAKIN' CODE"

After recurrent questions asking for the code ( https://github.com/AsteroidOS/starfish/issues/2 ) I just pushed an initial commit which is largely unusable but, at least, public. Anyone can give it a look and contribute.

eLtMosen commented 6 years ago

nice, thanks for the (star)fish! closing as original answer is more than covered.