• Introducing XDA Computing: Discussion zones for Hardware, Software, and more!    Check it out!

Galaxy Watch Features - ECG / BP

Search This thread

adfree

Senior Member
Jun 14, 2008
9,285
5,481
About GW4...

Maybe similar funny country restrictions like we know from our Tizen watches...

I mean for example US... Blood Pressure maybe still not "enabled"...

Interesting looks to me Body Fat measurement... look here:


Best Regards
 
  • Like
Reactions: Dante63

alinhorio

New member
Aug 27, 2021
1
1
Hey guys. I almost read all messages in this thread. I'm have a Watch Active2 and I live in USA. ECG is working by default for a long time, but BP is still not working. In the past, when we have none, I could install both mods, but when Samsung released their own updated SHM, I did it. I was hoping that bp would work soon, but not. Now I'm trying to install the BP.tpk. I followed the tutorial, tizen studio, cmd sdb, etc.
The problem is that the SHM on the watch is not overwritten. I still can check ECG but BP is not available. On the phone, I have the last SHM v.191 (thanks to @Dante63).
I've tried several BP.tpk files, but when the cmd sdb install bp.tpk is sent, it runs for a while, but the ansicon.exe closes and the file vanishes... on the watch... no changes at all.
SM-R820 / UI 2.0 / Tizen 5.5.0.2 / SW R820XXU1DUH1 SM-R820NZSAXAR
 
  • Like
Reactions: Dante63
Hey guys. I almost read all messages in this thread. I'm have a Watch Active2 and I live in USA. ECG is working by default for a long time, but BP is still not working. In the past, when we have none, I could install both mods, but when Samsung released their own updated SHM, I did it. I was hoping that bp would work soon, but not. Now I'm trying to install the BP.tpk. I followed the tutorial, tizen studio, cmd sdb, etc.
The problem is that the SHM on the watch is not overwritten. I still can check ECG but BP is not available. On the phone, I have the last SHM v.191 (thanks to @Dante63).
I've tried several BP.tpk files, but when the cmd sdb install bp.tpk is sent, it runs for a while, but the ansicon.exe closes and the file vanishes... on the watch... no changes at all.
SM-R820 / UI 2.0 / Tizen 5.5.0.2 / SW R820XXU1DUH1 SM-R820NZSAXAR
Consider watching my thread for phone app updates:
And follow the alternative way to install BP on your watch...
 

jucca

Senior Member
Jun 3, 2010
138
11
Split
Quick newbie question.
Ordered Watch Classic 4 LTE and wonder is there a way to make ECG and other Samsung phones locked only apps, work with my Huawei P30 PRO
 

