Lagerhead
Active Member
This post follows Dan's suggestion that I describe the Barionet programming interface. I am using a Barionet with an Elk M1 as the core of my automation and have been pleased with the combination.
WHAT IS A BARIONET?
The Barionet is a PIC processor combined with a Lantronix Xport in a single unit, with a good range of onboard I/O as part of the package. In short, it is a small computer having the whole range of communications, and digital and analog I/O, built-in. Its major design weakness is a serious lack of persistent (disk-like) storage.
General Hardware Specifications
- Made by Swiss company Barix AG
- power 9-30 VDC/AC
- Ethernet port, 8 sockets supported
- RS232 and RS 422/485
- 4 digital inputs w/ programmable pull-up
- 4 digital or analog (9-bit resolution) inputs
- 4 digital outputs (current sinking)
- 2 relays, SPDT, 5A
- 1-wire temperature sensors, 8 direct attach
- Modbus I/O expandable
- Real-time clock with NTP and/or 1-wire RTC capability
The Barionet has been misunderstood and mischaracterized on this board. It has been called a PLC (and equated to the Ocelot), but it can do much more than that. It can work with HA applications or, with suitable programming, it can to a certain extent replace them, as I have done.
WHY BARIONET?
The Barionet is an unusual piece of hardware, not for everyone (I think three out of around 6,000 CT members). I wanted a low-power HA solution with flexible and expandable I/O and strong communication capabilities, particularly IP. My house now can run with all PCs and servers turned off, which was a long-time goal of mine. (I should note here that entertainment functionality is not a factor in my environment.)
The Barionet basically has become my HA app. I use it for 24/7 polling of my thermostats and M1-monitored conditions, for data aggregation and upload, for command and control from inside and outside access, weather forecast download and many other functions. Like any good HA solution, it provides the necessary HA integration by bridging the gaps between different devices and technologies.
But realize that the Barionet, as shipped, does none of that. This has been entirely a custom development effort, and getting there has meant some considerable programming, in my case 1,200 lines of code and continuing to grow. And because the Barionet has essentially no persistent storage capacity, I offload collected data to an outside, hosted website, where I have additional PHP code for interfacing, reporting and analysis.
There are some on CT who have criticized this kind of "clean-slate programming" as a waste of time, pointing out that many fully-developed and robust software alternatives (HomeSeer, Premise, CQC, etc.) already exist. That's fine, although because of the Barionet's I/O features, the criticism is not fully on the mark. The security of my network was another important factor in my thinking. We all have our preferences and make our choices how to use our time. So I will simply say, while it has worked out well for me, this is not a recommendation or an endorsement -- unless you fully understanding what you're getting into. Having said that, I am still amazed at what this little thing can do.
Programming sample in following post.
Barionet Pros
- 2 watts (typical) in my environment
- easily powered from M1
- no moving parts (other than relays)
- decent support from manufacturer in Yahoo group
- decent support from U.S. distributor Datanab
- excellent I/O expansion capability
- provides the analog inputs that M1 lacks
- wide-open programmable communications
Barionet Cons
- totally proprietary
- second-generation-style BASIC programming language
- no structured programming environment
- specific limitations in programming space and features
- single thread execution (no multi-tasking)
- sometimes difficult debugging (uneven diagnostics)
- essentially no onboard storage (some flash memory may be used for persistent storage, but R/W fatigue is a real consideration)
Info:
http://www.barix.com/Overview/781/
http://www.datanab.com/controllers/barionet.htm
WHAT IS A BARIONET?
The Barionet is a PIC processor combined with a Lantronix Xport in a single unit, with a good range of onboard I/O as part of the package. In short, it is a small computer having the whole range of communications, and digital and analog I/O, built-in. Its major design weakness is a serious lack of persistent (disk-like) storage.
General Hardware Specifications
- Made by Swiss company Barix AG
- power 9-30 VDC/AC
- Ethernet port, 8 sockets supported
- RS232 and RS 422/485
- 4 digital inputs w/ programmable pull-up
- 4 digital or analog (9-bit resolution) inputs
- 4 digital outputs (current sinking)
- 2 relays, SPDT, 5A
- 1-wire temperature sensors, 8 direct attach
- Modbus I/O expandable
- Real-time clock with NTP and/or 1-wire RTC capability
The Barionet has been misunderstood and mischaracterized on this board. It has been called a PLC (and equated to the Ocelot), but it can do much more than that. It can work with HA applications or, with suitable programming, it can to a certain extent replace them, as I have done.
WHY BARIONET?
The Barionet is an unusual piece of hardware, not for everyone (I think three out of around 6,000 CT members). I wanted a low-power HA solution with flexible and expandable I/O and strong communication capabilities, particularly IP. My house now can run with all PCs and servers turned off, which was a long-time goal of mine. (I should note here that entertainment functionality is not a factor in my environment.)
The Barionet basically has become my HA app. I use it for 24/7 polling of my thermostats and M1-monitored conditions, for data aggregation and upload, for command and control from inside and outside access, weather forecast download and many other functions. Like any good HA solution, it provides the necessary HA integration by bridging the gaps between different devices and technologies.
But realize that the Barionet, as shipped, does none of that. This has been entirely a custom development effort, and getting there has meant some considerable programming, in my case 1,200 lines of code and continuing to grow. And because the Barionet has essentially no persistent storage capacity, I offload collected data to an outside, hosted website, where I have additional PHP code for interfacing, reporting and analysis.
There are some on CT who have criticized this kind of "clean-slate programming" as a waste of time, pointing out that many fully-developed and robust software alternatives (HomeSeer, Premise, CQC, etc.) already exist. That's fine, although because of the Barionet's I/O features, the criticism is not fully on the mark. The security of my network was another important factor in my thinking. We all have our preferences and make our choices how to use our time. So I will simply say, while it has worked out well for me, this is not a recommendation or an endorsement -- unless you fully understanding what you're getting into. Having said that, I am still amazed at what this little thing can do.
Programming sample in following post.
Barionet Pros
- 2 watts (typical) in my environment
- easily powered from M1
- no moving parts (other than relays)
- decent support from manufacturer in Yahoo group
- decent support from U.S. distributor Datanab
- excellent I/O expansion capability
- provides the analog inputs that M1 lacks
- wide-open programmable communications
Barionet Cons
- totally proprietary
- second-generation-style BASIC programming language
- no structured programming environment
- specific limitations in programming space and features
- single thread execution (no multi-tasking)
- sometimes difficult debugging (uneven diagnostics)
- essentially no onboard storage (some flash memory may be used for persistent storage, but R/W fatigue is a real consideration)
Info:
http://www.barix.com/Overview/781/
http://www.datanab.com/controllers/barionet.htm