- Provide support for teensytoany firmware 0.18.0 for
spi_transfer16command. - The returned value from
spi_transferis also returned as an integer.
- Consolidate multiple entry points into a single
teensytoanycommand with subcommands:teensytoany programmer(replacesteensytoany_programmer)teensytoany i2c-scan(replacesteensytoany_i2c_scan)teensytoany list(replacesteensytoany_list)
- Maintain backward compatibility with deprecation warnings for old entry points
- Add
fastled_set_max_refresh_ratemethod to control FastLED refresh rate.- Supports rates from 1-800 Hz for normal operation
- Rate of 0 runs as fast as possible
- Add missing command methods to provide complete interface to all firmware commands:
- I2C commands:
i2c_reset,i2c_read_no_register_uint8,i2c_write_no_register_uint8,i2c_read_payload_uint16,i2c_begin_transaction,i2c_write,i2c_end_transaction,i2c_buffer_size,i2c_write_bulk - I2C_1 commands:
i2c_1_reset,i2c_1_read_no_register_uint8,i2c_1_write_no_register_uint8,i2c_1_read_payload_uint16,i2c_1_begin_transaction,i2c_1_write,i2c_1_end_transaction,i2c_1_buffer_size,i2c_1_write_bulk - SPI commands:
spi_buffer_size,spi_set_clock_divider - Register commands:
register_read_uint8,register_write_uint8,register_read_uint32,register_write_uint32 - Startup/Demo commands:
post_serial_startup_commands_available,read_post_serial_startup_command - Utility commands:
sleep_seconds - Info commands:
info,reboot,serialnumber,license,nop
- I2C commands:
- Add
i2c_write_bulkandi2c_1_write_bulkmethods for writing up to 8k bytes with automatic chunking and transaction management - Add
nopcommand for testing purposes and comprehensive test suite
- Provide an ability to define the device name at initialization time.
- Try to automatically connect to devices with Manufacturer TeensyToAny. This requires firmware version 0.13.0 and up.
- Fix I2C scanning command line utility by absorping the errors when no device is detected on the bus. Tested with a Teensy 4.0 and Sparkfun ISM330DHCX QWIIC board.
- Attempt to fix i2c command line utility by correctly initializing the I2C bus.
- Provide an i2c scan capabilities through the python api as well as a command
line utility:
teensytoany_i2c_scan.
- Provide capabilities to program devices with board specific firmwares. #38
- Automatically increase the timeout when issuing pulse commands to enable longer pulse durations.
- Add support for Wire1 I2C interface.
- Provide a method to control LEDs through FastLED.
- Provide control over the startup and demo commands.
- Ensure that potentially undefined variable is defined.
- Provide functions to fetch local and remote firmware versions.
- Provide a static method to program the latest firmware version and a CLI to do so from the terminal.
- Add a
timeoutproperty to the functions that deal with updating the firmware.
- Add a
timeoutproperty to simplify modifying the command timeout.
-
Provide access the new
mcucommand that reveals the microcontroller used at the time of firmware programming. -
Provide an internal method that can be used by developers to update to the latest firmware.
- Small fixup in how reading the Teensy's registers is done to ensure better forward compatibility.
The following features require teensy-to-any version 0.0.23 or greater
- Add support for
gpio_digital_pulse. - Add support for
analog_pulse. - Add support for new
valueparameter forgpio_pin_mode. - Add support to read the data returned from
spi_transfer_bulk.
- Address bugs in reading the values from Teensy's registers.
- Add the ability to read and write to the teensy's registers.
- Increase default timeout to 0.2 seconds from 0.1. This helps receive error messages from missed I2C communications.
- Return an error if no response is returned from a standard command indicating a timeout.
- Try to avoid racy conditions in version reading
- Flush buffers upon startup to help with crash recovery.
- Make the error message when no device is found more human friendly.
- Use packaging instead of distutils for version identification
- added function
spi_read_byteenabling the user to read SPI register.
- added function
analog_readenabling the user to read analog signals.
- added
i2c_read_payload andi2c_write_payload functionswhich allows users to read and write a contiguous payload of bytes
- Ensure compatibility with pyserial 3.X
- Power a
start_poweroffparameter toTeensyPowerto start the device in the on state. - Added the ability to close and open the device without deleting the python object.
- Added the ability to control a power switch that is connected to the nominally on port.
- Added capabilities for SPI and Analog functions
TeensyPowerdestructor will not raise an error when the device had failed to open.
TeensyPowerdevices will automatically poweroff the output when closed.
- Added the specialized
TeensyPowerdriver.
- Added a few more serial numbers to the
teensytoany.known_devices
- First release on PyPI.