lancemiller / One-Wire-On-Fire

One-Wire-On-Fire is a web and command line based user interface to 1-Wire devices. Written in PHP/Python/HTML/Javacript for use on any device that runs a Unix/Linux variant with Python and serves PHP web pages.
http://www.one-wire-on-fire.org/
3 stars 0 forks source link

one-wire-on-fire assumes directory depth to sensor or control item #2

Open frederickjh opened 9 years ago

frederickjh commented 9 years ago

Hi again Lance!

I was able to access one-wire-on-fire.org via a VPN connection in the USA and download the archive. I have it in place and reconfigured permissions so that it works. Temperature sensors are working fine.

What is not working fine is my Environmental Sensor.

Environmental sensors from Embedded Data Systems http://www.embeddeddatasystems.com/ http://owfs.org/index.php?page=eds-enviromental-sensors

The tree for these devices goes a level deeper than some other 1 wire devices. The temploggerd program also suffered from this problem. Below is a tree from the 1 wire bus for the EDS0068.

~/1wire$ du -a 7E.A62100001000/ 0 7E.A62100001000/EDS0068/LED/control 0 7E.A62100001000/EDS0068/LED/state 0 7E.A62100001000/EDS0068/LED 0 7E.A62100001000/EDS0068/alarm/clear 0 7E.A62100001000/EDS0068/alarm/dew_point_hi 0 7E.A62100001000/EDS0068/alarm/dew_point_low 0 7E.A62100001000/EDS0068/alarm/heat_index_hi 0 7E.A62100001000/EDS0068/alarm/heat_index_low 0 7E.A62100001000/EDS0068/alarm/humidex_hi 0 7E.A62100001000/EDS0068/alarm/humidex_low 0 7E.A62100001000/EDS0068/alarm/humidity_hi 0 7E.A62100001000/EDS0068/alarm/humidity_low 0 7E.A62100001000/EDS0068/alarm/inHg_hi 0 7E.A62100001000/EDS0068/alarm/inHg_low 0 7E.A62100001000/EDS0068/alarm/light_hi 0 7E.A62100001000/EDS0068/alarm/light_low 0 7E.A62100001000/EDS0068/alarm/pressure_hi 0 7E.A62100001000/EDS0068/alarm/pressure_low 0 7E.A62100001000/EDS0068/alarm/temp_hi 0 7E.A62100001000/EDS0068/alarm/temp_low 0 7E.A62100001000/EDS0068/alarm 0 7E.A62100001000/EDS0068/counter/seconds 0 7E.A62100001000/EDS0068/counter 0 7E.A62100001000/EDS0068/dew_point 0 7E.A62100001000/EDS0068/heat_index 0 7E.A62100001000/EDS0068/humidex 0 7E.A62100001000/EDS0068/humidity 0 7E.A62100001000/EDS0068/inHg 0 7E.A62100001000/EDS0068/light 0 7E.A62100001000/EDS0068/pressure 0 7E.A62100001000/EDS0068/relay/control 0 7E.A62100001000/EDS0068/relay/state 0 7E.A62100001000/EDS0068/relay 0 7E.A62100001000/EDS0068/set_alarm/dew_point_hi 0 7E.A62100001000/EDS0068/set_alarm/dew_point_low 0 7E.A62100001000/EDS0068/set_alarm/heat_index_hi 0 7E.A62100001000/EDS0068/set_alarm/heat_index_low 0 7E.A62100001000/EDS0068/set_alarm/humidex_hi 0 7E.A62100001000/EDS0068/set_alarm/humidex_low 0 7E.A62100001000/EDS0068/set_alarm/humidity_hi 0 7E.A62100001000/EDS0068/set_alarm/humidity_low 0 7E.A62100001000/EDS0068/set_alarm/inHg_hi 0 7E.A62100001000/EDS0068/set_alarm/inHg_low 0 7E.A62100001000/EDS0068/set_alarm/light_hi 0 7E.A62100001000/EDS0068/set_alarm/light_low 0 7E.A62100001000/EDS0068/set_alarm/pressure_hi 0 7E.A62100001000/EDS0068/set_alarm/pressure_low 0 7E.A62100001000/EDS0068/set_alarm/temp_hi 0 7E.A62100001000/EDS0068/set_alarm/temp_low 0 7E.A62100001000/EDS0068/set_alarm 0 7E.A62100001000/EDS0068/temperature 0 7E.A62100001000/EDS0068/threshold/dew_point_hi 0 7E.A62100001000/EDS0068/threshold/dew_point_low 0 7E.A62100001000/EDS0068/threshold/heat_index_hi 0 7E.A62100001000/EDS0068/threshold/heat_index_low 0 7E.A62100001000/EDS0068/threshold/humidex_hi 0 7E.A62100001000/EDS0068/threshold/humidex_low 0 7E.A62100001000/EDS0068/threshold/humidity_hi 0 7E.A62100001000/EDS0068/threshold/humidity_low 0 7E.A62100001000/EDS0068/threshold/inHg_hi 0 7E.A62100001000/EDS0068/threshold/inHg_low 0 7E.A62100001000/EDS0068/threshold/light_hi 0 7E.A62100001000/EDS0068/threshold/light_low 0 7E.A62100001000/EDS0068/threshold/pressure_hi 0 7E.A62100001000/EDS0068/threshold/pressure_low 0 7E.A62100001000/EDS0068/threshold/temp_hi 0 7E.A62100001000/EDS0068/threshold/temp_low 0 7E.A62100001000/EDS0068/threshold 0 7E.A62100001000/EDS0068 0 7E.A62100001000/address 0 7E.A62100001000/alias 0 7E.A62100001000/crc8 0 7E.A62100001000/device_id 0 7E.A62100001000/device_type 0 7E.A62100001000/family 0 7E.A62100001000/id 0 7E.A62100001000/locator 0 7E.A62100001000/memory 0 7E.A62100001000/pages/page.ALL 0 7E.A62100001000/pages/page.0 0 7E.A62100001000/pages/page.1 0 7E.A62100001000/pages/page.2 0 7E.A62100001000/pages 0 7E.A62100001000/r_address 0 7E.A62100001000/r_id 0 7E.A62100001000/r_locator 0 7E.A62100001000/tag 0 7E.A62100001000/type 0 7E.A62100001000/ ~/1wire$

