TylerWilliamson / QuickWeather

Weather at a glance! Current and forecast weather for anywhere in the world!
https://play.google.com/store/apps/details?id=com.ominous.quickweather
GNU General Public License v3.0
123 stars 10 forks source link

Add Gadgetbridge support #38

Closed coxackie closed 2 years ago

coxackie commented 2 years ago

It would be great to add the possibility of feeding weather data to Gadgetbridge. As you can see here, only two apps seem to be doing it, out of which one (Weather notification) has not seen any development lately, and the other is quite localised. There has already been effort to do this in Geometric weather at this PR, but it was abandoned due to licencing issues, which do not seem to affect this app. Hopefully, this makes it easier to provide support, if this is something that seems worthwhile.

TylerWilliamson commented 2 years ago

So I am interested in this. I actually have a Pebble 2, so I could test and make use of this. I'll check the licensing and see if it's possible

TylerWilliamson commented 2 years ago

So this is absolutely a doable request. As of now, I can use Gadgetbridge to send weather information from QuickWeather to my Pebble 2. However, there are some caveats:

  1. I will need to create a pull request for Gadgetbridge. Right now, it doesn't recognize QuickWeather as a weather provider. If I install "Weather Notification", then I can send weather data from QuickWeather as "Tiny Weather Forecast Germany". I'll put together a pull request so that I can do this officially.
  2. Gadgetbridge does not expose its WeatherSpec as an API. I will put in an issue for them to do so. This will allow 3rd-party data providers, like QuickWeather, to have an official way to send data to Gadgetbridge and not rely on copying files between repositories.
  3. I only own a Pebble 2. I will need other users to report whether or not there are issues.
coxackie commented 2 years ago

Hi, and many thanks for taking this up!

  1. That's great!
  2. Yes, I think you should. Their wiki is also rather uninformative on the subject in general. I think they may have not had a lot of interest on this in general.
  3. I can certainly help on this - I have a Mi Band 6 (ethically anti-diametric from your Pebble), and will test when you need.
TylerWilliamson commented 2 years ago

Gadgetbridge Pull Request #2830 created. Instead of exposing the interface as an API, I just made a generic BroadcastReceiver for weather data. Users can use QuickWeather or any app which implements the spec. If Gadgetbridge approves the PR, I'll finish implementing the spec in QuickWeather and release it as part of the next release

coxackie commented 2 years ago

That's great, as it also makes it easy for other weather apps to follow suit. Let's hope the Gadgetbridge devs act on it soon. They seem to just have released a new version - 0.69.0, so it may take a couple of months for this to appear, even if accepted. Fingers crossed, anyway!

TylerWilliamson commented 2 years ago

Support added for Gadgetbridge in 2.2.4. Should work with Gadgetbridge 0.71.0 or higher

fearlessgeekmedia commented 2 years ago

I'm using the version of Gadgetbridge specifically made for the Bangle.js with my Bangle.js 2 watch. It doesn't seem to be working with that. I know Tiny Weather Forecast Germany needs the actual package name for this custom version of Gadgetbridge. Is it possible that could be the issue? It's looking for a different package? The Bangle.js specific version is com.espruino.gadgetbridge.banglejs.

TylerWilliamson commented 2 years ago

Yes, your Gadgetbridge is not receiving the broadcast because it has a different package name. That is not hard to fix though. Are there any additional package names that you are aware of?

fearlessgeekmedia commented 2 years ago

I'm not aware of others off the top of my head though there could be more variations of Gadgetbridge. The way Tiny Weather Forecast Germany handles it is by asking the user to put the package name in themselves just in case someone has a custom version of it. If you leave the field blank, it defaults to the normal package name.

mskian commented 2 years ago

@TylerWilliamson

Today I got an update for Gadgetbridge working perfect and Got a Weather update on My MI band 5

TylerWilliamson commented 2 years ago

@fearlessgeekmedia - Version 2.2.6 was just released, which should push weather information to all Gadgetbridge variants. Please give it a test (Note: 2.2.6 is available on GitHub, "Open Beta" on Google Play, and will be available on F-Droid as soon as they build again)

