v0.0.13-Unstable
Pre-release
Pre-release
Full Changelog: v0.0.11-Unstable...v0.0.13-Unstable
Huge changes to support real parallelism. Drivers can now run on their own dedicated process, with minimal overhead, while preserving object oriented design, Driver threads remain blocked while Synchronized navigation operates GPIO pulses in a coordinated fashion, transparently, being the only active thread it does not get disturbed by client application and avoid Drivers interfering with each other.
Minor improvements to tprint
Pendings from release v0.0.11:
- micro-stepping modes (always used full step mode) (No change)
- How well threads are scheduled with multiple motors running.
- This release adds 2 complementary features:
-
- BasicSynchronizedNavigation
-
- multiprocess (not multiprocessing) (see README); makes the frequency much more stable as you add motors to your RPi.
Pendings from this release:
- micro-stepping modes (always used full step mode)
- EventDispatcher cross-proccess event propagation from child to parent. Needs testing, probably a few tweaks.
- Check that update position on child process' Controller is visible on Parent Process' Proxy Controller:
def setCurrentPosition(self, position):
self.currentPosition = position
if self.sharedPosition is not None:
with self.sharedLock:
self.sharedPosition.value.position = position
self.sharedPosition.value.direction = self.currentDirection