Page 4 of 4 FirstFirst 1234
Results 61 to 70 of 70
Like Tree70Likes
  1. #61  
    Quote Originally Posted by jonwise80 View Post
    For our flaky Bluetooth, the problem is that if you walk away from your phone, and it disconnects, it will never re-connect unless you quit the app and restart it!
    Didn't notice that so far that this has changed. I was used getting a notification on my watch (connection lost), getting my phone and tapping on the red dashboard icon of MWatch that resulted in a "Ping" so the connection was established again. This worked very well for me in the past.
    If I understand your previous posting right this will be working on My Watch with your latest modifications again (if you select the setting that dashboard will stay open).

    In any case: thanks for your efforts. This is really great work.
  2. #62  
    Hi,

    spent almost three days trying to solve the "music riddle" - without success
    I still believe it is only a small piece missing. But somehow the music app seems to be "closed" - at least for MWatch/My Watch

    If I connect my Pebble Time with My Watch I get a "read success" every time I navigate into an app or out of an app. So My Watch can read every time the middle- or back-button is pressed. Just the same when using my Pebble Classic.

    The main difference is:
    If I'm in the Music app with my Pebble Classic I get a "read success" (read id: 32) when pressing the top or bottom button. With my Pebble Time I don't get anything. It's like using any other app like the settings app - you don't get a notification if you press the top button. Only entering or leaving the app is submitted.

    But what is preventing the music app of Pebble Time to send the button-notifications? I found not a single hint in the Gadgetbridge app that there was a change of the music app between firmware versions 3 and 4...

    Any ideas left?
  3. #63  
    From what I have been reading up on what you are seeing as a "read success" when entering and leaving an app is the app launch and app exit messages. I haven't seemed to be able to get the music control messages to be sent. I've been poking with what I need to send to get the song info to show up and, what I assume, would allow the music app to send events to me. I got the song info to show up, once... But I am not sure what I did. I've been trying to do a packet sniff of my Android phone talking to a watch and looking at what is sent there.
    Did you know:

    webOS ran on a Treo 800 during initial development.
    Nafetz likes this.
  4. #64  
    Quote Originally Posted by dkirker View Post
    I got the song info to show up, once... But I am not sure what I did
    What a pity...

    I went a similar way first and changed stategy yesterday: Now I'm trying to reduce communication between my devices to find differences in the few messages they send. I found out that the music app is communicating with the smartphone even if nothing is done (at least with Pebble Classic).

    Here are the few communications with Pebble Time after the device is paired and My Watch is started:
    CommunicationPebbleVersion.png
    One of the first things that are sent is CreatePebbleVersion of PebbleModel (Line 18). The values are the same no matter what Pebble Watch is used.

    Shortly after this is sent the communication between the devices begin
    CommunicationTime.png
    "My Watch" reads the Pebble OS Version (Line 38); then it is sending CreatePebbleTime30 of the PebbleModel (Line 46) and is reading something I couldn't identify (Line 51).

    This is happening when using a Pebble Classic:
    CommunicationClassic.png
    Like above, first the CreatePebbleVersion of PebbleModel is sent (see first picture)
    Again "My Watch" reads the Pebble OS Version (Line 38); then it is sending CreatePebbleTime30 of the PebbleModel (Line 46) and is reading something I couldn't identify (Line 51).
    There are minor differences in the messages. The message in line 51 has only a length of 5.
    Then something happens that I only can see with the Pebble Classic: I get a read id 17 in line 52 (PEBBLE_PHONE_VERSION)
    After this there might be an empty CreatePebbleNotification30 of the PebbleModel in line 56? (I couldn't verify this for sure at the moment)
    Finally you'll get a read id 32 in line 62 (PEBBLE_MUSIC_CONTROL) - the music app!

    What message is causing this different behaviour? May the CreatePebbleVersion of PebbleVersion (first picture) be wrong for Pebble Time?

    Still believing that the solution is just around a corner...
    Preemptive likes this.
  5. #65  
    I think it might be better to compare the communication between a Pebble Time and an Android device (and use Wireshark to read the HCI trace from Android) to see what it is doing. I saw some interesting packets with some fields set to ff followed by a packet with the same fields set to 00. I was trying to replicate this, though I might not have done it in the correct order.

    Anyway, I am taking a break from my upgrades to the Pebble stuff (and as a result, the work I restarted on creating a system to handle multiple notification endpoints) to finish up the SSL/TLS stuff. (Some day I'd like to connect my Pebble Time directly to my Pre3, and then have my Android "tablet" -- a Nexus 5 -- route notifications through my Pre3.)
    Did you know:

    webOS ran on a Treo 800 during initial development.
    Grabber5.0 and Nafetz like this.
  6. #66  
    Quote Originally Posted by dkirker View Post
    Anyway, I am taking a break from my upgrades to the Pebble stuff (and as a result, the work I restarted on creating a system to handle multiple notification endpoints) to finish up the SSL/TLS stuff.
    Thanks for working on this -- its above my skill level, but so important!

    Quote Originally Posted by dkirker View Post
    I think it might be better to compare the communication between a Pebble Time and an Android device (and use Wireshark to read the HCI trace from Android) to see what it is doing
    I agree that this is probably the best way to move forward on music -- clearly the messages have changed a lot, and we're not likely to just guess what they've changed to by analyzing what they used to be. Sniffing the traffic is really the only way to learn what's going on (unless someone stumbles across some documentation!) Unfortunately, I don't have the gear to do that right now, and if I bought another tablet my wife would probably have me sleeping in the garage!

    Minor Release Notification - My Watch 1.0.6
    This version fixes a bug I found when a Pre is paired with a TouchPad.

    The device discovery phase had an issue where it was only looking at the first device. This is almost always a Pebble, if there is one, but yesterday I tried out touch-to-share (which is so cool) and today none of my notifications worked. Turns out "webos device" becomes the newest top-most device in the list, which caused this bug to surface. Took awhile to figure out what was going on!
    Available on GitHub, as per usual.
    Last edited by jonwise80; 01/05/2019 at 07:40 AM.
    Nafetz likes this.
  7. #67  
    Quote Originally Posted by jonwise80 View Post
    Unfortunately, I don't have the gear to do that right now, and if I bought another tablet my wife would probably have me sleeping in the garage!
    • Perhaps you are already talking to Rebble people, who might have some ideas.
    • There are a few people on this forum with the kit who might be willing to test for you (I don't have the watch).
    • Of course, it is possible to dual-boot a TouchPad, so you don't necessarily need to buy another tablet...
    Last edited by Preemptive; 01/05/2019 at 07:30 AM.
    Nafetz likes this.
  8. #68  
    Quote Originally Posted by Preemptive View Post
    Of course, it is possible to dual-boot a TouchPad, so you don't necessarily need to buy another tablet...
    I've never had any luck assembling the aligned 3 archives necessary to get Android going. Some day I'll have to go back to Android development (this might be my Pre3 replacement, when I absolutely can't keep mine going). But I'm not eager to put time into Google's platform again. 3 years professionally was enough!
    Nafetz likes this.
  9. #69  
    Hi,

    after compairing the messages that are sent between different Pebble models and webOS devices and the many messages that are sent between Pebble models and Android devices I suspect only a few messages as necessary for the basic functionality (including Pebble Music), My theory is:

    1. webOS has to send a command PEBBLE_VERSIONS
    2. Pebble has to return a message with id PEBBLE_VERSIONS (16)
    3. webOS has to send a command PEBBLE_TIME
    4. Pebble has to return a message with id PEBBLE_PHONE_VERSION (17)
    5. webOS has to send a command PEBBLE_PHONE_VERSION
    6. only a few moments later Pebble will send a message with id PEBBLE_MUSIC_CONTROL (32) and Pebble Music App will communicate with webOS


    With Pebble Time the notification chain will break after step 3. webOS doesn't notice a read id 17 and doesn't continue with step 4.

    To find out if this theory might be true I looked for a way to force webOS to continue with step 4. For this I replaced the line of code that is responsible for executing CreatePebblePhoneVersion30() with following line:
    Code:
    if ((id == pebbleHelper.PebbleCommands["PEBBLE_PHONE_VERSION"]) || (id == pebbleHelper.PebbleCommands["PEBBLE_LAUNCHER"])) {
    (webOS is reading messages from the Pebble watches with id PEBBLE_LAUNCHER (49) every time you switch into the settings view so this is my additional trigger)

    After uploading my new patch (created in similar way for MWatch) on my Pre 3 it happened what I had hoped:
    I connected my Pebble, went into the settings view, had a look into the Pebble Music App and it worked.

    Of course this is not a good fix, but it's a proof that the code that is creating the music messages is still working.
    Maybe now we can focus on the reason why Pebble Time isn't returning with id PEBBLE_PHONE_VERSION (17) though the previous message seems to be exactly the same between Pebble Classic and Pebble Time.
    ...or find a perfect trigger other than read id 17
    Attached Images Attached Images
    Last edited by Nafetz; 01/13/2019 at 09:00 AM.
  10. #70  
    Oh! That makes sense! When you mentioned this I checked the logs and found that a lot of the messages you mentioned weren't being sent. I do remember seeing that message in the logs before being sent by us, and that would have been when I got music working briefly....

    Anyway, I am putting these commands in a different place so when the phone first connects we send an unsolicited PHONE_VERSION and also request a VERSION from the Pebble.

    Also... I've noticed that, aside from code being all over the place (all of the device specific code that is in the bluetooth-modeljs file should be in their respective device files, and BT code in app-assistantjs should be in bluetooth-modeljs), the state handling isn't quite what it should be. So this accounts for a lot of the drop-outs. Another issue I have seen with webOS Bluetooth is that the service occasionally hangs. That will probably take an external watch dog to monitor it and re-start it when it goes bad (I notice this a lot when I disconnect from my Chevy's head-unit -- it will get in this stuck state).
    Last edited by dkirker; 01/14/2019 at 02:04 PM. Reason: remove the javascript extension so that the post doesn't blow up...
    Did you know:

    webOS ran on a Treo 800 during initial development.
Page 4 of 4 FirstFirst 1234

Similar Threads

  1. Replies: 27
    Last Post: 03/01/2015, 07:37 PM
  2. Pebble + HP Pre 3
    By blaziiken311 in forum HP Pre 3
    Replies: 13
    Last Post: 08/22/2013, 11:48 AM
  3. Smartwatch: i´mWatch. Video.
    By akitayo in forum Other OS's and Devices
    Replies: 14
    Last Post: 09/08/2012, 11:43 PM
  4. Should HP keep the pebble look?
    By nimer55 in forum General News & Discussion
    Replies: 32
    Last Post: 02/23/2011, 08:17 PM

Posting Permissions