Repository navigation
Hardware compatibility: Tab 7S Up 40517, cloud phonebook and Call Home via declared PICG #172
Description
Model and article number
Elvox Tab 7S Up — art. 40517.
Firmware version
System information: SW 2.1.0203 [prod], rev67313-2123 (2025-06-10); FW 1.06; HW 00-02.
Plant type and environment
Due Fili Plus / expected 2FV2 family (the decoded QR planttype was not independently inspected during this troubleshooting). Cloud TLS. Home Assistant Container; exact Home Assistant version not recorded.
What was verified
- Successful cloud SIP registration and renewal.
- Cloud phonebook download and import, after correcting the configured PICG.
- GET_NICKS reply identifying the PICG and the paired mobile clients.
- Call Home rings the physical indoor monitor successfully when its destination is the PICG declared by GET_NICKS.
- View outside displays live outdoor video after enabling outgoing video; listening to outdoor audio also works.
- The phonebook contains four actuators. Their physical operation was not individually verified in this troubleshooting session.
Microphone transmission/two-way audio, doorbell events, door release and voicemail/DND were not separately verified as part of this report. Local/offline operation was not tested.
Changes needed / plant addressing
No code patches were required for the initial registration, phonebook and indoor-call checks. Initial default destinations caused SIP 404 errors for outgoing calls. The local phonebook download failed with a refused connection on port 80. The cloud download initially reported a missing token, although the log showed an accepted GET_INIT_STATUS request without a subsequent GET_INIT_STATUS_REPLY.
After selecting the correct PICG, the cloud phonebook download worked. The imported phonebook provided the SGA, outdoor video destination and door actuator destination. SGA and PICG are distinct on this plant; the outdoor unit is another destination. A targeted GET_NICKS request to the working PICG declared the main indoor monitor, which was then used for Call Home successfully. No ranges of call destinations were tried.
This suggests improving the cloud-download error to distinguish a missing application-level reply from a reply without a token, offering the declared main indoor monitor as a confirmed Call Home destination, and making the import summary explicit that SGA and PICG are independent. Related PRs: #171 (cloud phonebook diagnostics), #173 (confirmed indoor monitor proposal), #174 (import summary).
Outdoor video: problem and verified workaround
View outside initially connected with working outdoor audio, but the card stayed on “Waiting for video” in both Brave and the Home Assistant macOS app. Home Assistant Stream reported Stream has no video. The SIP log showed an accepted call to the phonebook's outdoor destination with an audio media section and video={} in the SDP answer.
The stored config entry had video_enabled: false. The integration maps the pairing QR's video=0 to this value and omits the video media section from its outgoing offers. The original decoded QR field was not independently inspected, so this report does not establish the exact meaning of video=0 on this model.
With Home Assistant stopped and the config entry backed up, changing only video_enabled to true and restarting restored live outdoor video. The outdoor and indoor call destinations were kept unchanged. The owner confirmed that video now works.
PR #175 lets users change this setting through the integration's Settings page, retaining the QR-derived value as the initial default. That UI implementation is covered by automated tests; the hardware verification above used the equivalent stored-data workaround.
Personal thanks
I’ve had this hardware for years and had previously tried to integrate it with Home Assistant by reverse-engineering the app traffic through a man-in-the-middle setup, without success. I also contacted Vimar directly and spoke with a technician, but that did not lead to a workable integration.
This morning I decided to spend the weekend using AI to take another look at the problem. To my surprise, I found this repository and discovered that the work I had been hoping for was already here. Finding it was an unexpected delight, and getting it working on my own system made me very happy. Thank you to the authors and contributors for all the work you’ve put into this project.
Activity
lollox80 commentedon Oct 10, 2026
Hi @andreacasarin, and welcome! Thanks a lot for the report and the three PRs. A 40517 on cloud TLS with a PICG that differs from the SGA is exactly the kind of plant we needed data from. The way you went about it also matches how we work: no address guessing, no range scans, and GET_NICKS sent only to the PICG you had already confirmed.
What happens next:
options_flow.py,strings.json, both translation files andtest_config_flow_steps.py, so after the first merge the others will conflict. Let's go fix(phonebook): distinguish missing status replies from missing tokens #171 → fix(config): clarify phonebook source and independent SGA changes #174 → feat(config): propose the declared indoor monitor for Call Home #173. Once one is merged, please mergemaininto the next branch rather than rebasing it (we only use merge commits).docs/PROTOCOL.mdbefore approving. Expect a few questions there.Thanks again for the kind words, and for not giving up on this hardware after the MITM attempts. 🙂
lollox80 commentedon Oct 12, 2026
@andreacasarin, a status update on your four PRs. Thanks again, and thanks to @Apeiv for reviewing all of them and running #173 on his 40515.
All four are green in CI and reviewed. Before they go into the merge queue, what's missing is a run on your 40517, the plant they come from. Please test each one at the commit below and leave a short note on that PR with what you saw (and the HA version, if you have it):
#171 (
5cf8257): cloud phonebook errors#174 (
c006827): import summarysga_target.#173 (
f4fc8bd): find indoor monitor, from the actual form (Apeiv went through the API, so nobody has seen the form yet)On my side I'll check the PICG = SGA branch on my 40507 (PICG 55001 is also the SGA, Call Home on 55002): it should keep 55002 and say why.
#175 (
98cf288): video in outgoing callsYou can test them one at a time or all together. Apeiv already checked that they merge cleanly with each other. If something doesn't behave as described, a debug log of that step is enough (the logs mask plant data).
Once the notes are in, they go into the queue in the order #171 → #174 → #173 → #175. Since they all touch
options_flow.pyand the translations, I may ask you to mergemaininto the later ones as the earlier ones land.lollox80 commentedon Oct 14, 2026
@andreacasarin, all four PRs are now in v1.0.23, released tonight: #171, #174, #173 and #175. Thanks again for the fixes and for testing them together on your 40517; that run is what let them go out.
Two notes:
mainafter the earlier merges (only tests and two adjacent lines inoptions_flow.py), so I pushed a merge ofmainonto your branches keeping both sides. No change to your code; worth agit pullbefore you branch again from them.Generated by Claude Code
lollox80 commentedon Oct 15, 2026
Closing this one: everything in the report is now in v1.0.23 (#171, #173, #174, #175), and the fully local work goes on in #179.
@andreacasarin, if after updating Call Home, the cloud phonebook or View outside behave differently from before, just comment here and I'll reopen it. Thanks again!