Activity for John Hartman

  • John Hartman John Hartman posted a comment on discussion Open Discussion

    All of those terms are defined in the BACnet standard. The standard is not free, but you are unlikely to get very far in understanding BACnet without it.

  • John Hartman John Hartman posted a comment on discussion Help

    There is no way to do this with unmodified OBS. As ltribble's response from 2010 said, there once was a device called an "NBLINK" that could do this, but it has been obsolete for many years.

  • John Hartman John Hartman posted a comment on ticket #120

    VTS hasn't seen any serious development for almost 10 years. So if UI issues are your biggest complaints, you are doing pretty well with a program written around the turn of the century. The UI is pretty much stock MFC circa 2000. That said, the source code is right there for you or anyone who wants to make it beautiful. You'll get paid the same wages as most of the people who worked on it back in the day.

  • John Hartman John Hartman posted a comment on discussion Help

    Your EPICS specifies which objects your test implementation has, what properties those objects have, and whether or not the properties are writable. Please be aware that VTS has not been under active development for a long time. It supports almost nothing after protocol revision 12, and I don't think it supports everything in 12. That said, it may still be useful in helping you debug your implementation

  • John Hartman John Hartman posted a comment on discussion Open Discussion

    Scripting in VTS is deeply entangled with the GUI, so you can't do this via command line. Given the limitations of VTS scripting (no loops, almost no conditionals) I think you would be better off looking at one of the Python BACnet libraries. (Sorry, I can't recommend one)

  • John Hartman John Hartman posted a comment on discussion Open Discussion

    Congratulations on being able to build! The only documentation is what's in the "Docs" directory, and that is almost entirely user-level stuff. The badly-named "QuickStart.html" starts with how-to, but the latter parts are mostly code check-in comments. I used them to find features that never made it into the documentation. In terms of code documentation, it begins with either // or /* (Even that puts you ahead of many open source projects, which have few or no comments beyond the GPL boilerplate)...

  • John Hartman John Hartman posted a comment on ticket #118

    I won't argue that "it would be great" if VTS supported Protocol Revision 19. But since the current codebase has only partial support for even Revision 12, and since there have been no check-ins since August 2018, all I can suggest is "use the Source, Luke". The good news is that even the free version of Microsoft Developer's Studio now supports MFC. The bad news is that VTS is a large and sometimes messy program, much of which dates back 10 to 20 years. So start small, and fix small things that...

  • John Hartman John Hartman posted a comment on discussion Help

    An exact update (changing a few variable names) of your code would be IUT_NET = 'MyEther' IUT_ADDR = 112233445566 OBJECT1 = device, 555 -- Product Name OBJECT2 = analog-input, 1 -- AMD Airflow OBJECT3 = analog-input, 2 -- AMD Temperature OBJECT4 = analog-input, 4 -- AMD Alarm Status OBJECT5 = analog-value, 1 -- AMD Area OBJECT6 = analog-value, 10 -- Traverse Status SECTION Read Properties of OBJECT1 TEST#1.1 - Read object-identifier DEPENDENCIES None SEND ( NETWORK = IUT_NET DA = IUT_ADDR DER = TRUE...

  • John Hartman John Hartman posted a comment on discussion Help

    On the "Edit" menu, select "Ports" and configure the port to use Ethernet rather than IP. Are you testing ONLY BACnet/Eth, or also BACnet/IP? VTS allows you to create multiple ports - such as one for IP and one for raw Ethernet. However, as the "VTS Survival Guide" (in the docs folder) says Define one and only one Port. Otherwise VTS won’t have a default and you will need to pick a Port each time you want to send a message using the message dialogs, and your scripts will need to specify a Port, which...

  • John Hartman John Hartman posted a comment on discussion Help

    The current COV handler (VTSServer::CovNotification) has a comment // todo: need to decode the COVNotification packet to ensure it // is encoded correctly and then perform any functions we might // need to do. Then send the simpleAck. Currently we just send // the simpleAck. So you will ALWAYS get a SimpleAck. There is some commented-out rudimentary PDU decoding that could get you started on doing a fuller decode, and return whatever responses you wish.

  • John Hartman John Hartman committed [r1015]

    Show primitive type and context tag value on Device Tree values

  • John Hartman John Hartman committed [r1014]

    Save context tag value on change to edit field

  • John Hartman John Hartman posted a comment on discussion Help

    It ain't pretty, but it can be done. I set the list-of-property-references in a schedule object. I'll try to attach images Use "New Value" to add the first component, and set its context tag Right click on the first value and use "New Value Component" to add the next component and its tag Repeat for all components My example property is a list, so I used "New Value" to begin the second value Due to a bug in VTS, a context tag value won't be used or remembered unless you click on a different value,...

  • John Hartman John Hartman posted a comment on discussion Help

    I just successfully ran a script with this snippet: SEND ( PDU = Confirmed-Request Service = ReadProperty Object = 0, OBJECT1 Property = 1, local-date ) EXPECT ( PDU = ComplexAck Service = ReadProperty Object = 0, OBJECT1 Property = 1, local-date OpenTag 3 DATE ? CloseTag 3 ) So "?" works there. This is primitively tagged

  • John Hartman John Hartman posted a comment on discussion Help

    To wildcard the entire item, you can use ?. So, in an EXPECT you might have Date ? if the Date has a primitive tag, or Date 1, ? if the Date has a context tag of 1. The "Survial Guide" makes a passing reference to this, pointing at the "Quick Start". Search the latter document for 618176.

  • John Hartman John Hartman committed [r1013]

    Version 3.6.7 release.

  • John Hartman John Hartman posted a comment on discussion Open Discussion

    It appears that the reason I can't commit is that SourceForge is moving to a new data center, so we will hope that things will be fixed within a few days. Regarding changing VTS to UNICODE: good luck. Some chunks of the VTS code base are C code dating from the mid to late 1990s, and even much of the newer code contains char arrays and assumes "character is a byte". So converting to UNICODE would be a massive undertaking and not worth the effort: if you have that much time and interest, do a rewrite...

  • John Hartman John Hartman posted a comment on discussion Open Discussion

    I still can't commit, or log in to do the full release. I WAS able to upload my build. I didn't mark it as "official" pending checkin, but you can get it by clicking on the "Files" tab, selecting VTS 3.x, selecting VTS 3.6.7, and download the ZIP.

  • John Hartman John Hartman posted a comment on discussion Open Discussion

    I just built it with VS 2010, which is the latest that I have, and it builds there. A little more detail than "didn't suceed" would be nice if you want help in building VTS. The most common issues are MS tightening the screws on things they don't like. I am trying to do an official release. Unfortunately, I have retired and no longer have access to the machine from which I did the last set of commits in January. And I haven't been able to commit or upload a new build from this machine today. Not...

  • John Hartman John Hartman committed [r1012]

    Update VendorID string table. Add pointer to release generation instructions.

  • John Hartman John Hartman committed [r1011]

    Version 3.6.7

  • John Hartman John Hartman committed [r1010]

    Generated script to read EPICS properties: expect Error for log-buffer, since it can't be read with ReadProperty

  • John Hartman John Hartman posted a comment on discussion Open Discussion

    I don't know anything about WINE. On Windows, the "can't find DLL" messages usally come from the OS as it tries to load the application, not from code in the application itself. Run VTS on Windows, and use Dependency Walker, a debugger, or a similar tool to see what DLLs it loads. Do this on RUNNING VTS, since some DLLs may be loaded at runtime rather than specified in the link. VTS uses WinPCAP for naked Ethernet access. I don't recall whether VTS links to it or loads it manually. VTS uses (or used...

  • John Hartman John Hartman posted a comment on discussion Help

    Does VTS receive and show OTHER messages? Can you do a ReadProperty of a device on...

  • John Hartman John Hartman committed [r1009]

    Version 3.6.6

  • John Hartman John Hartman posted a comment on discussion Help

    Bug in VTS. The "null" choice is missing from StringTables.cpp BACnetDoorValue_orNull....

  • John Hartman John Hartman posted a comment on discussion Help

    VTS was written mostly to test BACnet servers. Its client capabilities are pretty...

  • John Hartman John Hartman posted a comment on discussion Help

    VTS scrips are pretty limited as far as conditional operations go. Read other discussion...

  • John Hartman John Hartman posted a comment on discussion Help

    The problem is that the VTS scripting "language" is very weak. You can easily craft...

  • John Hartman John Hartman posted a comment on discussion Help

    By "version of the test conformance" do you mean "what version of 135.1"? If so,...

  • John Hartman John Hartman posted a comment on discussion Open Discussion

    Register-Foreign-Device must be sent to a BBMD that accepts foreign registrations....

  • John Hartman John Hartman posted a comment on discussion Help

    VTS was designed mostly as a BACnet client, to test BACnet server devices. It implements...

  • John Hartman John Hartman posted a comment on discussion Help

    One option for you might be to use the WAIT command between your EXPECT and the next...

  • John Hartman John Hartman posted a comment on discussion Help

    A quick test shows that "SEND AFTER" does work on a series of SENDs with no EXPECTS...

  • John Hartman John Hartman posted a comment on discussion Help

    The packets sent and received by a script are shown in the main VTS window, just...

  • John Hartman John Hartman posted a comment on discussion Help

    There is no such capability in VTS today. In general, VTS is pretty limited as a...

  • John Hartman John Hartman posted a comment on discussion Help

    It seems likely that there are three devices. The duplication of I-Am with different...

  • John Hartman John Hartman posted a comment on discussion Help

    Please try to THINK a little. I told you what you did wrong: you are sending a WriteProperty,...

  • John Hartman John Hartman posted a comment on discussion Help

    Are you talking about VTS's BAcnet decoder, the Send Dialog, or VTS scripting? I...

  • John Hartman John Hartman posted a comment on discussion Help

    You SEND a WritePropery. You then EXPECT the response to ReadProperty. Note that...

  • John Hartman John Hartman posted a comment on discussion Help

    I suggested two alternatives, and you seem to have mixed them With the "Name" that...

  • John Hartman John Hartman posted a comment on ticket #17

    Is there a way around his? Sure: download the source code to VTS and implement the...

  • John Hartman John Hartman posted a comment on discussion Help

    You should start by reading "VTS Survival Guide.doc" in your VTS doc folder. Then...

  • John Hartman John Hartman posted a comment on ticket #324

    Fixed by svn 1008

  • John Hartman John Hartman modified ticket #324

    StringTables.cpp has some units with space which don't work in VTS

  • John Hartman John Hartman posted a comment on discussion Open Discussion

    Fixed by svn 1008

  • John Hartman John Hartman posted a comment on discussion Help

    It certainly WOULD be nice to be able to generate scripts from the Send dialogs....

  • John Hartman John Hartman committed [r1008]

    Bug 324: change BACnetEngineeringUnits strings ...

  • John Hartman John Hartman posted a comment on discussion Open Discussion

    Bug in VTS: It SHOULD BE power-factor, as in clause 21 But the table in \vts\VTS3_release\Sniffer\StringTables.cpp...

  • John Hartman John Hartman posted a comment on discussion Help

    The responce of my device is : ERROR-CHOICE but nothing else is explained. What does...

  • John Hartman John Hartman posted a comment on discussion Help

    The example you are looking at seems to be the one in scripts\old. These are mostly...

  • John Hartman John Hartman posted a comment on discussion Open Discussion

    VTS is a crusty and peculiar beast. It was mainly intended as a CLIENT, to send requests...

  • John Hartman John Hartman posted a comment on discussion Help

    One technique that works pretty well is to follow the installation instructions in...

  • John Hartman John Hartman posted a comment on discussion Help

    Do you have the BBMDs configured so that their BDTs each contain both their own address,...

  • John Hartman John Hartman posted a comment on ticket #323

    3.6.5, released last Friday, replacing 3.6.5 released last December. I see now that...

  • John Hartman John Hartman modified ticket #323

    error 10049 breaks forever

  • John Hartman John Hartman posted a comment on ticket #323

    A potenial fix (Using SO_REUSEADDR and showing an explicit error message) has now...

  • John Hartman John Hartman posted a comment on discussion Help

    This fix has now been released in VTS 3.6.5

  • John Hartman John Hartman committed [r1007]

    Version 3.6.5 release: update vendorID strings,...

  • John Hartman John Hartman committed [r1006]

    Update images to current UI and best practice

  • John Hartman John Hartman committed [r1005]

    Cleanup: eliminate some unused definitions

  • John Hartman John Hartman committed [r1004]

    Modify IP startup (add SO_REUSEADDR etc) to bet...

  • John Hartman John Hartman posted a comment on ticket #323

    Please clarify: you say the error message has "sendto" in it, but appears at STARTUP?...

  • John Hartman John Hartman posted a comment on discussion Help

    Do you have the ability to build VTS locally? I think this was fixed by snv commit...

  • John Hartman John Hartman posted a comment on discussion Help

    VTS itself will not act as a BBMD. There is a radio button for this in the Port Configuration...

  • John Hartman John Hartman committed [r1003]

    Eliminate redundant tables of enumeration strin...

  • John Hartman John Hartman posted a comment on discussion Open Discussion

    VTS as a BACnet server can respond to ReadProperty and WriteProperty. So you could...

  • John Hartman John Hartman posted a comment on ticket #16

    Features are added to VTS primarily by the people who need them. Feel free to download...

  • John Hartman John Hartman committed [r1002]

    Show some love to the TD's object editor: add c...

  • John Hartman John Hartman committed [r1001]

    Fix crash in Send Event Notification caused by ...

  • John Hartman John Hartman committed [r1000]

    Add parse and test of MaxSegs value in Expect C...

  • John Hartman John Hartman committed [r999]

    Modify Expect ANY to allow zero-length data

  • John Hartman John Hartman committed [r998]

    Fix length calculation bug in BACnetAPDUDecoder...

  • John Hartman John Hartman committed [r997]

    Make BACnetOctet* argument const

  • John Hartman John Hartman committed [r996]

    Version 3.6.4 release. VendorIDs up through 797

  • John Hartman John Hartman committed [r995]

    Eliminate warning on Enable3dControls with curr...

  • John Hartman John Hartman committed [r994]

    Better display of ConfReq second header byte as...

  • John Hartman John Hartman committed [r993]

    Plug yet another EPICS parser hole (calendar re...

  • John Hartman John Hartman committed [r992]

    Tweaks of float and double string output to ens...

  • John Hartman John Hartman committed [r991]

    Add write-back test option to EPICS generator

  • John Hartman John Hartman modified ticket #322

    Device Address Binding Error

  • John Hartman John Hartman posted a comment on ticket #322

    Fixed by svn 988 and 989 (which also refactor Match functions for other types)

  • John Hartman John Hartman modified ticket #320

    Wrong DADR value generated

  • John Hartman John Hartman posted a comment on ticket #320

    Fixed by svn 987: generate script using X'12345678' format rather than 12-34-56-...

  • John Hartman John Hartman committed [r989]

    Bug 322: add Match method to BACnetAddr. Refac...

  • John Hartman John Hartman committed [r988]

    Bug 322: add Match method to BACnetAddr. Refac...

  • John Hartman John Hartman committed [r987]

    Bug 320: Change format of DADDR in generated re...

  • John Hartman John Hartman committed [r986]

    Read latest version from http://vts.sourceforge...

  • John Hartman John Hartman committed [r985]

    Eliminate duplicate resource IDs, renumbering a...

  • John Hartman John Hartman posted a comment on ticket #316

    Seems like as-designed to me. If you don't care WHETHER you get a response, omit...

  • John Hartman John Hartman modified ticket #316

    empty EXPECT statement

  • John Hartman John Hartman posted a comment on ticket #320

    I am not quite clear on what you are doing. What you you mean by "it is generated...

  • John Hartman John Hartman posted a comment on ticket #321

    Fixed by svn 984. Stored 8 bits, referenced 16, so that first character of device-type...

  • John Hartman John Hartman modified ticket #321

    Wrong Value Read for Multi-State-Input

  • John Hartman John Hartman committed [r984]

    Fig for Bug321: MI stored only 8 bits for prese...

  • John Hartman John Hartman committed [r983]

    Gussy up EPICS generator: include property-list...

  • John Hartman John Hartman committed [r982]

    Had = instead of == in ReadFloat. Someday I wi...

  • John Hartman John Hartman committed [r981]

    Accept special Real and Double values NaN, +inf...

  • John Hartman John Hartman committed [r980]

    - Fix bug in parsing tag values 15 and above (f...

1 >