Here is a diffferent way of displaying it. ~/1wire$ tree 7E.A62100001000/ 7E.A62100001000/ ├── address ├── alias ├── crc8 ├── device_id ├── device_type ├── EDS0068 │   ├── alarm │   │   ├── clear │   │   ├── dew_point_hi │   │   ├── dew_point_low │   │   ├── heat_index_hi │   │   ├── heat_index_low │   │   ├── humidex_hi │   │   ├── humidex_low │   │   ├── humidity_hi │   │   ├── humidity_low │   │   ├── inHg_hi │   │   ├── inHg_low │   │   ├── light_hi │   │   ├── light_low │   │   ├── pressure_hi │   │   ├── pressure_low │   │   ├── temp_hi │   │   └── temp_low │   ├── counter │   │   └── seconds │   ├── dew_point │   ├── heat_index │   ├── humidex │   ├── humidity │   ├── inHg │   ├── LED │   │   ├── control │   │   └── state │   ├── light │   ├── pressure │   ├── relay │   │   ├── control │   │   └── state │   ├── set_alarm │   │   ├── dew_point_hi │   │   ├── dew_point_low │   │   ├── heat_index_hi │   │   ├── heat_index_low │   │   ├── humidex_hi │   │   ├── humidex_low │   │   ├── humidity_hi │   │   ├── humidity_low │   │   ├── inHg_hi │   │   ├── inHg_low │   │   ├── light_hi │   │   ├── light_low │   │   ├── pressure_hi │   │   ├── pressure_low │   │   ├── temp_hi │   │   └── temp_low │   ├── temperature │   └── threshold │   ├── dew_point_hi │   ├── dew_point_low │   ├── heat_index_hi │   ├── heat_index_low │   ├── humidex_hi │   ├── humidex_low │   ├── humidity_hi │   ├── humidity_low │   ├── inHg_hi │   ├── inHg_low │   ├── light_hi │   ├── light_low │   ├── pressure_hi │   ├── pressure_low │   ├── temp_hi │   └── temp_low ├── family ├── id ├── locator ├── memory ├── pages │   ├── page.0 │   ├── page.1 │   ├── page.2 │   └── page.ALL ├── r_address ├── r_id ├── r_locator ├── tag └── type

8 directories, 80 files ~/1wire$

As you can see between the address and the item to be read is the EDS0068 directory. Sometimes things go a level deep later too. Such as with the alarm, counter, LED, relay, set_alarm and threshold.

I am wondering if it is possible to change One-Wire-On-Fire to be able to scan and access these devices too?

Thanks in advance for your consideration of this feature!

Frederick Henderson

frederickjh commented 9 years ago

One other thing scanning for devices does not find the EDS0068 they use the 7E family code.

lancemiller commented 9 years ago

Frederick

This is probably news to you...I don't have any devices to test on. I did this project in early 2012, and relied on a local brewing operation to test the automation. I never got much interest from others in collaborating on the project (me code they test, or even they code also). I'm now busy is lead web dev for a streaming video company.

Your feedback here is useful. Hopefully others can see it and push the project forward. I admit the project is very incomplete.

-Lance

frederickjh commented 9 years ago

Hi Lance! I am willing to help with testing. My php is very weak so I am not sure how much I can help on the programing side.

As I stated above I have the EDS0068 environmental sensor from Embedded Data Systems. Also have a 1wire 8 channel relay board from denkovi.com. Which is based on the DS2408 1-Wire 8-Channel Addressable Switch. I also have a handful of DS18B20 temperature sensors. All of which am more than happy to help test One-Wire-On-Fire with.

I have not had a chance to hook-up the Denkovi board yet to see how it work with One-Wire-On-Fire. I will let you know.

God Bless! Frederick

frederickjh commented 9 years ago

Hi Lance!

I am guessing from your response that it not a trivial change to make it so that I can enter two levels or more in the path in the settings:

EDS0068/temperature for the device instead of the current where I can only enter temperature

Or EDS0068/relay/state instead of relay

For some reason the EDS products add one extra level to the tree which is why I cannot use it with One-Wire-On-Fire but also with TempLoger. Greetings, Frederick