1
0
mirror of https://codeberg.org/Freeyourgadget/Gadgetbridge synced 2024-11-13 13:39:26 +01:00
Commit Graph

544 Commits

Author SHA1 Message Date
Daniele Gobbetti
e00d234f09 Add GENERIC_PHONE and GENERIC_CALENDAR NotificationType handling 2024-04-10 14:20:20 +02:00
Arjan Schrijver
43fddd0110 Dashboard view (#3478)
This adds a new dashboard-type view to Gadgetbridge. The new dashboard activity displays several widgets with aggregated statistics from multiple devices. New preferences are added to allow configuration of the dashboard and its widgets. A new bottom navigation bar is added to switch between the Dashboard and Devices views.

Some issues that prompted this feature and provided inspiration for the implementation:
- https://codeberg.org/Freeyourgadget/Gadgetbridge/issues/301 (More Intuitive User Interface)
- https://codeberg.org/Freeyourgadget/Gadgetbridge/issues/3074 (Ability to merge historical data from several devices)

Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/3478
Reviewed-by: José Rebelo <joserebelo@noreply.codeberg.org>
Co-authored-by: Arjan Schrijver <a_gadgetbridge@anymore.nl>
Co-committed-by: Arjan Schrijver <a_gadgetbridge@anymore.nl>
2024-04-04 19:28:04 +00:00
José Rebelo
88a1e7bb59 Huawei: Group pace values in activity summary pace group 2024-03-30 21:42:18 +00:00
Martin.JM
83d2aaf30e Group new Huawei workout activity entries 2024-03-30 22:07:02 +01:00
Martin.JM
ff37766510 Huawei workout change strings to ActivitySummaryEntries 2024-03-30 21:34:27 +01:00
José Rebelo
81aef0bf35 Add support for multiple weather locations
Introduce the concept of primary and secondary weathers:

* Primary weather keeps the same behavior as previously across all weather providers, so it's non-breaking. This location is not necessarily the current location, just the primary weather location set by the user.
* The GenericWeatherReceiver now has a new extra WeatherSecondaryJson, that receives a json list with secondary weather locations.

It's guaranteed that the primary weather always exists, so the list of WeatherSpecs provided to devices is never empty. Update all support classes accordingly.
2024-03-29 21:10:40 +00:00
Daniel Dakhno
8cf87a418b Added scannable-only devices (#3621)
Co-authored-by: Daniel Dakhno <dakhnod@gmail.com>
Co-committed-by: Daniel Dakhno <dakhnod@gmail.com>
2024-03-28 21:07:05 +00:00
g_p
7cb7c0ea8a Nothing CMF Watch Pro: Add weather support
This patch adds support for current weather, and next 6 days' weather. Condition mapping added to align with the available icons on the watch.
It also transmits the hourly condition and temperature for the coming 24 hours as part of the update.

Tested on CMF Nothing Watch Pro firmware 11.0.0.50 with weather data cooming from Breezy Weather (using Accuweather)

For current day:
- Weather symbol shows
- Name of current location shows (long names scroll)
- Current temperature shows
- Written condition shows (e.g. "Cloudy")
- Min/max temperatures show
- Air quality indicator shows

For upcoming days:
- Weather symbol shows
- Min/max temperatures show
- Name of day shows (patch doesn't touch this)

Nothing CMF Watch Pro: Use putShort() for air quality indicator; fix max location length

- Using putShort() as suggested from code review - tested to give same result
- Reduced max location length to 16 bytes, as 32 was not working

Nothing CMF Watch Pro: Better handle limited data from weather providers

- Check max length of daily and hourly datasets
- Populate with dummy data if insufficient data available
- Use null as the weather condition in any situation where no data available

Nothing CMF Watch Pro: If hourly weather data is missing, use current data

This should create a better fallback behaviour if a weather source is lacking hour-by-hour data.
Assuming the current data will apply in the next hour is less messy than showing placeholder (inaccurate) figures.

Nothing CMF Watch Pro: Allow location names of up to 30 characters, improve string processing
2024-03-25 22:45:36 +00:00
Damien 'Psolyca' Gaignon
88043aa813
[Huawei] Add Huawei Watch Ultimate support 2024-03-21 19:06:02 +01:00
Vitaliy Tomin
014b453693
[Huawei] Add Huawei Watch GT4 support 2024-03-20 13:41:49 +01:00
José Rebelo
ee6340c848 Amazfit Bip 3: Initial support 2024-03-17 13:06:31 +00:00
José Rebelo
fcc930749e Sony LinkBuds: Initial support 2024-03-15 23:36:50 +00:00
José Rebelo
96668368c5 Xiaomi Smart Band 8 Active: Initial support 2024-03-06 20:45:13 +00:00
Daniel Dakhno
d0f8eccd75 Device connection: removed references to ACTION_START 2024-03-05 00:11:32 +01:00
Martin.JM
51024f7b5e Add smart wakeup interval 2024-02-24 09:56:56 +01:00
JdM
64c024a5ce Added support for xiaomi redmi watch 3 (#3582)
Co-authored-by: JdM <julien@rmbi.ch>
Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/3582
Co-authored-by: JdM <judemont@noreply.codeberg.org>
Co-committed-by: JdM <judemont@noreply.codeberg.org>
2024-02-18 13:55:14 +00:00
Damien 'Psolyca' Gaignon
6a576202a9
[Huawei] Add Huawei Watch Fit gadget 2024-02-13 14:12:23 +01:00
José Rebelo
c472f0ab9a Redmi Watch 2: Experimental support 2024-01-29 18:14:34 +00:00
Damien 'Psolyca' Gaignon
0e5545191d
Add Honor Magic Watch 2 2024-01-28 20:46:27 +01:00
José Rebelo
5999eb01d0 Nothing CMF Watch Pro: Initial support 2024-01-28 18:46:13 +00:00
Denis Pitzalis
207a2a9b01 initial support for sony WI-SP600N (#3522)
Initial support for sony wi-sp600n reported working . minor difference with the inspiring wf-sp800n

Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/3522
Co-authored-by: Denis Pitzalis <denics@free.fr>
Co-committed-by: Denis Pitzalis <denics@free.fr>
2024-01-27 23:21:11 +00:00
José Rebelo
0e56af4ce9 Xiaomi Watch S3: Experimental support 2024-01-17 20:29:06 +00:00
MrYoranimo
7f68dc5449 Set default year for date-of-birth to 1970
Prevent undefined behavior on devices that do not have a range check on
the year from the DOB before calculating someone's age
2024-01-17 20:16:38 +00:00
MrYoranimo
c9d880456a Xiaomi Smart Band 8 Pro: add experimental support 2024-01-17 20:16:38 +00:00
MrYoranimo
1d1ef9fba6 Xiaomi Watch S1: add experimental support 2024-01-17 20:16:38 +00:00
MrYoranimo
04460fc3f4 Xiaomi Watch S1 Pro: add experimental support 2024-01-17 20:16:38 +00:00
Oleg Afanasyev
414cf5e472 Sport Activity Summary: fix group order instability
Previously group order was determined on the fly by available entries order or appearance.
This commit changes it to use group definition order.
2024-01-17 18:16:01 +00:00
José Rebelo
9095ffad8b Mijia MHO-C303: Initial support 2024-01-17 17:55:15 +00:00
FYG_license_bot_ignore_me
4c7476845b Update license headers and CONTRIBUTORS file 2024-01-10 19:01:48 +01:00
Damien 'Psolyca' Gaignon
0c22ecdd51
Huawei: Add initial support for Huawei-Honor 2024-01-07 23:18:08 +01:00
José Rebelo
ab894ae433 Extract hardcoded activity summary entries to constants 2024-01-06 13:54:06 +00:00
José Rebelo
05d8f99312 Nothing Ear (Stick): Initial support
- Refactor common coordinator logic to AbstractEarCoordinator
- Increment message counter on the stick
- Make audio modes translatable
2024-01-05 09:35:03 +00:00
José Rebelo
4d5ce069aa Nothing Ear (2): Initial support 2024-01-04 19:15:07 +00:00
José Rebelo
fa6489b300 Redmi Smart Band Pro: Experimental support 2024-01-01 12:18:36 +00:00
José Rebelo
09fbc2665b Redmi Watch 2 Lite: Experimental support 2023-12-24 16:38:11 +00:00
José Rebelo
b535784117 Mijia LYWSD03MMC: Initial support
Same protocol as LYWSD02, but does not support setting the time.
2023-12-22 12:35:35 +00:00
José Rebelo
149b6236a0 Mijia LYWSD: Make support class generic 2023-12-22 12:26:15 +00:00
Arjan Schrijver
4c0750e75a Add missing navigation actions to GMaps handler 2023-12-21 11:16:23 +01:00
José Rebelo
48e1bc1a8a ColaCao 2021 / 2023: Initial support
Reports in #3455 and #2955 mention that everything works, except HR,
which crashes the devices (they do not have an HR sensor), so we just
disable HR support.
2023-12-14 21:53:30 +00:00
José Rebelo
cb3e10f07a Xiaomi: Update stress ranges to match watch 2023-12-12 20:46:59 +00:00
José Rebelo
128aed005b Xiaomi: Parse daily summary and workout gps tracks 2023-12-12 14:12:00 +00:00
José Rebelo
108307c711 Redmi Smart Band 2: Experimental support
Characteristics taken from #3274
2023-12-11 13:58:00 +00:00
José Rebelo
4dbf9bb8ac Huami: Toggle phone silent mode from band 2023-12-11 10:50:31 +00:00
MrYoranimo
435d41aca0 Huami/Xiaomi: centralize handling of device state events
Gadgetbridge can be configured to perform an action when a
Huami device is taken off or the user was detected to fall asleep or
wake up. This functionality was specific to Huami devices, but this
changeset moves this upstream to the AbstractDeviceSupport class in
combination with new GBDeviceEvents.

Now that the ADS has centralized support for this functionality, the
same logic can be used for other devices. In this case, an
implementation is added for supported Xiaomi devices.
2023-12-09 00:20:22 +01:00
José Rebelo
6984572d33 Xiaomi: Allow notification open on phone 2023-12-08 12:12:35 +00:00
Andreas Shimokawa
b44b0fec7e Divoom Pixoo: Initial experimental support
Works:
- notifications
- call notification
- set time
- setting brightness
- setting 24h/12h format
- sending weather

Note
- this is implemented using using the classic bluetooth serial protocol, the
  device can do BLE, but I don't know how to use it, as I did not have the
  offical app to sniff.
- The information about the protocol comes from here
  https://github.com/jfroehlich/node-p1x3lramen/blob/main/source/devices/pixoo.js

TODO:
- Enable beep? Possible? I heard it beep once at least when switching it on
- Getting out of factory mode? Why does it always play animations even when I
   switch to the clock?
- Implement switching modes (can be done with the button)
- Implement sending own images and animations
- Firmware update?
- ...
2023-12-06 15:56:18 +01:00
José Rebelo
e6cb15d9eb Mi Watch Color Sport: Experimental support 2023-12-02 11:56:23 +00:00
José Rebelo
5be3543fa3 Xiaomi Smart Band 7 Pro: Experimental support 2023-11-29 21:18:52 +00:00
MrYoranimo
6933b8a793 Add device coordinator for Xiaomi Watch S1 Active 2023-11-29 20:27:36 +01:00
José Rebelo
e53c67e8bf Xiaomi: Fix SpO2 2023-11-26 21:01:32 +00:00