This really seems to be the same device, but it does have a different firmware
and a different bluetooth name.
Do this to prevent cross flashing - which might actually be okay but we do not know.
This PR adds the ability to change activity recognition settings on the watch.
Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/2539
Co-authored-by: dakhnod <dakhnod@noreply.codeberg.org>
Co-committed-by: dakhnod <dakhnod@noreply.codeberg.org>
New Huami Amazfit GTS 2 Mini activity for Outdoor Trekking/Hiking.
Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/2528
Co-authored-by: Sebastian Krey <skrey@noreply.codeberg.org>
Co-committed-by: Sebastian Krey <skrey@noreply.codeberg.org>
Adds Support for BLDC controller VESC connected to a BLE serial device like an HM10.
Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/2491
Co-authored-by: dakhnod <dakhnod@noreply.codeberg.org>
Co-committed-by: dakhnod <dakhnod@noreply.codeberg.org>
This PR adds not only the device Bose QC35,
it also adds the following autop-reconnect feature:
When the headphones are turned on, the initiate a connection with the phone.
With this change, GB is notified about said change, and tries to establish a connection to the newly connected device, if the appropriate device setting is set.
The QC35 headpones always have NC turned on after boot, thus the main feature of this implementation is to turn off NC as soon as the headphones are turned on and connected to the phone.
I am open for discussion regarding the implementation, but this seems like a good first proposal.
What is missing is the ability to connect to multiple devices, since in many cases headphones can be connected to the watch simultaniously to a smartwatch or other gadget.
Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/2520
Co-authored-by: dakhnod <dakhnod@noreply.codeberg.org>
Co-committed-by: dakhnod <dakhnod@noreply.codeberg.org>
This is used for setting world clock and setting canned messages for call rejection.
This PR implements setting the canned messages, but unfortunately the feature is somehow not "unlocked"
added sync "steps" from PineTime/InfiniTime to Gadgetbridge.
notes:
* Steps sync works only since InfiniTime 1.7
* InfiniTime advertise "steps" info when the PineTime screen is ON (and a bit after that). hence:
* you should unlock the PineTime screen before end of the day to not loose your latest progress (since the last unlock) at the end of the day;
* when the PineTime screen is ON and you are moving, PineTime will send "steps" count every about 2-10 seconds, and Gadgetbridge may start to treat this data as an Activity (and also displaying it in Activity charts). that data and charts will not be accurate: you should wait for ["Health/Fitness data storage and expose to companion app](https://github.com/InfiniTimeOrg/InfiniTime/projects/4)" project to be implemented on the PineTime side. and meanwhile, in Gadgetbridge open "Device specific settings" and change/uncheck option in "Charts tabs" and "Activity info on device card" to leave only Steps data.
Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/2486
Co-authored-by: ITCactus <itcactus@noreply.codeberg.org>
Co-committed-by: ITCactus <itcactus@noreply.codeberg.org>
This PR aims to add the on-device connection confirmation for the Fossil HR.
This seems mandatory, since, at least on my watch, without said confirmation certain files like the configuration cannot be accesses, e.g. the time on the watch cannot be set etc.
The mystery yet to be solved is how to get the watch to not ask for a confirmation on every new connection or reconnection attempt, since that can get very annoying.
Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/2451
Co-authored-by: dakhnod <dakhnod@noreply.codeberg.org>
Co-committed-by: dakhnod <dakhnod@noreply.codeberg.org>
This affects InfiniTime and Huami
For InfiniTime it probably resulted in the wrong time being displayed
For Huami is resulted to request the wrong data from the band/watch
We used timezone.getDSTOffset() which always returns the DST offset (also in non
DST time)
We need to pass the time being observed to calendar.getOffset() to get the real
offset including DST at that specfic time which then either includes DST offset or not.
- add support for ANC-light mode
- handle multiple GBDeviceEvents
- add fake fw and hw versions to make DBHelper happy
- fix battery charge detection logic
- extract some strings to resources
Nothing Ear (1) are wireless earbuds that support active noise
suppression, transparency mode and several gestures.
This initial commit adds support for:
- reading battery level
- setting audio mode
- setting in-ear auto detection
Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/2403
Co-authored-by: daniele <daniele@noreply.codeberg.org>
Co-committed-by: daniele <daniele@noreply.codeberg.org>
The body_length field in the header is only one byte (byte 8). If it it is set to 256 it overflows to 0 wich results in a corrupt notification. So the maximum body length is 255.
BLE protocol only sends a UTC offset which combines the TZ with DST, if we take
a local timezone as a base and add a raw offset with DST included, DST might
be added again.
This is to fix problems with recorded data on Huami devices where we cannot know
in which timezone data was recorded - only the offset, where we do not know if a
part of it is DST.
* Handle all notifications via GB.
* Create all notification channels in one place.
* Lazily init notification channels.
* Re-create notification channels to update their localized names.
This PR replaces (just for the Fossil Hybrid HR) the current watchface configuration screen with the native Gadgetbridge app manager. Bonus feature: when multiple watchfaces are installed on the watch, they can be switched by tapping on them.
Co-authored-by: Arjan Schrijver <a_gadgetbridge@anymore.nl>
Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/2302
Co-authored-by: Arjan Schrijver <arjan5@noreply.codeberg.org>
Co-committed-by: Arjan Schrijver <arjan5@noreply.codeberg.org>
fixup! huamni: send windspeed in beaufort
BipS: send windspeed as km/h
huami: Always send sunrise and sunset
There is no need to look at send_sunrise_sunset, this is peble spesific
because it could be annoying on that platform (an extra line in the
timeline). On huami devices, the watchface desides what to show.
Signed-off-by: Robbert Gurdeep Singh <git@beardhatcode.be>
Mi5: set supportsSunriseSunsetWindHumidity to true
Signed-off-by: Robbert Gurdeep Singh <git@beardhatcode.be>
huamni: send windspeed in beaufort
Signed-off-by: Robbert Gurdeep Singh <git@beardhatcode.be>
Co-authored-by: Robbert Gurdeep Singh <git@beardhatcode.be>
Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/2247
Co-Authored-By: beardhatcode <beardhatcode@noreply.codeberg.org>
Co-Committed-By: beardhatcode <beardhatcode@noreply.codeberg.org>
Amazfit GTS2/GTR2: Add missing menu items
Fixes#2193Fixes#2230Fixes#2242
Amazfit GTS2/GTR2: Fix setting menu items
At least on the GTR2e, including the "watchface" menu item causes the
configuration request to be ignored. Assuming the other GTS2 and GTR2
variants behave the same, this patch ensures the forceWatchface argument
is set to false when setting display items.
Additionally, we now use the correct resource ID for the default
settings.
Co-authored-by: Vianney le Clément de Saint-Marcq <code@quartic.eu>
Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/2249
Co-Authored-By: Vianney le Clément de Saint-Marcq <vianney@noreply.codeberg.org>
Co-Committed-By: Vianney le Clément de Saint-Marcq <vianney@noreply.codeberg.org>
The Mi app only has a reminder field and no description field, so
I'm assuming we can only send one string.
In bffb8e8f87 it was noticed that the
title was not displaying so I'm changing this for all Huami devices.
It seems that newer firmwares have watchfaces which are a special kind of apps
This means that a simply specifying the layout of widget does not longer work
(At least we do not know how)
This commit fixes bluetooth communication being completely stuck when
Gadgetbridge tries to render widgets (for example when switching force
white mode or when having the notification widget enabled in settings)