Releases: radarjd/sparki_learning
Improved retry logic
The primary changes to this release which are visible to users are related to retry logic. Over the years, OSes appear to be more aggressive with energy saving. This causes the connection to sparki to timeout on a regular basis. Rather than report the error to the user, it's better to retry the connection to see if it was just a power saving issue.
broke out constants and gui functions
This release places constants into their own constants.py file.
GUI functions have been modified to use pySimpleGUI, and gui functions which are not specific to sparki have been moved into their own gui.py file.
I have abandoned the use of the standard logging module. It never worked quite how I wanted it to.
I believe that no code that relies on the library will need to be changed, unless it relied on the fact that we previously used logging.
fix for ultrasonic sensor; util functions broken out
The sparki_myro library which runs on the sparki itself now contains new setup code which will (I hope) fix ultrasonic sensors which aren't working properly.
I have broken out a variety of utility functions into a util library. This is in preparation of ultimately making the library object oriented.
fixes to LCDdrawLine()
The LCDdrawLine() command in the underlying sparkiduino library was buggy. I have reimplemented it in Python and removed the code from sparki_myro.c
The sparki.systemVoltage() command in the sparkiduino library was unreliable per ArcBotics. I have depricated it -- it will always return -1.
clean up and added syncWait()
This release cleans up the source code some, and adds the syncWait() command to make synchronized movement across multiple computers with multiple sparkis a little easier
updated for python 3.6 and added noop
This version updates the library to work with Python 3.6 (the most recent version as of this date), and adds the noop command.
Macs continue to be problematic in the sense that they drop the bluetooth connection very quickly, and the library has to compensate behind the scenes to restore that connection. This release adds a noop command and a noopWait to continue to send packets to keep the connection alive.
added getCentimetersMoved(), fixed askQuestion()
This release fixes quite a few bugs (see the individual versions), and adds the getCentimetersMoved() and getCommandQueue() commands. It also fixes askQuestion() so that it actually works now.
This is recommended for all users
made minor changes to speak(), joystick() and senses()
speak() will now accept arguments similar to the print() command
joystick() and senses() will attempt to bring their windows to the top
updated documentation to reflect changes
added timer
Added the timer() function and additional error handling code for Macs.
code cleanup
This release has very minor changes to clean up code and prepare for the fall semester