-
Notifications
You must be signed in to change notification settings - Fork 36
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Problem reading data from TCM97001 Sensor #42
Comments
is there something i can provide, to help identifiying these sensor? |
Hi! Can you still provide the output with command 10;rfdebug=on; ? and a link to the device (aliexpress? whatever). You also mentionned that some other software can recognize it, can you name them? we could have a look at their implementation |
https://manuall.de/auriol-ian-279818-wetterstation/ As i remember, there is only crap comming in with rfdebug=on using these sensor... the buffer is running full and only posts rubbish.. Here is my sample implementation, from https://forum.arduino.cc/index.php?topic=136836.45, which is able to detect the signal and all of it's used bits and timings..... the identification of the right bits for tem/hum/channel/e.t.c is straight forward your existing implementation since the dialect is the same... only the timings seems to be different.
|
Oh so this is a new Auriol device or at least one that we don't have (Plugins 44, 45, 46 ,47) The fact that preamble is 8500us could be the issue here and may explain why you are getting such garbage as we stop to drop after 5000us for single pulse. Also this code example you provided mentions very short pulses (50us) so we need to change another value there too: We also have an new branch based on interrupts which provided better results on 'busy' devices but usually unless you did something like customization there your device should not be "busy". |
Now i'm working with RFLink-V8 implementation, as you suggested due too the interrupt implementation.. First of all, some general small amendment requests for Auriol: (#41) plugin_46.c line 155 changed, since Auriol also has 3 channels: plugin_46.c line 155 line 193 added output for current channel: 4_Display.h line 54 added stub method for display_CHAN: 4_Display.cpp line 198: added method for display_CHAN:
Please forget my last post - i mixed something up in my head and guided you to the wrong sensors, which already works with rflink and my suggested changes from above. The correct sensor to implement is this one: https://www.ebay.de/p/591828645 here are some console outputs with DEBUG=TRUE:
|
ok i will have a look. note that V8 will probably not compile very well for you it's a work in progress. if you need a V8 which compiles properly I can give a link to my personal repo for now |
did you compile V8 with flag "RFLINK_ASYNC_RECEIVER_ENABLED" ? this how you turn on "interrupt based" reading |
based on this post : https://forum.fhem.de/index.php?topic=111531.0 your sensor is a Steinbach_Pool CUL_TCM97001 model Prologue |
:-( yes, that's right... TCM97001.... should be supported since R34 (written in readmeRfLink.txt)... but dosn't work with mine...!? |
yes ... short story this project is a fork from RFlink which is not opensource anymore. That said TCM97001 is used by many vendors and they dont use it the same way so we need to look at it. First we need a clean signal! what you provided earlier is really a mess. If you want to try ASYNC_RECEIVER please use my repo (until we commit it here) https://github.com/cpainchaud/RFLink branch=master |
yeah... i already realized it by reading the description :-D maybe i have time tomorrow an try the async implementation.. here are again some raw informations (also included in the first post) i captured with these sensor last year to readout data... I used the sample implementation above.
you can read it like a concatenation of: in my case for these signal: 3755 LOW -> 1
does that help? |
I've got problems to compile...... something wrong with the included tzapu lib.
if i uncomment WiFiLib i've got
|
Hi,
Reclone my repo and retry, i am sorry for the mess it is right now!
…On Sun, Feb 14, 2021 at 3:07 PM Dattel ***@***.***> wrote:
If you want to try ASYNC_RECEIVER please use my repo (until we commit it
here) https://github.com/cpainchaud/RFLink branch=master
I've got problems to compile...... something wrong with the included tzapu
lib.
Processing doitESP32 (platform: espressif32; board: esp32doit-devkit-v1; framework: arduino)
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Verbose mode can be enabled via `-v, --verbose` option
CONFIGURATION: https://docs.platformio.org/page/boards/espressif32/esp32doit-devkit-v1.html
PLATFORM: Espressif 32 (3.0.0) > DOIT ESP32 DEVKIT V1
HARDWARE: ESP32 160MHz, 320KB RAM, 4MB Flash
DEBUG: Current (esp-prog) External (esp-prog, iot-bus-jtag, jlink, minimodule, olimex-arm-usb-ocd, olimex-arm-usb-ocd-h, olimex-arm-usb-tiny-h, olimex-jtag-tiny, tumpa)
PACKAGES:
- framework-arduinoespressif32 3.10004.210126 (1.0.4)
- tool-esptoolpy 1.30000.201119 (3.0.0)
- toolchain-xtensa32 2.50200.80 (5.2.0)
Converting RFLink.ino
LDF: Library Dependency Finder -> http://bit.ly/configure-pio-ldf
LDF Modes: Finder ~ chain+, Compatibility ~ soft
Library Manager: Installing tzapu/WiFiManager @ ^2.0.4-beta
Warning! Could not find the package with 'tzapu/WiFiManager @ ^2.0.4-beta' requirements for your system 'windows_amd64'
Found 27 compatible libraries
Scanning dependencies...
Dependency Graph
|-- <PubSubClient> 2.8.0
|-- <WiFi> 1.0
Building in release mode
Compiling .pio\build\doitESP32\src\10_Wifi.cpp.o
Compiling .pio\build\doitESP32\src\1_Radio.cpp.o
Compiling .pio\build\doitESP32\src\2_Signal.cpp.o
Compiling .pio\build\doitESP32\src\3_Serial.cpp.o
Compiling .pio\build\doitESP32\src\4_Display.cpp.o
Compiling .pio\build\doitESP32\src\5_Plugin.cpp.o
Compiling .pio\build\doitESP32\src\6_WiFi_MQTT.cpp.o
Compiling .pio\build\doitESP32\src\7_Utils.cpp.o
Compiling .pio\build\doitESP32\src\8_OLED.cpp.o
Compiling .pio\build\doitESP32\src\9_Serial2Net.cpp.o
Compiling .pio\build\doitESP32\src\Plugins\Plugin_001.c.o
Compiling .pio\build\doitESP32\src\Plugins\Plugin_002.c.o
Compiling .pio\build\doitESP32\src\Plugins\Plugin_003.c.o
Compiling .pio\build\doitESP32\src\Plugins\Plugin_004.c.o
Compiling .pio\build\doitESP32\src\Plugins\Plugin_005.c.o
Compiling .pio\build\doitESP32\src\Plugins\Plugin_006.c.o
Compiling .pio\build\doitESP32\src\Plugins\Plugin_007.c.o
Compiling .pio\build\doitESP32\src\Plugins\Plugin_008.c.o
Compiling .pio\build\doitESP32\src\Plugins\Plugin_009.c.o
Compiling .pio\build\doitESP32\src\Plugins\Plugin_010.c.o
Compiling .pio\build\doitESP32\src\Plugins\Plugin_011.c.o
Compiling .pio\build\doitESP32\src\Plugins\Plugin_012.c.o
Compiling .pio\build\doitESP32\src\Plugins\Plugin_013.c.o
Compiling .pio\build\doitESP32\src\Plugins\Plugin_014.c.o
Compiling .pio\build\doitESP32\src\Plugins\Plugin_015.c.o
Compiling .pio\build\doitESP32\src\Plugins\Plugin_029.c.o
Compiling .pio\build\doitESP32\src\Plugins\Plugin_030.c.o
Compiling .pio\build\doitESP32\src\Plugins\Plugin_031.c.o
Compiling .pio\build\doitESP32\src\Plugins\Plugin_032.c.o
Compiling .pio\build\doitESP32\src\Plugins\Plugin_033.c.o
Compiling .pio\build\doitESP32\src\Plugins\Plugin_034.c.o
Compiling .pio\build\doitESP32\src\Plugins\Plugin_035.c.o
Compiling .pio\build\doitESP32\src\Plugins\Plugin_036.c.o
In file included from RFLink\5_Plugin.cpp:183:0:
RFLink\./Plugins/Plugin_037.c: In function 'boolean Plugin_037(byte, const char*)':
RFLink\./Plugins/Plugin_037.c:183:46: warning: format '%x' expects argument of type 'unsigned int', but argument 3 has type 'long unsigned int' [-Wformat=]
Compiling .pio\build\doitESP32\src\Plugins\Plugin_037.c.o
sprintf(c_ID, "%02x%02x", (rc & 0xFF), rc2);
^
Compiling .pio\build\doitESP32\src\Plugins\Plugin_040.c.o
Compiling .pio\build\doitESP32\src\Plugins\Plugin_041.c.o
RFLink\./Plugins/Plugin_037.c:183:46: warning: format '%x' expects argument of type 'unsigned int', but argument 3 has type 'long unsigned int' [-Wformat=]
In file included from RFLink\5_Plugin.cpp:339:0:
RFLink\./Plugins/Plugin_076.c: In function 'boolean Plugin_076(byte, const char*)':
Compiling .pio\build\doitESP32\src\Plugins\Plugin_042.c.o
RFLink\./Plugins/Plugin_076.c:72:10: warning: unused variable 'tmpbuf' [-Wunused-variable]
char tmpbuf[60];
^
RFLink\./Plugins/Plugin_076.c:73:14: warning: unused variable 'code' [-Wunused-variable]
Compiling .pio\build\doitESP32\src\Plugins\Plugin_043.c.o
uint16_t code = 0;
^
Compiling .pio\build\doitESP32\src\Plugins\Plugin_044.c.o
Compiling .pio\build\doitESP32\src\Plugins\Plugin_045.c.o
Compiling .pio\build\doitESP32\src\Plugins\Plugin_046.c.o
Compiling .pio\build\doitESP32\src\Plugins\Plugin_047.c.o
Compiling .pio\build\doitESP32\src\Plugins\Plugin_060.c.o
Compiling .pio\build\doitESP32\src\Plugins\Plugin_061.c.o
Compiling .pio\build\doitESP32\src\Plugins\Plugin_062.c.o
Compiling .pio\build\doitESP32\src\Plugins\Plugin_063.c.o
Compiling .pio\build\doitESP32\src\Plugins\Plugin_064.c.o
Compiling .pio\build\doitESP32\src\Plugins\Plugin_070.c.o
Compiling .pio\build\doitESP32\src\Plugins\Plugin_071.c.o
Compiling .pio\build\doitESP32\src\Plugins\Plugin_072.c.o
Compiling .pio\build\doitESP32\src\Plugins\Plugin_073.c.o
Compiling .pio\build\doitESP32\src\Plugins\Plugin_074.c.o
Compiling .pio\build\doitESP32\src\Plugins\Plugin_075.c.o
Compiling .pio\build\doitESP32\src\Plugins\Plugin_076.c.o
Compiling .pio\build\doitESP32\src\Plugins\Plugin_080.c.o
Compiling .pio\build\doitESP32\src\Plugins\Plugin_081.c.o
Compiling .pio\build\doitESP32\src\Plugins\Plugin_082.c.o
Compiling .pio\build\doitESP32\src\Plugins\Plugin_083.c.o
Compiling .pio\build\doitESP32\src\Plugins\Plugin_087.c.o
Compiling .pio\build\doitESP32\src\Plugins\Plugin_254.c.o
Compiling .pio\build\doitESP32\src\RFLink.ino.cpp.o
Generating partitions .pio\build\doitESP32\partitions.bin
Compiling .pio\build\doitESP32\libecd\PubSubClient\PubSubClient.cpp.o
Compiling .pio\build\doitESP32\lib34e\WiFi\ETH.cpp.o
Compiling .pio\build\doitESP32\lib34e\WiFi\WiFi.cpp.o
Compiling .pio\build\doitESP32\lib34e\WiFi\WiFiAP.cpp.o
Compiling .pio\build\doitESP32\lib34e\WiFi\WiFiClient.cpp.o
Compiling .pio\build\doitESP32\lib34e\WiFi\WiFiGeneric.cpp.o
Compiling .pio\build\doitESP32\lib34e\WiFi\WiFiMulti.cpp.o
Compiling .pio\build\doitESP32\lib34e\WiFi\WiFiSTA.cpp.o
Compiling .pio\build\doitESP32\lib34e\WiFi\WiFiScan.cpp.o
Compiling .pio\build\doitESP32\lib34e\WiFi\WiFiServer.cpp.o
Compiling .pio\build\doitESP32\lib34e\WiFi\WiFiUdp.cpp.o
Assembler messages:
Fatal error: can't create .pio\build\doitESP32\src\RFLink.ino.cpp.o: No such file or directory
*** [.pio\build\doitESP32\src\RFLink.ino.cpp.o] Error 1
Assembler messages:
Fatal error: can't create .pio\build\doitESP32\libecd\PubSubClient\PubSubClient.cpp.o: No such file or directory
*** [.pio\build\doitESP32\libecd\PubSubClient\PubSubClient.cpp.o] Error 1
if i uncomment WiFiLib i've got
Linking .pio\build\doitESP32\firmware.elf
.pio\build\doitESP32\src\6_WiFi_MQTT.cpp.o:(.literal._ZN6RFLink4Mqtt9reconnectEib+0x30): undefined reference to `RFLink::Wifi::stop_WIFI()'
.pio\build\doitESP32\src\6_WiFi_MQTT.cpp.o:(.literal._ZN6RFLink4Mqtt9reconnectEib+0x34): undefined reference to `RFLink::Wifi::start_WIFI()'
.pio\build\doitESP32\src\6_WiFi_MQTT.cpp.o: In function `RFLink::Mqtt::reconnect(int, bool)':
D:\portapps\vs-projects\RFLink\RFLink-Interrupt/RFLink/6_WiFi_MQTT.cpp:105: undefined reference to `RFLink::Wifi::stop_WIFI()'
D:\portapps\vs-projects\RFLink\RFLink-Interrupt/RFLink/6_WiFi_MQTT.cpp:105: undefined reference to `RFLink::Wifi::start_WIFI()'
—
You are receiving this because you were assigned.
Reply to this email directly, view it on GitHub
<#42 (comment)>, or
unsubscribe
<https://github.com/notifications/unsubscribe-auth/ABTC5PQNXVSGNAI4JL2QKDDS67KKDANCNFSM4VNBW24Q>
.
|
it does compile on a blan machine:
https://github.com/cpainchaud/RFLink/runs/1898095168
|
out of the box for me NO SUCCESS: Compiling as it is (except changing the boardtype and serial connection speed)
Compiling with RFLINK_WIFIMANAGER_ENABLED or RFLINK_WIFI_ENABLED :
|
Yes I found out that MQTT was enabled by default and issued a patch a few
minutes ago. Use my latest latest master release and make sure you use the
build flags so you dont get annoyed:
; -D RFLINK_WIFIMANAGER_ENABLED
; -D RFLINK_WIFI_ENABLED
; -D RFLINK_SHOW_CONFIG_PORTAL_PIN_BUTTON=22
; -D RFLINK_OTA_ENABLED
; -D RFLINK_OTA_PASSWORD='"'${sysenv.OTA_SEC}'"'
-D RFLINK_ASYNC_RECEIVER_ENABLED
; -D MQTT_ENABLED
; -D RFLINK_SERIAL2NET_ENABLED
; -D RFLINK_SERIAL2NET_DEBUG
…On Sun, Feb 14, 2021 at 5:00 PM Dattel ***@***.***> wrote:
out of the box for me NO SUCCESS:
Compiling as it is (except changing the boardtype and serial connection
speed)
.pio\build\doitESP32\src\6_WiFi_MQTT.cpp.o:(.literal._ZN6RFLink4Mqtt9reconnectEib+0x30): undefined reference to `RFLink::Wifi::stop_WIFI()'
.pio\build\doitESP32\src\6_WiFi_MQTT.cpp.o:(.literal._ZN6RFLink4Mqtt9reconnectEib+0x34): undefined reference to `RFLink::Wifi::start_WIFI()'
.pio\build\doitESP32\src\6_WiFi_MQTT.cpp.o: In function `RFLink::Mqtt::reconnect(int, bool)':
D:\portapps\vs-projects\RFLink\RFLink-Interrupt/RFLink/6_WiFi_MQTT.cpp:105: undefined reference to `RFLink::Wifi::stop_WIFI()'
D:\portapps\vs-projects\RFLink\RFLink-Interrupt/RFLink/6_WiFi_MQTT.cpp:105: undefined reference to `RFLink::Wifi::start_WIFI()'
Compiling with RFLINK_WIFIMANAGER_ENABLED or RFLINK_WIFI_ENABLED :
.pio\build\doitESP32\src\6_WiFi_MQTT.cpp.o:(.bss.WIFI_SSID+0x0): multiple definition of `WIFI_SSID'
.pio\build\doitESP32\src\10_Wifi.cpp.o:(.bss.WIFI_SSID+0x0): first defined here
.pio\build\doitESP32\src\6_WiFi_MQTT.cpp.o:(.bss.WIFI_PSWD+0x0): multiple definition of `WIFI_PSWD'
.pio\build\doitESP32\src\10_Wifi.cpp.o:(.bss.WIFI_PSWD+0x0): first defined here
—
You are receiving this because you were assigned.
Reply to this email directly, view it on GitHub
<#42 (comment)>, or
unsubscribe
<https://github.com/notifications/unsubscribe-auth/ABTC5PU47EN2SCRDSF2I5MLS67XQZANCNFSM4VNBW24Q>
.
|
👍 compiles and uploads successfully... didn't test on any sensory, yet.... |
Hi, did you have any luck? On my side We have done a lot of work on the project so it's more usable and now firmware can be downloaded as binaries and is configurable via a WEB UI. Let me know if you have time to work on this |
not really..... I'm using with SignalESP and FHEM for a long time to decode sensors - that work's pretty well and all of my sensors are recognized. My intention was to be a bit more free to (maybe) test Homeassistant or other systems with an independend ESP-Device. Sadly, there is no system, which is able to decode my sensors out of the box - so my project is currently on ice.. |
Hi,
as mentioned in my recent issue, i would like to add a new sensor definition. The Sensor is called something like "TCM97001".
It also transmits it's data in a 36BIT stream - i managed to decrypt the datafields with another RF-Implementation. Nevertheless, RFLink does not seems to pickup these data-stream...
AAAA BBBB CCCC DDDD EEEE FFFF GGGG HHHH IIII JJJJ
A=Startbits -> always 1001 ??
B+C= Random Address
D= 1B Battery, 1B Manually trasmittion, 2B Channel
EFG= 12 bit temperature (last2 bits indicates negative value)
HI = Humidity
I picked up some sample data with these implementation of RX-Receiver:
I already tried to activate debugging for Plugin_001 and Plugin_254 to see something similar to my already known definition - but the received streams does not match...
Can anyone help with that?
By comparing some other implementations for RF-Receiving i stumbled across a main difference... Your implementation queries the RF-Receiver in a loop, while other implementations uses an interrupt - can you explain, why one method is better than the other?
The text was updated successfully, but these errors were encountered: