Tasker + goTenna! A portable weather repeater is born!

I’ve had my goTenna devices for 2-3 days, and I’m already cooking up some fun ideas, mostly because the nearest node to me is about 30 miles away, so not feasible to contact them directly. I’m left testing with my own nodes and devices.

After upgrading them to current, I decided to create a Tasker profile on my Android, which uses OpenWeatherMap, retrieves the weather via the OWM API key, parses the JSON, turns that into a message that is then pushed through the goTenna app to my node, on a regular basis.

Basically I’ve created a broadcast, weather station/repeater that anyone in the local area who passes by can retrieve. I’m not using the SDK (yet), just testing some capabilities.

This has some other interesting implications as well, for things like say… campsites, to get details about locations, dangers, alerts (non-Emergency alerts, like impending storms or other things). Put a node on the top of a mountain and have it broadcast conditions, weather alerts and other details.

It would be nice if the goTenna app itself, could support tags/categories, so I could tag these items as ‘Notice’ instead of a general ‘Chat’ style shout, and filter based on that (include/exclude filters).

It also got me thinking about building communities within the app; “Private” group shouts, shout to specific people but not all-in-range, and so on. Having “Group Shouts” could be nice, again leveraging tags, and possibly a “Public” vs. “Private” bit set on the message, which would be slightly different than the 1:1 shout.

Some fun things to think about.

6 Likes

Love hearing about how you were able to create a broadcast weather station using goTenna Mesh! Now if only it could also lower the summer humidity! :wink:

Any other ideas/tests in the pipeline?

1 Like

I’m curious about how you got Tasker to send a shout through the gotenna app. I didn’t know Tasker could do that but I’ve only done some of the simple profiles in their wiki. Would be handy for me and my weather relay nodes to know they are still operational. Can you post the task you created?

1 Like

I use “Launch App” to launch goTenna, then AutoInput to navigate through the interface of the app.

The one bit that is missing, is there’s no field_id for the “Send” button, so I have to tap on it by x,y coordinates. If goTenna updated their app to ensure there was a field_id for every element, that would make this work on every device without having to change that x,y for each screen resolution.

The relevant pieces look like this:

A6: Launch App [ App:goTenna Data: Exclude From Recent Apps:Off Always Start New Copy:On ]
A7: AutoInput Action [ Configuration:Type: Text
Value: Shout
Action : Click Timeout (Seconds):20 ]
A8: Set Clipboard [ Text:Testing from Tasker Add:Off ]
A9: AutoInput Action [ Configuration:Type: Text
Value: Write your message
Action : Paste Timeout (Seconds):3 ]
A10: AutoInput Action [ Configuration:Type: Point
Value: 1368,2716
Action : Click Timeout (Seconds):20 ]
A11: Back Button
A12: Kill App [ App:goTenna Use Root:Off ]

I’m going to add some logic to the Tasker task to ensure that Bluetooth is enabled and that I force it to pair to the goTenna, instead of any other BLE or other devices it decides to find in the area.

Any other ideas, thoughts, suggestions?

Or if they added intents. I see Tasker can send intents.

The biggest problem I’m running into with testing, is that it takes anywhere from 3-4 minutes to… never… to have two goTenna devices sitting a few feet away from each other, to receive messages. It’s very spotty and sporadic.

My Nexus 6 has a thermometer in it. I’m going to see if I can pull the temperature from the device via Tasker.

Are you on the latest software/firmware? I’ve not had that issue in my testing. I’m easily about 15-20’ between devices when testing. Maybe it is the close proximity? But no, I have two gotenna meshes on my desk and can talk to both without issues.

I do a lot of pretty complex things with Tasker, we should compare notes and profiles/tasks, probably not here, as much of it isn’t specific to goTenna.

For example, I force my GPS to ‘Coarse’ mode when, and only when an app I authorize to use the GPS is active, eg: Waze. When I launch Waze, my GPS gets turned on, forced to “Low” (Coarse, no agps, no use of the data network) mode, and Waze continues.

If I jump out of Waze while it’s running, GPS is stopped until I go back into Waze, where it fires up again (in “Low” mode, always).

If an app that I haven’t authorized attempts to acquire my location or silently enable GPS or change it froom “Low” to “High” (data network), Tasker jumps in, drops GPS, firewalls the app off from using the network and then forcibly kills it.

I have audio prompts that speak aloud when this happens, and it’s pretty funny to watch how many dozens of apps attempt to do this.

Tasker + SABS + NoRootFirewall are a great combination!

Unfortunately a lot I’ve done with Tasker has slowly ground down as Android security locked things down over the years. The Nexus 6 had a bad bluetooth bug so I had a tasker profile that routinely restarted bluetooth if the stack didn’t respond. But that was eventually resolved, I think, with an Android update. So I don’t have much to compare with Tasker. It is a neat tool.

I’ve added a few great updates to my Tasker goTenna Weather Station:

  • It now picks up the current location of the device (previously, it was hard-coded into the URL fetched), so it self-heals if the mobile device or goTenna is relocated to a new site
  • It correctly interpolates the cardinal directions for wind direction, using a very small bit of powerful Javascript I threw together
  • I’ve added more weather details, which ultimately exceeded the maximum character limit, so now sends n+1 messages if it overflows

Next up:

  • Send an SMS or email with a location and have the weather reflected through the goTenna device paired with it, with obvious abuse and throttling built in, of course.

I’d love to be able to send small images, like a very small weather map or compass, but that doesn’t appear to be possible at the moment.

I’ll still keep hacking on things, but any suggestions would be welcome and appreciated! :smiley:

3 Likes

We have talked at length about pictures and it just won’t work because of bandwidth constraints. I asked Gotenna to support Tasker directly but I don’t think they will. I also looked at creating my own app with Tasker support using the SDK but other things have taken up my time.

You should look at the SDK. What you are doing could be created with the SDK rather easily I think.

2 Likes

Until there’s a way to interact with the goTenna from a laptop/desktop/embedded machine, it’s not worth writing another mobile app to work with it. I don’t see Python bindings either.

I’ll stick with what I have for now… thanks!

1 Like

I seriously hope they release the USB SDK soon!!!

1 Like