Additionally, there were two other Gadgetbridge fixes:

  1. The temperatures (especially in Fahrenheit) should be closer to what you are seeing in the app (there was a conversion issue)
  2. If your device shows a "tomorrow" forecast (such as my Pebble 2), it will now actually show the "tomorrow" forecast (the daily forecast list should start with tomorrow's forecast, not today's).

Please let me know in this thread if you notice any issues with this feature, such as inaccurate weather on your devices.

fearlessgeekmedia commented 2 years ago

Awesome. I will give it a try ASAP, probably sometime tonight.

fearlessgeekmedia commented 2 years ago

Well I'm giving it a try. So far, my watch isn't receiving the weather data from Gadgetbridge for Bangle.JS though. It's getting other data from Gadgetbridge for Bangle.JS, however. Is there any way I can confirm that QuickWeather is indeed communicating with Gadgetbridge?

On Sun, Oct 16, 2022 at 12:30 PM Tyler Williamson @.***> wrote:

@fearlessgeekmedia https://github.com/fearlessgeekmedia - Version 2.2.6 https://github.com/TylerWilliamson/QuickWeather/releases/tag/2.2.6 was just released, which should push weather information to all Gadgetbridge variants. Please give it a test (Note: 2.2.6 is available on GitHub, "Open Beta" on Google Play, and will be available on F-Droid as soon as they build again)

Additionally, there were two other Gadgetbridge fixes:

  1. The temperatures (especially in Fahrenheit) should be closer to what you are seeing in the app (there was a conversion issue)
  2. If your device shows a "tomorrow" forecast (such as my Pebble 2), it will now actually show the "tomorrow" forecast (the daily forecast list should start with tomorrow's forecast, not today's).

Please let me know in this thread if you notice any issues with this feature, such as inaccurate weather on your devices.

— Reply to this email directly, view it on GitHub https://github.com/TylerWilliamson/QuickWeather/issues/38#issuecomment-1280003666, or unsubscribe https://github.com/notifications/unsubscribe-auth/A3HGA5XY4B2K7H466VGYN6DWDQUSZANCNFSM57AYWGMA . You are receiving this because you were mentioned.Message ID: @.***>

fearlessgeekmedia commented 2 years ago

Actually I just realized Gadgetbridge needed an update too. So I'm doing that now.

On Sun, Oct 16, 2022 at 7:38 PM Michael Williams < @.***> wrote:

Well I'm giving it a try. So far, my watch isn't receiving the weather data from Gadgetbridge for Bangle.JS though. It's getting other data from Gadgetbridge for Bangle.JS, however. Is there any way I can confirm that QuickWeather is indeed communicating with Gadgetbridge?

On Sun, Oct 16, 2022 at 12:30 PM Tyler Williamson < @.***> wrote:

@fearlessgeekmedia https://github.com/fearlessgeekmedia - Version 2.2.6 https://github.com/TylerWilliamson/QuickWeather/releases/tag/2.2.6 was just released, which should push weather information to all Gadgetbridge variants. Please give it a test (Note: 2.2.6 is available on GitHub, "Open Beta" on Google Play, and will be available on F-Droid as soon as they build again)

Additionally, there were two other Gadgetbridge fixes:

  1. The temperatures (especially in Fahrenheit) should be closer to what you are seeing in the app (there was a conversion issue)
  2. If your device shows a "tomorrow" forecast (such as my Pebble 2), it will now actually show the "tomorrow" forecast (the daily forecast list should start with tomorrow's forecast, not today's).

Please let me know in this thread if you notice any issues with this feature, such as inaccurate weather on your devices.

— Reply to this email directly, view it on GitHub https://github.com/TylerWilliamson/QuickWeather/issues/38#issuecomment-1280003666, or unsubscribe https://github.com/notifications/unsubscribe-auth/A3HGA5XY4B2K7H466VGYN6DWDQUSZANCNFSM57AYWGMA . You are receiving this because you were mentioned.Message ID: @.***>

fearlessgeekmedia commented 2 years ago

OK, it's working now. It took about ten minutes for it to work properly for me, I think.

TylerWilliamson commented 2 years ago

Glad to hear! I'm closing this issue

mskian commented 2 years ago

@TylerWilliamson if possible Update app readme and Gadgetbridge weather wiki docs about QuickWeather Support and usage