Forum
@bery : ktory zdrojak pouzivas? ten od jirina? mne na 1 zbernicu viac ako 10 cidiel nebere, musel som to davat na dalsiu, teda mam celkom 3.
Skusal som aj externe napajanie a nepomohlo, nechapem kde je problem. uz je to par mesiacov co mi odisiel Loxone 1wire a myslim ze to funguje stale nesledujem to 🙂
Cidla mam z Aliexpress tie vodotesne https://www.aliexpress.com/item/32676135779.html
Ja to mam na loxone 1 wire extensionu, psal jsem to v tom prispevku. Ale ted mi doslo ze ses asi ptal na arduino sbernici co? 🙂
@bery ja som tiež pred par mesiacmi riešil keď som dal 4 ks v tej trubičke tak to blblo. Neviem prečo. Kúpené na Ali. Nechal som tam len 3 a zatiaľ to ide. Je to na 1w UDP.
hmm neviem teda preco riesil loxone 1-wire modul v Arduino teme...
Kedze niektory uzivatelia mali problem s kompilaciou v IDE kodu s wiki.
Je tu este moznost stiahnut si Xloader. A tu je skompilovany
.
Staci rozbalit , rychlost je 115200.
Prosim vyskusajte to niekto ci Vam to funguje.
smotek7:
Jak máš nastavený hex? ip? port?
@zigy port som urcite nemenil cize 57777, a IP musim pozret v druhom PC, ale skus IP scaner. Vecer pozrem. Myslim ze tam je 192.168.1.xxx
Takze nieje tam staticka IP, je tam DHCP a keby nepridelilo tak 192.168.1.40 port 57777 reading 30000ms, zapnute piny 5,6,7,8,9 .
Zdar chlapi, mám OneWireExtension UDP a na něm přes dvě sběrnice připojené po pěti DS2438. Vše detekováno, data posílá, ale hodnoty teplot lítají +- 5 stupňů sem tam. Setkal se s tím někdo, nějaké řešení? Může to být způsobeno nedostatkem času na konverzi, nebo jiný problém? Již jsem celou sběrnici předrátoval a zkontroloval, musel jsem také snížit hodnotu odporu na 2k2, aby to spolehlivě posílalo, jen tato jedna drobná vada zůstala.
Drobná vada vyřešena přidáním kondenzátoru 1000 uF na větev zdroje, zřejmě DC-DC měnič trochu zarušil napájení. Teď už je vše ok.
Arduino IDE 1.8.12 - uz ani mne nejde skompilovat ten kod od Jirina 🙁
C:\Users\Alien\AppData\Local\Temp\arduino_build_31636\sketch\DS1820Lib.cpp:153:94: warning: default argument given for parameter 2 of 'bool DS1820::requestTemperaturesByAddress(const uint8_t*, bool)' [-fpermissive]
bool DS1820::requestTemperaturesByAddress(const uint8_t* deviceAddress, bool parasite = false){
^
In file included from C:\Users\Alien\AppData\Local\Temp\arduino_build_31636\sketch\DS1820Lib.cpp:6:0:
C:\Users\Alien\AppData\Local\Temp\arduino_build_31636\sketch\DS1820Lib.h:86:10: note: previous specification in 'bool DS1820::requestTemperaturesByAddress(const uint8_t*, bool)' here
bool requestTemperaturesByAddress(const uint8_t*, bool = false);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~
C:\Users\Alien\AppData\Local\Temp\arduino_build_31636\sketch\DS2438Lib.cpp: In member function 'bool DS2438::writePageZero(uint8_t*, uint8_t*)':
C:\Users\Alien\AppData\Local\Temp\arduino_build_31636\sketch\DS2438Lib.cpp:146:1: warning: control reaches end of non-void function [-Wreturn-type]
}
^
In file included from C:\Users\Alien\AppData\Local\Temp\arduino_build_31636\sketch\OneWireReading.h:9:0,
from C:\OneWireExtension\OneWireExtension.ino:74:
c:\Users\Alien\Nextcloud\Arduino\libraries\LinkedList/LinkedList.h: In instantiation of 'ListNode<T>* LinkedList<T>::getNode(int) [with T = OneWireBus*]':
c:\Users\Alien\Nextcloud\Arduino\libraries\LinkedList/LinkedList.h:178:22: required from 'bool LinkedList<T>::add(int, T) [with T = OneWireBus*]'
C:\OneWireExtension\OneWireExtension.ino:263:1: required from here
c:\Users\Alien\Nextcloud\Arduino\libraries\LinkedList/LinkedList.h:160:9: error: cannot convert 'bool' to 'ListNode<OneWireBus*>*' in return
return false;
^~~~~
In file included from C:\OneWireExtension\OneWireExtension.ino:72:0:
C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\EEPROM\src/EEPROM.h:145:20: warning: 'EEPROM' defined but not used [-Wunused-variable]
static EEPROMClass EEPROM;
^~~~~~
C:\Users\Alien\AppData\Local\Temp\arduino_build_31636\sketch\OneWireReading.cpp:8:78: warning: cannot declare member function 'static void DSGenericDevice::copyAddress(uint8_t*, uint8_t (&)[8])' to have static linkage [-fpermissive]
static void DSGenericDevice::copyAddress(ADDRESS source, ADDRESS &destination) {
^
C:\Users\Alien\AppData\Local\Temp\arduino_build_31636\sketch\OneWireReading.cpp: In member function 'void DS2438Device::updateToNextState()':
C:\Users\Alien\AppData\Local\Temp\arduino_build_31636\sketch\OneWireReading.cpp:63:17: warning: invalid conversion from 'int' to 'DS2438State' [-fpermissive]
state = state + 1;
~~~~~~^~~
C:\Users\Alien\AppData\Local\Temp\arduino_build_31636\sketch\OneWireReading.cpp: In member function 'void OneWireBus::read()':
C:\Users\Alien\AppData\Local\Temp\arduino_build_31636\sketch\OneWireReading.cpp:164:52: warning: invalid conversion from 'DSGenericDevice*' to 'DS2401Device*' [-fpermissive]
DS2401Device *ds2401 = _devicesList->remove(i);
~~~~~~~~~~~~~~~~~~~~^~~
C:\Users\Alien\AppData\Local\Temp\arduino_build_31636\sketch\OneWireReading.cpp: At global scope:
C:\Users\Alien\AppData\Local\Temp\arduino_build_31636\sketch\OneWireReading.cpp:250:107: warning: cannot declare member function 'static void OneWireBus::sendDS2401(PrepareCallBack, DataCallBack, FinishCallBack, uint8_t*)' to have static linkage [-fpermissive]
static void OneWireBus::sendDS2401(PrepareCallBack pCB, DataCallBack dCB, FinishCallBack fCB, ADDRESS addr) {
^
C:\Users\Alien\AppData\Local\Temp\arduino_build_31636\sketch\OneWireReading.cpp:254:119: warning: cannot declare member function 'static void OneWireBus::sendDS1820(PrepareCallBack, DataCallBack, FinishCallBack, uint8_t*, float)' to have static linkage [-fpermissive]
static void OneWireBus::sendDS1820(PrepareCallBack pCB, DataCallBack dCB, FinishCallBack fCB, ADDRESS addr, float temp) {
^
C:\Users\Alien\AppData\Local\Temp\arduino_build_31636\sketch\OneWireReading.cpp: In static member function 'static void OneWireBus::sendDS1820(PrepareCallBack, DataCallBack, FinishCallBack, uint8_t*, float)':
C:\Users\Alien\AppData\Local\Temp\arduino_build_31636\sketch\OneWireReading.cpp:259:16: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
dCB("1W "); sendAddress(dCB, addr);
^
C:\Users\Alien\AppData\Local\Temp\arduino_build_31636\sketch\OneWireReading.cpp:260:19: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
dCB(" TEMP "); sendFloat(dCB, temp);
^
C:\Users\Alien\AppData\Local\Temp\arduino_build_31636\sketch\OneWireReading.cpp: At global scope:
C:\Users\Alien\AppData\Local\Temp\arduino_build_31636\sketch\OneWireReading.cpp:268:95: warning: cannot declare member function 'static void OneWireBus::sendDS2438(PrepareCallBack, DataCallBack, FinishCallBack, uint8_t*, float, float, float, float)' to have static linkage [-fpermissive]
ADDRESS addr, float temp, float vad, float vdd, float vsens) {
^
C:\Users\Alien\AppData\Local\Temp\arduino_build_31636\sketch\OneWireReading.cpp: In static member function 'static void OneWireBus::sendDS2438(PrepareCallBack, DataCallBack, FinishCallBack, uint8_t*, float, float, float, float)':
C:\Users\Alien\AppData\Local\Temp\arduino_build_31636\sketch\OneWireReading.cpp:273:14: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
dCB("1W "); sendAddress(dCB, addr);
^
C:\Users\Alien\AppData\Local\Temp\arduino_build_31636\sketch\OneWireReading.cpp:274:17: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
dCB(" TEMP "); sendFloat(dCB, temp);
^
C:\Users\Alien\AppData\Local\Temp\arduino_build_31636\sketch\OneWireReading.cpp:275:16: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
dCB(" VAD "); sendFloat(dCB, vad);
^
C:\Users\Alien\AppData\Local\Temp\arduino_build_31636\sketch\OneWireReading.cpp:276:16: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
dCB(" VDD "); sendFloat(dCB, vdd);
^
C:\Users\Alien\AppData\Local\Temp\arduino_build_31636\sketch\OneWireReading.cpp:277:18: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
dCB(" VSENS "); sendFloat(dCB, vsens);
^
C:\Users\Alien\AppData\Local\Temp\arduino_build_31636\sketch\OneWireReading.cpp: At global scope:
C:\Users\Alien\AppData\Local\Temp\arduino_build_31636\sketch\OneWireReading.cpp:284:110: warning: cannot declare member function 'static void OneWireBus::sendNewDevice(PrepareCallBack, DataCallBack, FinishCallBack, uint8_t*)' to have static linkage [-fpermissive]
static void OneWireBus::sendNewDevice(PrepareCallBack pCB, DataCallBack dCB, FinishCallBack fCB, ADDRESS addr) {
^
C:\Users\Alien\AppData\Local\Temp\arduino_build_31636\sketch\OneWireReading.cpp:288:106: warning: cannot declare member function 'static void OneWireBus::sendError(PrepareCallBack, DataCallBack, FinishCallBack, uint8_t*)' to have static linkage [-fpermissive]
static void OneWireBus::sendError(PrepareCallBack pCB, DataCallBack dCB, FinishCallBack fCB, ADDRESS addr) {
^
C:\Users\Alien\AppData\Local\Temp\arduino_build_31636\sketch\OneWireReading.cpp:293:81: warning: cannot declare member function 'static void OneWireBus::sendAddressAndGenericText(PrepareCallBack, DataCallBack, FinishCallBack, uint8_t*, const char*)' to have static linkage [-fpermissive]
ADDRESS addr, const char *text) {
^
C:\Users\Alien\AppData\Local\Temp\arduino_build_31636\sketch\OneWireReading.cpp: In static member function 'static void OneWireBus::sendAddressAndGenericText(PrepareCallBack, DataCallBack, FinishCallBack, uint8_t*, const char*)':
C:\Users\Alien\AppData\Local\Temp\arduino_build_31636\sketch\OneWireReading.cpp:298:16: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
dCB("1W "); sendAddress(dCB, addr);
^
C:\Users\Alien\AppData\Local\Temp\arduino_build_31636\sketch\OneWireReading.cpp:300:16: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
dCB(" "); dCB(text);
^
C:\Users\Alien\AppData\Local\Temp\arduino_build_31636\sketch\OneWireReading.cpp:300:27: warning: invalid conversion from 'const char*' to 'char*' [-fpermissive]
dCB(" "); dCB(text);
^
C:\Users\Alien\AppData\Local\Temp\arduino_build_31636\sketch\OneWireReading.cpp: At global scope:
C:\Users\Alien\AppData\Local\Temp\arduino_build_31636\sketch\OneWireReading.cpp:308:67: warning: cannot declare member function 'static void OneWireBus::sendAddress(DataCallBack, uint8_t*)' to have static linkage [-fpermissive]
static void OneWireBus::sendAddress(DataCallBack dCB, ADDRESS addr) {
^
C:\Users\Alien\AppData\Local\Temp\arduino_build_31636\sketch\OneWireReading.cpp:319:90: warning: default argument given for parameter 3 of 'static void OneWireBus::sendFloat(DataCallBack, float, int16_t)' [-fpermissive]
static void OneWireBus::sendFloat(DataCallBack dCB, float value, int16_t precision = 1000) {
^
In file included from C:\Users\Alien\AppData\Local\Temp\arduino_build_31636\sketch\OneWireReading.cpp:1:0:
C:\Users\Alien\AppData\Local\Temp\arduino_build_31636\sketch\OneWireReading.h:103:17: note: previous specification in 'static void OneWireBus::sendFloat(DataCallBack, float, int16_t)' here
static void sendFloat(DataCallBack dCB, float value, int16_t precision = 1000);
^~~~~~~~~
C:\Users\Alien\AppData\Local\Temp\arduino_build_31636\sketch\OneWireReading.cpp:319:90: warning: cannot declare member function 'static void OneWireBus::sendFloat(DataCallBack, float, int16_t)' to have static linkage [-fpermissive]
static void OneWireBus::sendFloat(DataCallBack dCB, float value, int16_t precision = 1000) {
^
C:\Users\Alien\AppData\Local\Temp\arduino_build_31636\sketch\OneWireReading.cpp:335:106: warning: cannot declare member function 'static bool OneWireBus::findDeviceInList(uint8_t*, LinkedList<DSGenericDevice*>*, uint8_t&)' to have static linkage [-fpermissive]
static bool OneWireBus::findDeviceInList(ADDRESS addr, LinkedList<DSGenericDevice*> *list, uint8_t &index) {
^
C:\Users\Alien\AppData\Local\Temp\arduino_build_31636\sketch\OneWireReading.cpp:345:68: warning: cannot declare member function 'static bool OneWireBus::compareAddress(uint8_t*, uint8_t*)' to have static linkage [-fpermissive]
static bool OneWireBus::compareAddress(ADDRESS addr1, ADDRESS addr2) {
^
In file included from C:\Users\Alien\AppData\Local\Temp\arduino_build_31636\sketch\OneWireReading.h:9:0,
from C:\Users\Alien\AppData\Local\Temp\arduino_build_31636\sketch\OneWireReading.cpp:1:
c:\Users\Alien\Nextcloud\Arduino\libraries\LinkedList/LinkedList.h: In instantiation of 'ListNode<T>* LinkedList<T>::getNode(int) [with T = DSGenericDevice*]':
c:\Users\Alien\Nextcloud\Arduino\libraries\LinkedList/LinkedList.h:314:28: required from 'T LinkedList<T>::get(int) [with T = DSGenericDevice*]'
C:\Users\Alien\AppData\Local\Temp\arduino_build_31636\sketch\OneWireReading.cpp:157:28: required from here
c:\Users\Alien\Nextcloud\Arduino\libraries\LinkedList/LinkedList.h:160:9: error: cannot convert 'bool' to 'ListNode<DSGenericDevice*>*' in return
return false;
^~~~~
c:\Users\Alien\Nextcloud\Arduino\libraries\LinkedList/LinkedList.h: In instantiation of 'ListNode<T>* LinkedList<T>::getNode(int) [with T = unsigned char]':
c:\Users\Alien\Nextcloud\Arduino\libraries\LinkedList/LinkedList.h:314:28: required from 'T LinkedList<T>::get(int) [with T = unsigned char]'
C:\Users\Alien\AppData\Local\Temp\arduino_build_31636\sketch\OneWireReading.cpp:160:52: required from here
c:\Users\Alien\Nextcloud\Arduino\libraries\LinkedList/LinkedList.h:160:9: error: cannot convert 'bool' to 'ListNode<unsigned char>*' in return
c:\Users\Alien\Nextcloud\Arduino\libraries\LinkedList/LinkedList.h: In instantiation of 'ListNode<T>* LinkedList<T>::getNode(int) [with T = OneWireBus*]':
c:\Users\Alien\Nextcloud\Arduino\libraries\LinkedList/LinkedList.h:314:28: required from 'T LinkedList<T>::get(int) [with T = OneWireBus*]'
C:\Users\Alien\AppData\Local\Temp\arduino_build_31636\sketch\OneWireReading.cpp:367:22: required from here
c:\Users\Alien\Nextcloud\Arduino\libraries\LinkedList/LinkedList.h:160:9: error: cannot convert 'bool' to 'ListNode<OneWireBus*>*' in return
Using library EEPROM at version 2.0 in folder: C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\EEPROM
Using library Ethernet at version 2.0.0 in folder: C:\Program Files (x86)\Arduino\libraries\Ethernet
Using library OneWire at version 2.3.5 in folder: c:\Users\Alien\Nextcloud\Arduino\libraries\OneWire
Using library LinkedList at version 1.2.3 in folder: c:\Users\Alien\Nextcloud\Arduino\libraries\LinkedList
Using library TrueRandom in folder: c:\Users\Alien\Nextcloud\Arduino\libraries\TrueRandom (legacy)
Using library SPI at version 1.0 in folder: C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI
exit status 1
Error compiling for board Arduino Uno.
dela to verze IDE, stahni si starsi, myslim, ze ve videu od Jiriny je videt i verze.
dik skusim, myslel som ze kod by mal ist kompilovat na vsetkych novsich verziach...
IDE 1.8.12, deska Arduino Uno, kompilace OK. Máš poupravenou knihovnu LinkedList?
Vlož místo původní a vyzkoušej.
Nebo zkus
https://github.com/budulinek/OneWire-Multibus-UDP
EDIT:
skeč používám na 1-wire, ale i DHT22 senzory a senzory světla. Pokud DHT22 ani senzory světla nepoužíváš, můžeš samozřejmě smazat příslušné definice a funkce.