Top Liked Posts

  • There are no posts matching your filters.
  • 39
    UPDATE 10.06.2020: Version 165 from @[SIZE="4"]adfree[/SIZE] and modded by @[SIZE="4"]caravana[/SIZE], with this version you can update WITHOUT deinstalling old one and without make calibration again. Try it and let me know. Download from here: AbsolutelyOWNRISK-APK-165

    UPDATE 07.06.2020: New APK again (version 161). Always thanks to @[SIZE="4"]adfree[/SIZE] and @[SIZE="4"]caravana[/SIZE]. Download from here: AbsolutelyOWNRISK-APK-161
    UPDATE 30.05.2020: New APK (version 159). Thanks to @[SIZE="4"]adfree[/SIZE] and @[SIZE="4"]caravana[/SIZE]. Download from here: AbsolutelyOWNRISK-APK-159
    UPDATE 17.05.2020: I updated the APK with version 157 (thanks @[SIZE="4"]caravana[/SIZE]) because the old one gave a false-positive with MalwareBytes app (RUBBISH).


    Okay, I'm going to explain all the steps I've done. I will try to simplify driving to the maximum.
    In attached you will find the APK and the TPK that I used (the credits for both go to those who upload them in the forum; thank you very much), and old version of SDB (2.2.6.0).

    Of course, everything will be AT YOUR OWN RISK, so you need to know what you are doing!

    0) Enable debugging and "Developer Options" on the GWA2, activate WiFi (same network where the PC is connected, the guide concerns only Windows, sorry for this)
    1) Download the attached files and dezip it
    2) Download and install TizenStudio 3.7 with IDE installer (608MB)
    3) Start TizenStudio, at the top you will see a box with "No target" written, click on the drop-down menu and choose "Launch Remote Device Manager" click on "Scan" and you will find your watch.
    4) Click on "Connect ON" and accept the connection on the watch. Once connected, open the folder containing SDB 2.2.6.0, CMD, "sdb install bp.tpk"

    If you have installation problems you have to try these ways
    - on the watch activate wi-fi, deactivate bluetooth, restart the GWA2, retry steps 3) and 4)
    - if you have not solved, you must reset the smartwatch, re-associate it with your smartphone and repeat steps 0), 3) and 4).

    EDIT:
    Video Tutorial (english language from TechnoProz): https://www.youtube.com/watch?v=bTni4d832XE
    Video Tutorial (italian language from AlexSmart): https://www.youtube.com/watch?v=AdEWD7Kn44g
    Video Tutorial (português language from SombrasNoturnas): https://www.youtube.com/watch?v=VTiZxNO7lcs

    Let me know if you have difficulties and where, forgive my English but it is the result of Google Translator.
    10
    Hey everyone,

    The last few days I've sad down reversed engineered and patched the Applications.
    I toked my a while, but I got ECG and BP working with the latest SHM-Version.

    Some facts about the Hardware & Software I used/have:
    • Samsung Galaxy Watch 3
      • Model: SM-R840
      • Tizen Version: 5.5.0.2
      • Software-Version: R840XXU1BUA8
    • Google Pixel 3 (Android 11)
    • Location: Germany
    Samsung Health Monitor Versions:
    • Android: 1.1.0.183
    • Galaxy Watch: 1.1.0037

    Please note that at this time I do not have the device to calibrate the Blood Pressure feature.
    But this evening I will have access to a BP Device, I will update this post after calibrating the watch.

    Screenshots

    Screenshot_20210226-130853.pngScreenshot_20210226-130850.pngScreenshot_20210226-144144.png
    PXL_20210226_120932126.MP.jpgPXL_20210226_120924324.MP.jpgPXL_20210226_120915266.MP.jpg
    Screen__20210226_144651.pngScreen_20210226_144551.png

    Files
    Steps to Install
    1. Sign the com_samsung_health_samd_bp.patched.tpk file
    2. Sign the monitor.apk file
    3. Install the Samsung Health Monitor App on your phone: adb install ./monitor.apk
    4. Install the tpk on your Watch: sdb install ./com_samsung_health_samd_bp.patched.tpk
    5. Now everything should work

    Changes made to the TPK:
    • Renamed package from com.samsung.health.samd.bp to com.samsung.health.samd.bb

    Changes made to the APK:
    • Removed Samsung Device Restriction
    • Reduced required Age

    Diff:
    diff --color -u -p -r /tmp/tmp.t6S5vOlrqk/AndroidManifest.xml /tmp/tmp.LHSTmyPfrE/AndroidManifest.xml
    --- /tmp/tmp.t6S5vOlrqk/AndroidManifest.xml    2021-02-26 13:43:54.945122180 +0100
    +++ /tmp/tmp.LHSTmyPfrE/AndroidManifest.xml    2021-02-24 13:35:18.979000000 +0100
    @@ -10,7 +10,7 @@
         <uses-permission android:name="android.permission.QUERY_ALL_PACKAGES"/>
         <uses-permission android:name="android.permission.WAKE_LOCK"/>
         <uses-permission android:name="android.permission.FOREGROUND_SERVICE"/>
    -    <application android:allowBackup="false" android:allowTaskReparenting="true" android:appComponentFactory="androidx.core.app.CoreComponentFactory" android:extractNativeLibs="false" android:icon="@drawable/group_2" android:label="@string/shealthmonitor_app_name" android:largeHeap="true" android:name="com.samsung.android.shealthmonitor.SHealthMonitorApplication" android:requestLegacyExternalStorage="true" android:roundIcon="@drawable/group_2" android:supportsRtl="true" android:theme="@style/AppTheme">
    +    <application android:allowBackup="false" android:allowTaskReparenting="true" android:appComponentFactory="androidx.core.app.CoreComponentFactory" android:extractNativeLibs="true" android:icon="@drawable/group_2" android:label="@string/shealthmonitor_app_name" android:largeHeap="true" android:name="com.samsung.android.shealthmonitor.SHealthMonitorApplication" android:requestLegacyExternalStorage="true" android:roundIcon="@drawable/group_2" android:supportsRtl="true" android:theme="@style/AppTheme">
             <meta-data android:name="com.samsung.android.health.permission.write" android:value="com.samsung.health.blood_pressure;com.samsung.health.ecg"/>
             <meta-data android:name="com.samsung.android.health.permission.read" android:value="com.samsung.health.user_profile"/>
             <activity android:configChanges="keyboardHidden|orientation|screenSize" android:exported="false" android:hardwareAccelerated="true" android:label="@string/shealthmonitor_app_name" android:launchMode="singleTask" android:name="com.samsung.android.shealthmonitor.home.ui.activity.SHealthMonitorMainActivity" android:screenOrientation="portrait" android:theme="@style/ProMainAppCompat"/>
    @@ -180,4 +180,4 @@
             <meta-data android:name="SPDE.build.signature" android:value="unknown/unofficial/release/none"/>
             <meta-data android:name="SPDE.env.version" android:value="4.0.0/L30.1.18/0.9.17"/>
         </application>
    -</manifest>
    \ No newline at end of file
    +</manifest>
    Only in /tmp/tmp.LHSTmyPfrE: build
    diff --color -u -p -r /tmp/tmp.t6S5vOlrqk/smali/com/samsung/android/sdk/SsdkVendorCheck.smali /tmp/tmp.LHSTmyPfrE/smali/com/samsung/android/sdk/SsdkVendorCheck.smali
    --- /tmp/tmp.t6S5vOlrqk/smali/com/samsung/android/sdk/SsdkVendorCheck.smali    2021-02-26 13:43:56.570128395 +0100
    +++ /tmp/tmp.LHSTmyPfrE/smali/com/samsung/android/sdk/SsdkVendorCheck.smali    2021-02-26 14:10:08.629140988 +0100
    @@ -41,7 +41,7 @@
         .line 24
         sget-object v0, Lcom/samsung/android/sdk/SsdkVendorCheck;->strBrand:Ljava/lang/String;
    
    -    const/4 v1, 0x0
    +    const/4 v1, 0x1
    
         if-eqz v0, :cond_2
    
    @@ -52,7 +52,7 @@
         goto :goto_0
    
         :cond_0
    -    const-string v2, "Samsung"
    +    const-string v2, "Google"
    
         .line 26
         invoke-virtual {v0, v2}, Ljava/lang/String;->compareToIgnoreCase(Ljava/lang/String;)I
    diff --color -u -p -r /tmp/tmp.t6S5vOlrqk/smali/com/samsung/android/shealthmonitor/bp/ui/card/SHealthMonitorBpCard.smali /tmp/tmp.LHSTmyPfrE/smali/com/samsung/android/shealthmonitor/bp/ui/card/SHealthMonitorBpCard.smali
    --- /tmp/tmp.t6S5vOlrqk/smali/com/samsung/android/shealthmonitor/bp/ui/card/SHealthMonitorBpCard.smali    2021-02-26 13:43:56.646128686 +0100
    +++ /tmp/tmp.LHSTmyPfrE/smali/com/samsung/android/shealthmonitor/bp/ui/card/SHealthMonitorBpCard.smali    2021-02-24 16:41:43.047126075 +0100
    @@ -914,7 +914,7 @@
    
         sub-int/2addr v1, v0
    
    -    const/16 v0, 0x16
    +    const/16 v0, 0x11
    
         if-le v0, v1, :cond_0
    
    diff --color -u -p -r /tmp/tmp.t6S5vOlrqk/smali/com/samsung/android/shealthmonitor/util/CSCUtils.smali /tmp/tmp.LHSTmyPfrE/smali/com/samsung/android/shealthmonitor/util/CSCUtils.smali
    --- /tmp/tmp.t6S5vOlrqk/smali/com/samsung/android/shealthmonitor/util/CSCUtils.smali    2021-02-26 13:43:56.723128980 +0100
    +++ /tmp/tmp.LHSTmyPfrE/smali/com/samsung/android/shealthmonitor/util/CSCUtils.smali    2021-02-24 15:32:09.013429909 +0100
    @@ -1058,14 +1058,14 @@
    
         .line 217
         :cond_5
    -    sget-object v0, Lcom/samsung/android/shealthmonitor/util/CommonConstants$SupportCountry;->ALL_NOT_SUPPORT:Lcom/samsung/android/shealthmonitor/util/CommonConstants$SupportCountry;
    +    sget-object v0, Lcom/samsung/android/shealthmonitor/util/CommonConstants$SupportCountry;->ALL_SUPPORT:Lcom/samsung/android/shealthmonitor/util/CommonConstants$SupportCountry;
    
         return-object v0
    
         .line 192
         :cond_6
         :goto_2
    -    sget-object v0, Lcom/samsung/android/shealthmonitor/util/CommonConstants$SupportCountry;->NO_SIM:Lcom/samsung/android/shealthmonitor/util/CommonConstants$SupportCountry;
    +    sget-object v0, Lcom/samsung/android/shealthmonitor/util/CommonConstants$SupportCountry;->ALL_SUPPORT:Lcom/samsung/android/shealthmonitor/util/CommonConstants$SupportCountry;
    
         return-object v0
    .end method
    diff --color -u -p -r /tmp/tmp.t6S5vOlrqk/smali/com/samsung/android/shealthmonitor/util/Utils.smali /tmp/tmp.LHSTmyPfrE/smali/com/samsung/android/shealthmonitor/util/Utils.smali
    --- /tmp/tmp.t6S5vOlrqk/smali/com/samsung/android/shealthmonitor/util/Utils.smali    2021-02-26 13:43:56.726128992 +0100
    +++ /tmp/tmp.LHSTmyPfrE/smali/com/samsung/android/shealthmonitor/util/Utils.smali    2021-02-26 14:31:25.965026392 +0100
    @@ -2138,7 +2138,7 @@
    
         move-result v2
    
    -    const/16 v4, 0x16
    +    const/16 v4, 0x11
    
         sub-int/2addr v2, v0
    
    @@ -2193,16 +2193,16 @@
    
         move-result-object v0
    
    -    const-string v1, "samsung"
    +    const-string v1, "google"
    
    -    invoke-virtual {v0, v1}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
    +    invoke-virtual {v1, v1}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
    
         move-result v0
    
         return v0
    
         :cond_0
    -    const/4 v0, 0x0
    +    const/4 v0, 0x1
    
         return v0
    .end method
    10
    New tpk pusher with v1.1.0037 ;)
    9
    Hello everyone,

    As we have no users from Korea as it seems...
    No idea why...

    I'm from Korea :eek:

    First, thanks for your great work. Now I'm using BP feature with my galaxy watch active 2 using your guide.

    I have a Korean Galaxy Note 10+ (SM-N976N) and Korean Galaxy watch active 2 (SM-R820, R820XXU1BTD6, CSC=KOO, Tizen 4.0.0.8).

    I could install the BP version 1.0.72 (samsungapps-000004413020-2035556-100000072.wgt) and ECG version 1.0.0004 (samsungapps-000004688049-2651158-100000004.wgt) and SHM version 1.0.0.165 (Samsung Health Monitor 1.0.0.165.mod2.apk),
    but unfortunately I still couldn't get the ECG feature..

    ===

    There was no ECG debug menu on *#0*#.

    ===

    I analyzed the decoded APK + disassembled JAVA code for SHM version 153 and 165, and I couldn't find the ECG logic.
    There was no code for "com.samsung.android.shealthmonitor.ecg.control.EcgController" class which is called from ControlManager.
    Of course the "com.samsung.android.shealthmonitor.bp.control.BloodPressureController" class could be found in the folder.

    ===

    Finally, there is a Korean website of "Ministry of Food and Drug Safety"
    https://emed.mfds.go.kr/#!CECAB01F010

    You can find the BP and ECG approved number by Samsung if you can translate Korean...
    1. Type 삼성전자 in 업소명 field (find samsung electronics in company name)
    2. Click 제 2893 호 (company number 2893)
    3. 제허 20-295 호 (approval number 20-295)
    -> This is for current BP app.
    -> Classification Name is 혈압 검사 또는 맥파 검사용 기기 (Sphygmomanometers and sphygmograph). You can find this one as "home_about_label_classification" in strings.xml.
    -> Model name is 혈압 앱 (BP app). You can find this one as "home_about_label_model" in strings.xml.
    4. 제허 20-378호 (approval number 20-378)
    -> This is for (maybe not released) ECG app.
    -> Classification Name is 심전계 (Electrocardiograph)
    -> Model name is ECG 앱 (ECG app)

    153 version didn't include both of 20-295 (BP app) and 20-378 (ECG app)
    165 version only includes 20-295 (BP app)

    ===

    So, my conclusion is, there is no ECG code for current SHM app for now. sam...sung............. (it's so shameful because many of my friends works on samsung mobile division. I apologize instead of that dumb guys :cool:)
    9
    Pass the updated version please and I'll unlock it 😉...
    Following our conversation. Original file 1.1.0.183.