Announcing MQTT/Android bridging app: Zanzito. Beta testers wanted!

Hi, I have implemented a functionality to load the CA certificate directly from Zanzito: would you like to alpha test it to see if it solves your problem, before I release it?
Anyone else is welcome to test it, just send me your email in PM.

thanks!
gl

So i just purchased the app and im loving it so far. But i noticed its not available for family share “yet”. I have multiple devices i would like to have this on through my home and was wanting to know if this will be added to family share or will it need to be purchased on each device?

I would greatly appreciate this as well. Looks very nice.

Hi,
I’m not sure why it says so: I activated the family sharing and I think other users have already taken advantage of it, but I’m not sure of it. The only doubt I have is that the app is not officially released yet, maybe this is the problem. I’ll have a look but it’s an option the developer gives when you first publish the app, then it disappears…

Yea right where the little switch that says “family library” is usually at it just says “unreleased app installed”. Not sure how others got it working though. Maybe an app update changed a setting.

Be patient, unfortunately I have no control over this :confused:

Zanzito will be officially released in a few days, a couple of weeks top :wink:

1 Like

Has anyone here successfully setup find to work with zanzito and home assistant on a raspberry pi? I could really use some help with it. Stayed up until the sun came up yesterday trying to figure it out. I think I have the find server installed after hours of trying to figure out how to install go. I just don’t really know what to do from here.

I had to put the find source dir into go/src/ dir first,

then change line 33 of mqtt.go from:
opts.AddBroker(server).SetClientID(RandStringBytesMaskImprSrc(5)).SetCleanSession(true)
to:
opts.AddBroker(server).SetClientID(RandStringBytesMaskImprSrc(5)).SetCleanSession(true).SetUsername(RuntimeArgs.MqttAdmin).SetPassword(RuntimeArgs.MqttAdminPassword)

then build it.

so now I can launch find with:
cd go/src/find
./find -mqtt localhost:1883 -mqttadmin find -mqttadminpass <secret> &

obviously mosquitto has to be up and running and you have to launch find with an existing username and password.

find mqtt username doesn’t have to be an mqtt admin this way (you can setup the permissions with an acl file in mosquitto), but if it is, it’s easier.

Im having problems reinstalling find to the go/src directory now.

pi@retropie:~ $ cd go/src
pi@retropie:~/go/src $ git clone https://github.com/schollz/find.git
Cloning into 'find'...
remote: Counting objects: 2029, done.
remote: Total 2029 (delta 0), reused 0 (delta 0), pack-reused 2028
Receiving objects: 100% (2029/2029), 6.02 MiB | 2.35 MiB/s, done.
Resolving deltas: 100% (1078/1078), done.
Checking connectivity... done.
pi@retropie:~/go/src $ cd find
pi@retropie:~/go/src/find $ go get ./...
can't load package: /home/pi/go/src/find/api.go:21:2: non-standard import "github.com/boltdb/bolt" in standard package "find"

I’m not an expert of GO in any way, but it may have to do with GOPATH and GOROOT environment variables, try googling it :confused:
I vaguely remember I had to set them before compiling…

Here is mine from using go env , could i see how your paths are set so i could try emulating them

pi@retropie:~/go/src/find $ go env
GOARCH="arm"
GOBIN=""
GOEXE=""
GOHOSTARCH="arm"
GOHOSTOS="linux"
GOOS="linux"
GOPATH="/home/pi/go/path"
GORACE=""
GOROOT="/home/pi/go"
GOTOOLDIR="/home/pi/go/pkg/tool/linux_arm"
GCCGO="gccgo"
GOARM=""
CC="gcc"
GOGCCFLAGS="-fPIC -marm -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build193779933=/tmp/go-build -gno-record-gcc-switches"
CXX="g++"
CGO_ENABLED="1"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"

maybe this can help you, I think your GOPATH is wrong.

Just noticed this awesome app! I felt in love with it right away and bought it! Great work! I had no idea i needed this so much :smiley:

1 Like

