GUI displaying owfs ROM codes, connected to 1-Wire Automation Server:

Server GUI

The settings page allows you the change settings in the 1-Wire server as well as the 1-Wire topology page. The settings page also displays the device nodes in a dedicated panel.

GUI

The 1-Wire Automation Software Control Panel offers an easy way to start and stop the 1-Wire server and logger in Windows. You can install the programs as a Windows service and let the system start up the 1-Wire Automation Software automatically, you don't have to log on! This is great for unattended systems.

Control Panel

Example of reading a DS2438 chip using netcat in Linux. The first command samples the DS2438's sensors and returns the temperature in Celsius, Fahrenheit or Kelvin. The subsequent commands return Vad and Vdd.

CLI

The "slave sense" example from the PHP Client package. This one-page website expects a ROM code and optionally connection settings in the query string of the URL. The PHP code on the web server communicates with the 1-Wire server to read sensor data from the specified 1-Wire slave and sends the results back to the web client. The web server and 1-Wire server can be located on different machines. You can use the PHP source to build your own webpages that access 1-Wire slaves through the 1-Wire Automation Software.

Slave Sense

The "Big Demo" from the PHP Client package. This example website features a web-based front-end for monitoring and controlling 1-Wire slaves using the 1-Wire Automation Software. The web server and 1-Wire server can be located on different machines. You can easily adapt the PHP code for your own purposes. The layout works well on a tablet computer.

Big Demo

The 1-Wire Automation Software supports Unicode. You can use Unicode characters in names and descriptions.

1-Wire Automation Software Unicode support

I can't enable my 1-Wire adapter. What's wrong?

If you're running the 1-Wire server on Linux, the most common issue is the lack of privileges. For most 1-Wire adapters, the server needs root privileges. If this is not the case, the server can't access the 1-Wire adapter when it's enabled.

Example running the server as root:

$ sudo /opt/owsas/bin/owsas -v

If your adapter is a DS9490 or other USB-based device, make sure it's inserted properly into the USB receptacle. A bad contact often leads to a disabled adapter. Also, on Windows, check the USB drivers using the Zadig tool or Device Manager. We recommend to install libusbK for these adapters, altough WinUSB may work properly as well.


I press "Explore" in the Control Panel, open and edit a configuration file, but then I can't save the changes. What's wrong?

This may happen if you installed the software on Windows Vista or later, and checked option "Install for everyone using this computer" during installation. The software was installed in "Program Files" (32-bit Windows) or "Program Files (x64)" (64-bit Windows) which implies only a user with Administrator rights may change files. Please have a look at the folder location in the explorer that pops up after you press the "Explore" button.

If you're logged in as a user with limited access rights, you won't be able to overwrite files located beneath the program files folder. Your editor may say "Access denied" or switch to "save as...".

Solutions:

  • Open your editor as Administrator. Open and edit the configuration file, and save the changes.
  • Log in as a user with administrative rights.
  • Install the software with option "Install just for me" checked. The software will be installed under your user folder.
  • Install the software in a folder outside the program files folder, for example c:\owsas\ .
  • Move all configuration files outside the program files folder, for example in a folder like c:\owsas\ and specify the path in the command line of the 1-Wire programs.

I want to hook up a DS18B20 to the GPIO header of my RPi and read the temperature. Can I do this with the 1-Wire server?

Yes, you can, starting with v1.1.0 of the software.

First, connect the DS18B20 to the GPIO pins. Don't forget the 4.7K pull-up resistor between Vcc and 1-Wire DATA. We're not going to repeat schematic and explanation here, if you search the Internet for "raspberry ds18b20", plenty of good information will show up.

The 1-Wire server relies on W1 to access the temperature sensor. Driver w1-gpio must be loaded. Again, plenty of good information is available on the Internet.

The 1-Wire server must be told to use W1. You can do this in the GUI (settings page -> W1 Subsystem -> check "Enabled" -> click "SET"). A 1-Wire adapter will show up in the 1-Wire topology page. Next, enumerate the adapter after which the temperature sensor appears. Now you can click "FORCED SENSE" to sample the temperature.

RPi2 GPIO DS18B20 1-Wire Server GUI

Operating Systems

  • Linux armel (lots of single board computers)
  • Linux armhf (lots of single board computers)
  • Linux i486 (32-bit PC)
  • Linux amd64 (64-bit PC)
  • Windows 2000, XP and later

Single board computers include BeagleBone Black, Raspberry Pi, BananaPi, OrangePi, PandaBoard, CubieBoard, Hackberry, and many others. The software run on boards with popular ARM-based SoC (system-on-chip) series like Allwinner, Freescale i.MX, TI OMAP, TI Sitara, NXP LPC. The 1-Wire server runs well on an NXP-LPC3131 @ 180MHz. If in doubt simply try out your board with the software.

The software fully supports Windows 2000, but keep in mind that not all 1-Wire adapters work on Windows 2000.


