Loading ...
Sorry, an error occurred while loading the content.
 

Re: Special notice: Heavyweather / USB Serial adapters, Bad Combo!

Expand Messages
  • wuhu_software
    Just a couple observations. 1) Heavyweather is establishing the handshaking, baud rate, when the port is opened. It seems to be communicating at 2400 baud. It
    Message 1 of 5 , Jan 18, 2006
      Just a couple observations.

      1) Heavyweather is establishing the handshaking, baud rate, when the
      port is opened. It seems to be communicating at 2400 baud. It is
      placing a heavy demand on the drivers by continually placing a high
      demand on the USB/serial driver architecture by calling Purge TX,
      Purge TX, and Set comm. timeouts per every character sent. The only
      other interesting observation I have made is that they are placing a
      5 millisecond timeout on character writes. The low-timeout value
      could be causing some type of internal write character cancel
      operation that is faulting at some level. A 5 millisecond timeout is
      just asking for trouble. If we could hack the binary of heavyweather
      and change that one timeout, it might have an impact. I am not really
      in to hacking .exes so that will have to wait. If you want to listen
      in on the serial communications, download a free program
      called "Portmon" from sys internals.

      2) Although the Heavyweather program may be poorly written, and even
      though some USB driver implementations may be poorly implemented, I
      would suggest that there is probably some fundemental problem with
      the entire USB/Serial implementation in the operating system. It is
      my opinion that this flaw just happens to be exposed within a few
      hours by Heavyweather. I have tested my particular USB/Serial adapter
      working with other types of serial equipment and have been able to
      run for days at a time without fault.

      Another reason that I am suggesting that this is a Microsoft issue is
      that we are using a mixture of operating systems, 2000, XP home and
      Pro, and possibily others, and also a variety of adapters. What is
      common? The USB/Serial driver architecture. We might have common
      chipsets, that is yet to be determined.

      Also, it seems obvious that in order for these "restarts" to occur,
      the flawed code is most defintely running at the Kernel level. If
      this were any type of application layer bug, it could not reboot the
      machine. Since the errors are not occurring when using real serial
      ports, the serial.sys driver is properly dealing with whatever the
      condition is.

      It is possbile that the vendors of adapters that have a common chip
      set are also running some common driver code (maybe from Microsoft)
      but I am doubtful of this. Looking over the MS knowledgebase, there
      have been other issues related to "restarts", the source of the
      problems were tracked back to usbhub.sys.

      Unless the theory of the type of chipset being used pans out, I
      suggest this is really a Microsoft problem that happens to be exposed
      quickly (within a day) by the Heavyweather application behavior.

      If you look over litany of complaints at the following site, it is
      surprising that the USB implementation works at all.

      http://www.usbman.com/

      Thanks.

      --- In wuhu_software_group@yahoogroups.com, "jjantti2"
      <jjantti2@y...> wrote:
      >
      > --- In wuhu_software_group@yahoogroups.com, "William Burns"
      > <billb73@c...> wrote:
      > >
      > > Interesting.
      > >
      > >
      > >
      > > I have a 2310 and I am running with a Serial to USB converter from
      > > IOConcepts.it has been operational since August and I have not
      had a
      > > single problem with HeavyWeather causing the machine to reboot or
      > > lock up..any chance you down-loaded a virus with HeavyWeather or
      is
      > > it only a bad combination with certain weather stations ??
      >
      > As far as file downloads are concerned, no virus is likely to exist,
      > otherwise it would have affected a wider range of weather stations
      > too, not just the 23xx.
      >
      > I have a theory about the problem, but I have no way of testing it.
      > The theory is that 2 out of 3 USB to RS232 adapters use chipsets
      that
      > are in such a way restricted that they only operate without problems
      > when used with standard serial devices like modems and the FIFO
      buffer
      > implemented in all chipsets is used to speed up data transfers from
      > the attached device.
      >
      > Now, we all know that HW uses a non-standard methods of
      communication
      > with the weather station. The possibilities of a crash is now
      divided
      > into four primary possibilities:
      >
      > 1) Communication with non-standard methods causes the chipset on the
      > adapter go bananas, eventually locking up or BSODing the machine,
      > causing a reboot.
      >
      > 2) The adapter driver is not written to bypass all commands, being
      > they standard or not, to the serial interface. If the driver is
      poorly
      > written, it may try to do some kind of operations that can cause a
      > lockup or BSOD crash if doesn't know how to handle non-standard
      > communications.
      >
      > 3) The FIFO buffer is not filled to the point that an automatic
      buffer
      > flush would occur and since HeavyWeather is likely not to command a
      > buffer flush, it causes the data to become corrupt or causes a
      > synchronization error with the weather station which causes an
      > eventual lockup or BSOD.
      >
      > 4) The COM Port handshake setting may need adjusting. Try using
      > Hardware (RTS/CTS) or software (Xon/Xoff) methods, or disable it (if
      > not disabled already)
      >
      > By default, Windows 2000 and XP sets all COM port FIFO values, being
      > them logical of physical COM ports, to full. Try lowering the FIFO
      > value to a minimum (or better yet, disable it, if possible) on the
      COM
      > port you use with HeavyWeather and see if that helps. You may even
      try
      > changing both FIFO and handshake settings to see if there's any
      change
      > in operation. Both settings are changed from the Device Manager on
      > Windows 2000 and XP.
      >
      > It is possible that William's adapter is so well built, that it can
      > bypass any communication to the serial interface without crashing.
      > There are many different makes and models of USB to RS232 adapters
      out
      > there. Not all of them are trash, as seen on William's case. Someone
      > should make a list of the good and the bad adapters.
      >
      > Best regards,
      > Juha
      >
    Your message has been successfully submitted and would be delivered to recipients shortly.