Second day with zanzito… and hurray!! the camera component and the tts works flawlessly… Amazing app I must say…
though I am not sure, how the load would be to decode the image in 60s frequency? I am running two Pi’s for home assistant and mosquito+ dashboard separately. The reason of my concern is, I noticed a slowness of my wifi just today. It could be the few ZigBee devices I had connected today as well. @MrMep is there any possibility of activating the zanzito camera on a pre-defined time or triggered by an event? May be in that way, the load can be reduced to a significant level.

Hi, thanks! If I understood well, HA and Mosquitto are running onto two separate machines? Are they connected through Wifi? Generally speaking, I would advice to have them wired to the router through a cable.
The data load of Zanzito’s photos really depends upon the resolution of your cameras: Zanzito chooses automatically the best resolution possibile so it depends. I have two old phones sending a picture every 30 secs, but they use the front camera, so each picture is about 350 Kb, not much for a WiFi network.

At the moment, the camera in Zanzito takes pictures manually or at a predefined interval. I’m working on a set of new commands that Zanzito could accept from the backend, including taking a picture, stay tuned :wink:

gl

yea im still having issues, ive read 300 articles about the gopath and switched it around to 300 different things. i just keep getting an error everytime i try to install find again.

go install: no install location for directory /home/pi/go/projects/find outside GOPATH
        For more details see: 'go help gopath'

I’m probably just gonna scrap this until somebody makes a detailed tutorial on how to get this part going. Lots of other stuff in the app to play with until then.

Thanks a lot. I am just loving this app… Its running flawlessly so far and I cant still believe my long wished TTS play via Wall mounted tablet can be solved so easily. Camera component also works pretty decently… Actually I think the WiFi congestion wasn’t caused by the zanzito messaging as those packets were not that big rather I am pretty convinced that my zigbee devices are creating interference. I live in a mid size apartment, for that size I have too many WiFi enabled devices, apart from that now there are number of Zigbee devices which also use the 2.4GHz Freq.

Yes you are right, for load sharing, I run HASS in a different Pi than the one which runs MQTT server + Dashboard. I tried to see how the messages looked like in the server side by subscribing to topic zanzito/# and wooo! I was afraid to see the messages/patterns coming out from there… Then I checked the CPU usage of the server which was not above 5%! So from CPU perspective, it wasn’t that much. Next in my HASS-Pi machine, the CPU also didn’t increase much (from 5% to 6% only). But when I login to the HASS frontend, the image from Foscam camera loads instantly but the feed from the zanzito camera takes a while (30s to 40s) to load. Now I am not sure which server is slowing down the decoding process…

This app is already a great one and a new request would be too much to ask. But may be you can just keep this in your suggestion list so that if you feel right, you could proceed to enhance…

External system should be able to stop/start camera feeds(enable/disable camera) via a simple MQTT message. Further enhancement of this option could be to trigger the camera by an event and then stop again. e.g. Motion sensor triggers a manual snapshot.

Thanks & Regards

update… [quote=“MrMep, post:522, topic:13885”]
I’m working on a set of new commands that Zanzito could accept from the backend, including taking a picture, stay tuned
[/quote]

During re-reading your comment, I figured that you already are doing what I was suggesting :slight_smile: Nice… So I am tuned now and waiting for that update to roll…

Hi all,
a new Zanzito’s version is available on the play store. Here’s what’s new:

  • Remote administration (commands and preferences);
  • BREAKING CHANGE: on demand heartbeat is now under remote commands;
  • Custom CA certificate (for TLS connections) loaded directly into Zanzito;
  • Removed preference for main notification persistency;
  • Added option to FIND integration: active at home only;
  • Bug fixing;

With Remote Administration you can now set almost any preference via MQTT and send a few commands, such as:

  • restart
  • reconnect
  • take picture
  • send heartbeat
  • set bookmark
  • send logs

Please, refer to the User manual for further details.
As announced, the option to turn off the persistent notification has been removed, as per new Google requirements, sorry :confused:

There was a problem with CA certificate for TLS connections on some devices: now you can load it directly from Zanzito and the problem should be fixed.

I received a number of issues from various users: lagging and some crashes. These reports come through android directly, but they are not much detailed. Nonetheless, I think I fixed many of them, let me know!

Thanks,
gl

4 Likes

@MrMep excited to see the new changes… However, have you got a chance to update the user-manual specially for the remote administration ?

Hi, yes, it’s all documented here, there’s a new Technical addendum.