Page 2 of 3 FirstFirst 123 LastLast
Results 21 to 40 of 42

Thread: BACnet: Free open source webserver and toolkit

  1. #21
    Join Date
    Nov 2012
    Posts
    93
    Post Likes
    Thread Starter
    Hello gentlemen!

    I've done it!
    After an entire week chasing wild bugs, I think I got 'em all!
    New version 1.0.0-RC1
    https://bacnethelp.com/how-to/wacnet

    Thanks to everyone who reported bugs!

    What's new:
    - Read properties now implemented in clojure. Supports read-property-multiple, segmented/unsegmented messages.
    - Parallel communication! MS/TP devices won't be such a bottleneck!

    Mods: Is there a way I could edit my first message to reflect new information?

  2. #22
    Join Date
    Nov 2012
    Posts
    93
    Post Likes
    Thread Starter
    Btw, here is an example of a possible REPL usage:

    I identified some devices that weren't behaving as expected and wanted
    to know their model-names and their manufacturers.

    I went in the REPL and pasted this:
    (->> (pmap #(try (remote-object-properties % [:device %] [:model-name bject-name :vendor-name])
    (catch Exception e))
    (remote-devices))
    (apply concat)
    ((fn [x] (with-out-str (print-table x))))
    (spit "network-report.txt"))
    Then I opened the "network-report.txt" text file exported and got:

    | :vendor-name | bject-name | :model-name | bject-identifier |
    |--------------------------+-----------------------------------------+----------------------------------+--------------------|
    | ABB | DRIVE_U1_V_ALI | ACH550 | [:device 50401] |
    | ABB | DRIVE_U1_V_RET | ACH550 | [:device 50402] |
    | ABB | UV01_DRIVE_ALIM | ACH550 | [:device 110201] |
    | ABB | UV01_DRIVE_RET | ACH550 | [:device 110202] |
    | TELEMECANIQUE | ATV 61 | ATV61HD15Y | [:device 110004] |
    | TELEMECANIQUE | ATV 61 | ATV61HD15Y | [:device 110005] |
    | CARRIER | CHILLER | BACnet Local Equipment Interface | [:device 50300] |
    | Delta Controls | UV20 | DAC_1180 | [:device 10301] |
    | Delta Controls | AC25 | DAC_1180 | [:device 10401] |

    (about a hundred more...)

  3. #23
    Join Date
    Nov 2012
    Posts
    93
    Post Likes
    Thread Starter
    Hum... no edit options?

    Anyway, take 2:

    Code:
    (->> (pmap #(try (remote-object-properties % [:device %] [:model-name :object-name :vendor-name])
                     (catch Exception e))
               (remote-devices))
         (apply concat)
         ((fn [x] (with-out-str (print-table x))))
         (spit "network-report.txt"))
    Code:
    | :vendor-name             | :object-name                            | :model-name                      | :object-identifier |
    |--------------------------+-----------------------------------------+----------------------------------+--------------------|
    | ABB                      | DRIVE_U1_V_ALI                          | ACH550                           | [:device 50401]    |
    | ABB                      | DRIVE_U1_V_RET                          | ACH550                           | [:device 50402]    |
    | ABB                      | UV01_DRIVE_ALIM                         | ACH550                           | [:device 110201]   |
    | ABB                      | UV01_DRIVE_RET                          | ACH550                           | [:device 110202]   |
    | TELEMECANIQUE            | ATV 61                                  | ATV61HD15Y                       | [:device 110004]   |
    | TELEMECANIQUE            | ATV 61                                  | ATV61HD15Y                       | [:device 110005]   |
    | CARRIER                  | CHILLER                                 | BACnet Local Equipment Interface | [:device 50300]    |
    | Delta Controls           | UV20                                    | DAC_1180                         | [:device 10301]    |
    | Delta Controls           | AC25                                    | DAC_1180                         | [:device 10401]    |
    ...
    (about a hundred more)

  4. #24
    Join Date
    Apr 2007
    Location
    San Diego, CA
    Posts
    1,842
    Post Likes
    Quote Originally Posted by Frozenlock View Post
    Hum... no edit options?
    Once your post count is up and you apply for Pro membership I think that becomes an option...

  5. #25
    Join Date
    Nov 2006
    Location
    Southeastern Pa
    Posts
    32,455
    Post Likes
    I believe the edit option has a time-out set by Dad. Other vbb forums leave it turned on.

  6. #26
    Join Date
    Apr 2007
    Location
    San Diego, CA
    Posts
    1,842
    Post Likes
    Damn, is that a one minute timeout?

    Sent from my MB886 using Tapatalk 2

  7. #27
    Join Date
    Apr 2010
    Location
    NYC
    Posts
    505
    Post Likes
    raspberry pi and this. Hvac trade will prosper as Individuals not goliath's
    Customer is alWays opposite of Left

  8. #28
    Join Date
    Nov 2012
    Posts
    93
    Post Likes
    Thread Starter
    Well... there's nothing really planned yet, but I made sure
    Clojure could indeed run on a raspberry pi.

  9. #29
    Join Date
    Feb 2005
    Posts
    1,706
    Post Likes
    I commend your efforts.
    But at the end no one is really addressing the restrictions at the device level, that is the real issue.
    There is no common setup/programming tool, so no matter what you do, the manufacturers can yank the leash when it comes to programming their devices.
    We need more manufacturers that provide decently priced h/w with universal or free programming/setup software tools.
    my 2cents.
    good luck.

  10. #30
    Join Date
    Nov 2012
    Posts
    93
    Post Likes
    Thread Starter
    I am well aware of that; I've already told the same thing on the
    official BACnet mailing list.

    In fact I've *****ed on the subject in the past:
    “Sure, you can reprogram your controllers, but you’ll need
    to use our closed source interface application in order to change
    anything in your programs. We will gladly let you buy one for the
    modest amount of <insert stupid locked-in price>$ and your soul
    for eternity.”
    http://frozenlock.org/2012/10/18/bac...ram-object-16/

    I don't want to go too deep on this subject here, but a possible path
    to take with the underlying BACnet library I'm writing for Wacnet is to
    use it in a controller. Because Clojure is a Lisp, code is data.
    Device programs could easily be stored and loaded as plain text file,
    giving the ability to everyone to check the code.

    But this is for another time I suppose... I do not have enough
    resources, nor enough time to invest myself into such an adventure.

  11. #31
    Join Date
    Apr 2010
    Location
    NYC
    Posts
    505
    Post Likes
    Customer is alWays opposite of Left

  12. #32
    Join Date
    Feb 2012
    Posts
    51
    Post Likes
    Greetings Frozenlock,

    A very nice effort on the BACnet server.
    To put a torch on the subject of open programming perhaps a brief examination of IEC is in order. IEC 61131 have indeed promoted standard in industry for many years to program devices. The fault lies in the end user lacking proper request for standards. Subsequently, there is not pressure to provide this capability from the manufacturer. It is on the shoulder of the specification agents and users to seek those supporting such standards, much in the way such individuals support by example the protocol BACnet. Always the failure in industry, albeit stated belatedly should any end user complain, seek out those who promote open standards as they exist and receive implementation. There is not a need to declare proprietary manufacture have won. The IEC hasn't made a full stop. There is yet a new standard that presents the ability to isolate the program sequence from the hardware utilised for control. A remarkable concept.

  13. #33
    Join Date
    Nov 2012
    Posts
    93
    Post Likes
    Thread Starter
    There we go: official 1.0.0 release!

    If you have any feature requests for the next version, please ask!

  14. #34
    Join Date
    Nov 2012
    Posts
    93
    Post Likes
    Thread Starter
    Greetings gentlemen!

    I have just released a new version of Wacnet, the BACnet webserver and toolkit.
    (Now version 1.0.4)

    This version fixes some bugs discovered in the last few months.
    If you saw a weird error page when clicking to see a device, this is for you!

    I also added a direct interface to connect to the REPL, for those of you who would want to push things
    a little further and try to program little scripts!
    Download trend logs data, make a network summary of devices, check for taken ID numbers,
    test the gross communication speed of a device... the only limit is your imagination!

    As always, you can download a precompiled version here: https://bacnethelp.com/how-to/wacnet
    Or take the source here: https://github.com/Frozenlock/wacnet

    I'm also using it on a Raspberry PI cousin, the MK802, and it works flawlessly!

    (They are, for all intended purposes, the same thing.)

    Yup, a little Bacnet webserver that you can hold in your hand. A simple port forwarding and you have access to your network everywhere.


    Don't hesitate if you have questions or comments!

  15. #35
    Join Date
    Nov 2012
    Posts
    93
    Post Likes
    Thread Starter
    Oy oy!

    We are about to launch the next version of Wacnet!

    Is there any new feature you would like to see included?

    As is it, a web API seems to be the most popular request.

  16. #36
    Join Date
    Jan 2003
    Location
    USA
    Posts
    6,447
    Post Likes
    Quote Originally Posted by Frozenlock View Post
    I'm also using it on a Raspberry PI cousin, the MK802, and it works flawlessly!
    Did you buy them all? They are sold out and just about everything. You might just have one of a kind hardware...
    Last edited by orion242; 05-23-2014 at 08:46 PM.
    Propagating the formula. http://www.noagendashow.com/

  17. #37
    Join Date
    Jan 2003
    Location
    USA
    Posts
    6,447
    Post Likes
    Quote Originally Posted by Frozenlock View Post
    Is there any new feature you would like to see included?
    1. Make it work on a android tablet and touch friendly.

    2. User created templates (list of bacnet points & static text) and apply them to groups of controllers. Displayed as more than just a text list of course.

    3. By default, use the objectname or description for the point names and the AI1, AO1, etc in smaller text if at all. Very few end users have any idea what "analog input 1" is. Outdoor air temperature on the other hand....

    4. Android kisok mode. Boot into and locked into wacnet.

    Do you have any updated screenshots, manual, videos, etc?

    Quote Originally Posted by Frozenlock View Post
    As is it, a web API seems to be the most popular request.
    Useable tablet interface for a bacnet system. Something we can hang on or in a panel.

    Integrate it with Vigilia. Create the link automatically on the tablet app. When end user is looking at the live values, he has a hyperlink to the historic data...
    Propagating the formula. http://www.noagendashow.com/

  18. #38
    Join Date
    Nov 2012
    Posts
    93
    Post Likes
    Thread Starter
    Quote Originally Posted by orion242 View Post
    Did you buy them all? They are sold out and just about everything. You might just have one of a kind hardware...
    No, I did buy a bunch, but not all I promise! ;-)

    Recently I had to contact multiple sellers, as many were just sending me fake MK802 with the less powerful Allwinner A10s instead of the classic A10.

  19. #39
    Join Date
    Nov 2012
    Posts
    93
    Post Likes
    Thread Starter
    Quote Originally Posted by orion242 View Post
    1. Make it work on a android tablet and touch friendly.

    2. User created templates (list of bacnet points & static text) and apply them to groups of controllers. Displayed as more than just a text list of course.

    3. By default, use the objectname or description for the point names and the AI1, AO1, etc in smaller text if at all. Very few end users have any idea what "analog input 1" is. Outdoor air temperature on the other hand....

    4. Android kisok mode. Boot into and locked into wacnet.

    Do you have any updated screenshots, manual, videos, etc?
    Thanks a lot for the suggestions!

    1. http://blog.hvac.io/2014/05/20/bacnet-tablet/

    2. Gotcha! This wasn't planned, but I'll try to see if I can add it for the next release.

    3. The current release candidate doesn't even show the object-type! That's probably too far away in the other direction, but yes, the focus will be on the object name.


    4. I'll look into that. Currently I mainly runs linux distro that are easier to configure. (Android and Java have a... complicated relationship.)

    New Screenshots are coming for sure in the next version, along some update in the docs. Videos I don't know yet.


    Quote Originally Posted by orion242 View Post
    Useable tablet interface for a bacnet system. Something we can hang on or in a panel.

    Integrate it with Vigilia. Create the link automatically on the tablet app. When end user is looking at the live values, he has a hyperlink to the historic data...
    I'll try to come up with something. ;-)

    Thanks again for the suggestions!

  20. #40
    Join Date
    Jan 2003
    Location
    USA
    Posts
    6,447
    Post Likes
    Quote Originally Posted by Frozenlock View Post
    4. I'll look into that. Currently I mainly runs linux distro that are easier to configure. (Android and Java have a... complicated relationship.)
    Come up with an Linux image that runs on a nexus or other wildly popular tablet. Long as its easy to deploy, supports touch & wifi, I don't really care if android is running. Cheap commodity hardware....plenty of power....put it task.

    The market is waiting for someone to destroy the current HMI touchscreen offerings.
    Propagating the formula. http://www.noagendashow.com/

Page 2 of 3 FirstFirst 123 LastLast

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •