Skip to content
  1. Mar 20, 2022
  2. Apr 21, 2020
  3. Apr 18, 2020
  4. Jun 03, 2019
    • Sebastian Kuzminsky's avatar
      Merge remote-tracking branch 'origin/2.7' into 2.8 · c5f484c1
      Sebastian Kuzminsky authored
      * origin/2.7:
        fix some compiler warnings in libnml
        debian buster packaging: use correct package names for python imaging debs
        let debian/configure specify python-imaging and python-imaging-tk package names
        debian/configure: Debian-testing will become Debian-10
        packaging: don't depend on python-gnome2
        remove unused program halgui
        hy_gy_vfd: fix modbus byte timeout
        mb2hal: add support for libmodbus 3.1.2 and newer
      c5f484c1
    • Sebastian Kuzminsky's avatar
      mb2hal: add support for libmodbus 3.1.2 and newer · 14c9f0df
      Sebastian Kuzminsky authored
      This commit makes mb2hal build with both libmodbus < 3.1.2 (Debian
      Stretch and older) and libmodbus >= 3.1.2 (Debian Buster).
      14c9f0df
  5. Aug 21, 2018
    • Lars Bensmann's avatar
      mb2hal: call modbus_flush() on transaction error · 0828f36f
      Lars Bensmann authored
      When a communication error happens and a transaction is just partially
      read the modbus link can get out of sync. The next transaction gets the
      unconsumed data from the transaction before and so on and the link does
      not recover form this. modbus_flush() prevents this behaviour.
      0828f36f
  6. Aug 19, 2018
  7. Jan 22, 2018
    • Sebastian Kuzminsky's avatar
      Merge remote-tracking branch 'origin/2.7' · b620e895
      Sebastian Kuzminsky authored
      Conflicts:
      	docs/man/man1/halstreamer.1
      	lib/python/gladevcp/combi_dro.py
      	src/emc/motion/command.c
      	src/emc/task/emccanon.cc
      	src/emc/usr_intf/emcrsh.cc
      	src/emc/usr_intf/gmoccapy/getiniinfo.py
      	src/hal/components/biquad.comp
      	src/hal/components/orient.comp
      	src/hal/components/streamer.c
      b620e895
  8. Jan 21, 2018
  9. Sep 15, 2017
  10. Jul 01, 2017
  11. Aug 20, 2016
  12. Jul 04, 2016
  13. Jul 27, 2014
  14. Sep 06, 2013
    • Jeff Epler's avatar
      mb2hal: compute timeouts with integer math · d226fd5c
      Jeff Epler authored
      The prior code uses questionable casts to do what can be done with
      modulo integer math.
      
      The new code does not give *exactly* the same timeout, because the
      calculation
          (int)(float)(this_mb_tx->mb_response_timeout_ms / 1000.0)
      is subject to rounding errors, while
          timeout.tv_sec  = this_mb_tx->mb_response_timeout_ms / 1000;
      is not.  For example for a response timeout of 2001ms, the old code
      would actually give a timeout of 2.000999 seconds, while the new code
      gives the correct result of 2.001000 seconds.  The new code begins
      giving "radically" different (but again more correct) values around
      65536 seconds due to the loss of precision in float arithmetic
      (65536.000f == 65536.001f when you have a 24-bit mantissa)
      
      Tested by cut&paste of old and new code into a test harness:
      
      struct timeval fold(long arg)
      {
          struct timeval timeout;
          timeout.tv_sec  = (int)(float)(arg / 1000.0);  //int part of the float
          timeout.tv_usec = ((float)(arg / 1000.0) - timeout.tv_sec) * 1000000;
          return timeout;
      }
      
      struct timeval fnew(long arg)
      {
          struct timeval timeout;
          timeout.tv_sec  = arg / 1000;
          timeout.tv_usec = (arg % 1000) * 1000;
          return timeout;
      }
      
      void check(long timeout) {
          struct timeval ta = fold(timeout);
          struct timeval tb = fnew(timeout);
      
          double a = ta.tv_sec + ta.tv_usec * 1e-6;
          double b = tb.tv_sec + tb.tv_usec * 1e-6;
          if(fabs(a - b) > .001) {
          // if(ta.tv_sec != tb.tv_sec || ta.tv_usec != tb.tv_usec) {
              printf("fail tv_sec %lu: %lu.%06lu != %lu.%06lu\n", timeout,
                  (long) ta.tv_sec, (long) ta.tv_usec,
                  (long) tb.tv_sec, (long) tb.tv_usec);
          }
      }
      
      int main() {
          long i;
          for(i=0; i<1000*1000*1000; i += 500) {
              check(i);
              check(i+1);
              check(i+499);
          }
      }
      d226fd5c
  15. Jun 05, 2013
    • Sebastian Kuzminsky's avatar
      configure: require libmodbus3 · c2c5c067
      Sebastian Kuzminsky authored
      By default, configure will now look for libmodbus (installed from a
      separate deb, provided by Ubuntu for Precise and by the linuxcnc.org
      debian archive for Hardy and Lucid) and error out if it can't be found.
      
      The user can disable this check (and disable compilation of all drivers
      that use libmodbus) by configuring with "--without-libmodbus".
      c2c5c067
  16. Mar 27, 2013
  17. Nov 13, 2012
    • Victor Rocco's avatar
      mb2hal: added functionallity, including arduino example. · c4e41765
      Victor Rocco authored
      
      
      - Arduino example added.
        Tested with Arduino Mega 2560 R3 using Modbusino over USB at 115200 bps.
      - New parameters in config file.
        HAL_MODULE_NAME, MB_RESPONSE_TIMEOUT_MS and MB_BYTE_TIMEOUT_MS.
      - New HAL pin "num_errors" for each transaction. num_errors = 0 if last
        transaction OK, else the count of failed transactions.
      - Fix a bug, OPTIONAL's parameters may be 0 instead of default value if
        not specified in 1st transaction.
      
      Signed-off-by: default avatarMichael Haberler <git@mah.priv.at>
      c4e41765
    • Victor Rocco's avatar
      mb2hal: now using libmodbus3, added improvements. · 7bea47a3
      Victor Rocco authored
      
      
      - Mb2hal now uses libmodbus3 instead of the old libmodbus file
        located in src/hal/user_comps/modbus.c used by gs2_vfd.c
        # Also fix a TIMEOUT bug (due to this unpatched old libmodbus file).
      - Better INI file documentation (HOW-TO).
      - Better Submakefile.
      - Source code cleaned and reordered.
        # Now is posible to add new functionallity.
      
      See LogBook.txt for more information.
      
      Signed-off-by: default avatarMichael Haberler <git@mah.priv.at>
      7bea47a3
  18. Nov 01, 2012
  19. Oct 27, 2012
  20. Oct 24, 2012