Galaxy Watch Features - ECG / BP

Search This thread

mrscsi

New member
Feb 28, 2021
2
0
11
So could you please provide more information what exactly does not work?

When I try to send the tpk to the watch I get

__return_cb req_id[1] pkg_type[tpk] pkgid[com.samsung.health.samd.bb] key[error] val[-12] error message: :Invalid signature. Signed with wrong key, changed signature file or changed package file.:<-4>
__return_cb req_id[1] pkg_type[tpk] pkgid[com.samsung.health.samd.bb] key[end] val[fail]
processing result : Check certificate error [-12] failed

So I am assuming it has to do with the "sign" the files that you mentioned that I have no idea what that means
 

l0nax

Member
Jan 12, 2018
17
14
13
When I try to send the tpk to the watch I get

__return_cb req_id[1] pkg_type[tpk] pkgid[com.samsung.health.samd.bb] key[error] val[-12] error message: :Invalid signature. Signed with wrong key, changed signature file or changed package file.:<-4>
__return_cb req_id[1] pkg_type[tpk] pkgid[com.samsung.health.samd.bb] key[end] val[fail]
processing result : Check certificate error [-12] failed

So I am assuming it has to do with the "sign" the files that you mentioned that I have no idea what that means

Do you have added your DUID from your Watch to them certificate request?
 

l0nax

Member
Jan 12, 2018
17
14
13
So through the install guide on the link

Simply follow these steps:

TPK Signing
  1. Request a Certificate as described here: https://developer.samsung.com/galaxy-watch-develop/getting-certificates/manage.html
  2. List the security profiles
    Bash:
    ~$ ./tizen-studio/tools/ide/bin/tizen security-profiles list
    [Profile Name] [Active]
    MyWatch                O
  3. Sign the TPK
    Code:
    ~$ ./tizen-studio/tools/ide/bin/tizen package -t tpk -s MyWatch -- ./com_samsung_health_samd_bp.patched.tpk -o ./SIGNED_com_samsung_health_samd_bp.patched.tpk
  4. Install the signed TPK ./tizen-studio/tools/sdb install ./SIGNED_com_samsung_health_samd_bp.patched.tpk
 

matteo040178

Senior Member
Mar 28, 2012
74
15
28
Bangkok
I want to change CSC but after flashed the combination firmware and the stock csc my watch cannot enter recovery mode. Only wireless download works. Keep rebooting with the logo screen. Any ideas?

SM-R835F
 
Last edited:

adfree

Senior Member
Jun 14, 2008
9,091
5,371
243
SHM TPK 39...

Compared with 37 I can not see much...
No languages added...

Maybe Bug(s) fixed or Security increased...

Best Regards
 

Attachments

  • shm39_international.zip
    3.9 MB · Views: 123
  • Like
Reactions: Dante63

Scorp2410

Member
Dec 10, 2012
5
0
21
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

View attachment 5233619View attachment 5233621View attachment 5233697
View attachment 5233623View attachment 5233625View attachment 5233627
View attachment 5233699View attachment 5233701

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


Works Perfect!!
BP works on my GW3 with Pixel3XL like a charm!

Only BP sync between Health an Health Monitor is not working...

Someone got any advices here?
 
Last edited:

sapiora

Senior Member
Aug 1, 2006
325
45
48
43
Sofia
Can anyone provide me with step by step instruction on how to install Blood Pressure application (TPK) to my watch.

Samsung Health Monitor was finally approver in Europe and I installed it on my SGN10+. However on my SGWA2 was installed only the ECG and when I open SHM on my phone, SHM says that I need to have SGWA2 or higher IoT use the Blood Pressure. The ECG on the other hand is working normally.

I wrote and attached photos in Samsung Members regarding the issue, and I received guidance to unpair the phone and the watch, to restart both the devices and to pair them again. Tried their procedure and the issue is still not fixed.

I had watched videos on how to install bp.tpk through CMD using Tizen Studio to connect to the watch, and still nothing.

I used an APK file (4 MBs) to install through my phone onto the watch but still no success (I allowed the watch and phone the option to install application from unknown sources).
 

samiznayut

Member
Dec 11, 2020
21
1
13
Hello to everyone. I have a problem with the blood pressure on my watch. When i calibrate the blood pressure it says that i should put the blood pressure device on the opposite arm, but this device says that i should put it on my left arm. When i put it on my right arm and measure my BP, it shows the pressure about 9-10 higher than measuring it on left arm. I've calibrated my watch, then everytime i measure my BP, SYS shows the higher numbers. Could anyone tell me how to calibrate it more accurately please?

Best Regards.
 
Last edited:

adfree

Senior Member
Jun 14, 2008
9,091
5,371
243
Created APK for SHM 39...
Not tested yet...

Will try on my SM-R500 first... FUB5 Firmware...

Best Regards

Edit 1.

Pusher 39 tested with SM-R500... TPK install work for me...

SHM APK 183 can still not handle 2 Watches... crashes after second calibrate...

Edit 2.
Oh... difference to SHM 181 seems... not crash for ever...
I was able to continue with third Calibration step after crash...


Edit 3.
Success with BP on my SM-R500 FUB5 Tizen 5.5.0.1

TPK 39
APK 183
 
Last edited:

Top Liked Posts

  • There are no posts matching your filters.
  • 4
    Tiny "progress" about Blood Oxygen...

    Need some tester(s)...
    TPK need to be sign... or you have allready my rooted Firmware...

    OWN RISK!

    Still NO full working Blood Oxygen for GWA2...

    Need feedback from GW3 user(s), if here this Version do Blood Oxygen measure...

    Thanx in advance.

    Best Regards
    3
    Let me share my results. Credits to @Dante63.

    I install the mod SHM 183 and the BP and ECG to my galaxy watch SM-R800.

    Installation went without a breeze. Follow instruction of install SHM, close it, install APK.

    When first time launch SHM, it will indicate no watch but few seconds later i see ECG and BP.

    Cant calibrate the BP as forever stuck at 0%..

    For ECG, i think no probe so couldnt measure anything.

    If any other R800 user managed to get it work, pls share !!
    2
    Guys, please may you give me latest apk and tpks for non samsung phones for active 2?
    Thx in advance

    fwiw, heres the original ones from the original method and the only ones ive used, in apk form, one for ECG, one for BP. Simply install on phone and they get pushed automatically to watch. Just remember not to uninstall them, because, you guessed it, they then get removed from the watch. I get too confused too by the many tpk's floating around. So i just use the ones i know work....
    2
    Still need help from GW3 user(s)... Blood Oxygen related...


    Can somebody please try to sign proper and install and check if SPO2 measure looks valid?


    Thanx in advance.

    Best Regards
    2
    Update should still work

    Ive done at least one update with mine and nothing broke, but as always, your mileage may vary, and you can only try

    Backup your watch via Gear app on phone and keep the ecg and bp tpks handy just in case (or you can try my apk versions which push them from the phone easily, above)
    Thanks updated and everything still working
  • 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.
Our Apps
Get our official app!
The best way to access XDA on your phone
Nav Gestures
Add swipe gestures to any Android
One Handed Mode
Eases uses one hand with your phone