1-Wire Automation Server

1-Wire Masters

  • AxiCat 1-Wire Master
  • DS2480B Serial to 1-Wire Controller
  • DS9097U Adapter
  • DS9097 passive serial adapter (new in v1.1.0)
  • HA7E/HA7S Adapter
  • DS2482-100 I2C to 1-Wire Controller
  • DS2482-800 I2C to 1-Wire Controller
  • AbioWire 1-Wire Adapter
  • AbioWire+ 1-Wire Adapter
  • m.nu 1-Wire Adapter
  • DS2490 USB to 1-Wire Controller
  • DS9490R/DS9490B 1-Wire Adapter
  • Flyfish FF32/FF34 1-Wire Master
  • USBMicro U401/U421/U451 1-Wire Master (new in v1.1.0)
  • OW-SERVER-ENET-2
  • Linux W1 subsystem (new in v1.1.0)
  • TMEX API (new in v1.1.0)

Intermediate Buses to 1-Wire Masters

  • Serial:
    • Linux serial (tty, USB to serial adapters)
    • Windows serial (COM ports, USB to serial adapters)
    • AxiCat UART0 and UART1
  • I2C:
    • Linux i2c-dev
    • BCM2835 BSC0 and BSC1 direct I/O (RPi A, B, A+, B+)
    • BCM2836 BSC0 and BSC1 direct I/O (RPi 2)
    • AxiCat TWI

1-Wire Slaves

  • DS2401/2411/1990A Silicon Serial Number
  • DS18S20/DS1920 Thermometer
  • DS2406/DS2407 1Kb EPROM Dual Switch
  • DS28E04-100 4Kb EEPROM with PIO
  • DS2423 4Kb SRAM with counters
  • DS2409 MicroLan Coupler
  • DS2450 Quad A/D Converter
  • DS1822 Econo Digital Thermometer
  • DS2438 Smart Battery Monitor
  • DS18B20 Thermometer
  • DS2408 8-Channel Addressable Switch
  • DS2760/2761/2762 Li+ Battery Monitor
  • DS2780 Standalone Fuel Gauge
  • DS2755/2756 High-Precision Battery Fuel Gauge
  • DS2740 Coulomb Counter
  • DS2413 Dual-Channel Addressable Switch
  • DS1825 Thermometer
  • MAX31826 Thermometer
  • MAX31850 Thermocouple
  • DS2775/2776/2781 Li+ Fuel Gauge
  • DS28EA00 Thermometer
  • DS1420 Serial ID Button
  • Axiris 1-Wire RGB Controller
  • Axiris 1-Wire Mains Switch

1-Wire Hubs

  • DS2409 MicroLan Coupler
  • Hobby Boards 6-Channel Hub
  • Hobby Boards 4-Channel Hub

Client Protocol

  • Socket-based network protocol
  • The protocol suits both interactive communication (terminal program) and programmed communication (client software)
  • UTF-8 encoded, supports full Unicode character set, possibility to stick to ASCII character set
  • Multiple, asynchronous commands and responses, optionally with sequence numbers
  • Supports owfs ROM codes (new in v1.1.0)
  • Command LIST returns 1-Wire slaves (new in v1.2.0)
  • Reporting of device nodes (new in v1.2.0)

1-Wire Automation Server GUI

  • Interactive window to 1-Wire topology: display hardware, read sensors, toggle PIOs
  • Supports full Unicode character set
  • Temperature scales: Celsius, Fahrenheit, Kelvin
  • Supports owfs ROM codes (new in v1.1.0)
  • Enable/disable discovery of USB adapters
  • Enable/disable use of W1 subsystem (new in v1.1.0)
  • Inspect device nodes (new in v1.2.0)

1-Wire Automation Server Logger

  • Logs to MySQL database(s)
  • Logs to PostgreSQL database(s)
  • Logs to SQLite database(s) (new in v1.2.0)
  • Logs to text file(s), creates and appends text file, encodes as ASCII, UTF-8, UTF-16 Little Endian, UTF-16 Big Endian
  • Supports full Unicode character set
  • Temperature scales: Celsius, Fahrenheit, Kelvin
  • Supports owfs ROM codes (new in v1.1.0)

1-Wire Automation Software Control Panel

  • Starts and stops 1-Wire server
  • Starts and stops 1-Wire logger
  • Starts and stops 1-Wire GUI (new in v1.2.0)
  • Runs programs as application
  • Installs programs as Windows service
  • Detects and displays running programs, installed services, command line parameters
  • Supports owfs ROM codes (new in v1.1.0)

Documents (v1.2.0)

The user manuals are included with the software. In Linux, the documents are installed in /opt/owsas/doc. In Windows, the documents are accessible from the start menu.


Software - 1-Wire Automation Software - v1.2.0


Software - PHP Client for 1-Wire Automation Server - v1.0.1

Addendum to the read file: The "Big Demo" example requires the PHP GD library. Refer to this page for more information.