Version 2.3.2

This version mainly fixes errors in counter IOs

  • Counter IOs 8 – 16 can now also be reset with .reset ()
  • Runtime warnings have better error hints
  • debug argument introduced to get complete error messages
  • Format check implemented by .replace_io(...) for specific types
    Thanks to Nicolai Buchwitz
  • Improved argument checking on instantiation

DOWNLOAD

Version 2.3.1

This update introduces the counter-reset of DI / DIO modules!

  • Counter IOs now have the function .reset() to reset the counters on the DI / DIO modules.
    Note: The Wheezy (7) system does not support this in the piControl!
  • Counter can also be reset via RevPiNetIO over the network (RevPiPyLoad at least version 0.7.5).
  • Iterators now issue Python-conforming exceptions.
  • The function .replace_io(...) was offered for all IO objects, but can only be used with gateway or virtual devices. It is now only available on IOs that support this feature.
  • The .mainloop(...) now accepts the no_warn=True parameter to disable runtime warnings.

DOWNLOAD

Version 2.2.5

Important update!

  • IOs of the Core / Connect modules are now managed statically, which is very important if new IO variants of the modules should appear in piCtory.
  • If events are appended to IOs of the .core. class via .reg_event(...), the IO names are prefixed with core. . The name of the input X2 of the Connect is now “core.x2in” to avoid overlapping with other piCtory names.
  • Export flag from piCtory for RevPiStatus und RevPiLED is passed to the IOs of the .core. class.
  • Export flag for x2in was passed from RevPiLED, which is wrong. Now the export flag of RevPiStatus will be used.

DOWNLOAD

Version 2.2.3

  • Improves module performance
  • Set internal cycle time depending on the core version at instantiation. This improves the event system and responds much faster to IO changes – especially with Core3
  • Runtime monitoring integrated for event functions. Warnings are issued if functions have too long runtimes
  • The “Export” flag from piCtory can now be retrieved via .io.ioname.export
  • You can pass the parameter export=True/False to the functions  .get_allios(...) / .get_inputs(...) / .get_outputs(...) of the device class to get only IOs that have set, or not set the export flag in piCtory
  • Fixes errors that could occur under certain circumstances with reg_event(...) / unreg_event(...)
  • Improvements in RevPiNetIO classes provide better network communication with RevPiPyLoad

DOWNLOAD

Version 2.2.2

Important update + RevPi Connect

  • Core LEDs will not be switched off after instantiation.
  • For next generation of virtual devices we now can create more than 16 BIT IOs per memory unit.
  • You can control the LEDs on the Cores (next to .core.A1) with .core.a1green.value = True/False / .core.a1red.value = True/False. These are IO objects that also offer all other functions of the IOs.
  • RevPi Connect is supported now!
    • .core.A3 or .core.a3green / .core.a3red are available.
    • You can control the watchdog with .core.wd.value = True/False.
    • To toggle the watchdog automatically during the program runtime, you can set .core.wdautotoggle = True.
    • Internal IOs of X2 .core.x2in und .core.x2out are RevPiModIO.io objects than offer all their features and functions. For example, you can register an event to the internal input of X2 .core.x2in.reg_event(funktion). To set the internal output of X2 use .core.x2out.value = True.
  • For cyclic work after .mainloop(blocking=False) you can use the new exit signal instance.exitsignal.is_set() or while not instance.exitsignal.wait(0.5): to exit your own loop.
    The signal is set when invoking instance.exit() or end of program when using .handlesignalend().
  • Small performance improvements.

DOWNLOAD

Version 2.1.5

Small update

  • The function .cycleloop() now takes over the cycle time transferred by the optional parameter cycletime before the first run.
  • Processing of defaultvalues from piCtory improved.

DOWNLOAD

Version 2.1.3

This update improves error messages and introduces byte summary with .replace_io(...) function:

  • Error messages were made clearer in case of missing piCtory configuration.
  • Network errors with RevPiNetIO are displayed as warnings.
  • Several bytes of a gateway or virtual device can be combined as a byte sequence in a new IO. The .replace_io("neuername", frm="8s") function for the format character s now supports a number of bytes. See DOC.

DOWNLOAD