You can read it with the Qalcosonic W1 Android app.
If all those units have NFC, I don’t know.
Currently I only read the water usage in m3 at an interval of 1 minute.
More data might come in the future as I ahve to debug it myself.
There are no publicly available datasheets that I have found
That app also requires you to create an Axioma account.
I did not bother, as the old version I linked can do everything without an account.
However, even in the old app you still need authorization for writing values.
Axioma use a ST25DV04K-Chip in the Qalcosonic-W1. The Datasheet give you all informations about the rf-commands, but nothing about the Axioma commands you need to communicate with the application. You find the relevant commands in the Qalcosonic_9_apkcombo.com.apk.
@waltertheodor:
I took a look at the APK and decompiled it.
However, I can’t quite make sense of it as a lot of it is missing.
Can you share your findings, perhaps?
I decompiled the app with JADX. Go to com.axioma.qalcosonic.configurator class: LoyalityCardReader. In the first 300 lines you see the axioma internal commands. From line 2200 to line 2445 the functions are defined.
I’m sorry, but there is no option in this chat to upload the source code. However, I can send you an email.
How are you dealing with the issue of energy consumption? The meter has a built-in battery that lasts approx. 10 years. According to the ST25dv04k data sheet, the RF part of NFC communication can be powered by energy harvesting. However, I don’t know whether this also supplies the rest of the logic. This could mean that the battery would be empty after a short time if, for example, it were queried every minute.
I can confirm energy harvesting is being used. At least it’s working on the NFC side of things.
However, I do not know if the V_EH pin is actually being used by the circuitry as I will not take the appliance apart to check and I don’t have any diagrams.
New version is online. It now uses ESP-IDF instead of Arduino and give more sensors (flow, water temperature and maybe battery level (not verified yet)).
@dbmaxpayne, thanks a lot. Your meter-project works great. I’m using it for six days with excellent results.
I have few minor issues/concerns:
“[E][qalcosonicnfc:210]: Error in getInventory: No card detected!” This error occurs consistently on every other iteration. In the code I see, that after that error the error-flag is set and on next iteration the reset of NFC is performed. After that the reading works again but only once.
To get updates every 5 minutes I’ve configured the update interval to 150 seconds (because every second cycle fails). That workaround works well.
I’m having concerns about battery drain. Any idea what a proper interval should be?
The reported flow rate isn’t correct for my meter. I’m always getting 60L (0,060m3).
@bobocher:
I’m happy to hear that you got it working.
Regarding your questions:
1&2: I might look into that, however, at the moment I don’t have the time for it as it is working sufficiently for now. I’ll let you know.
3: So far the battery has moved from 89 to 88% for me in like three months. However, I did tens of thousands of readouts during my testing, so real-life usage is not something I can provide as of now.
Another question is if the value is indeed the battery level or something else.
I found this in the general M-Flow documentation.
4: I have noticed the same for me. I will dive into that again once I have the time. You can disable this entity for now.
The incorrect water flow should be fixed now.
Additionally I have checked for the errors you were getting and I don’t have them. Maybe try relocating the NFC antenna a little bit.
Thank you.
It looks like the file qalcosonicnfc.h wasn’t uploaded, so compiling fails at the moment.
You’re probably right about the meter placement. Currently, it is attached with double‑sided tape to the side of the meter - specifically the side where the top cover attaches. Perhaps those 2 mm of tape are reducing the signal and causing disconnections.
I wasn’t completely satisfied with the way I soldered the two boards, so I’m going to give it another try. At the same time, I didn’t want to disassemble the working meter. Therefore, I’ve ordered a second PN5180 and another ESP32‑S3. I plan to build a second meter during the holidays and let you know if it shows the same issue.
By the way, what’s your preferred place to discuss your meter: this topic or the GitHub project page (Issues or Discussions)?
I see the header file in the Github component.
What error are you getting?
I have the NFC board placed on top of the meter (the side with the display) and it is encased in a plastic box with roughly 1.5mm thickness.
So tape should probably not mess too much with the transmission.
However, the whole system is somewhat picky about the antenna placement.
As further chats are mostly regarding the Github project, the discussion is probably more suited there as this is a more general thread about the meter.
Feel free to write wherever you like, though.