Skip to content

Releases: TriadSemi/TS8000

TS8000 Library - Added time-of-flight measurement

21 May 18:59
Compare
Choose a tag to compare

v4.0.0 is a BETA release of the TS8000 library that adds functions to perform a very basic ultrasonic time-of-flight (ToF) measurement. The additional functions utilize TC and TCC timer peripherals, which require microcontroller-specific code to configure, so the BETA release targets a specific microcontroller, the SAMD21 (Arduino ZERO).

However, the ToF measurement itself is not particularly difficult to make, so the code should be fairly intuitive to port to another microcontroller architecture, with the hardest part being configuring the timers and interrupts on your specific target micro.

The readme.md and example sketch include a connection diagram for hooking up a simple circuit to transmit and receive an ultrasonic pulse train.

We wanted to get this version out there so developers could start playing with very basic ultrasonic TX / RX capability, but the code, although functional, is immature and still needs cleanup and likely re-architecting.

TS8000 Library

05 Mar 19:27
66e904e
Compare
Choose a tag to compare

TS8000 Ultrasonic to Digital Converter

This release modifies how the device calibration pulse is measured. v2.0.0 implemented two reads of a free-running timer, one on each edge of the calibration pulse, while this v3.0.0 release uses the timer/capture peripheral to allow the micro to measure the time between calibration pulse edges directly in hardware.

NOTE: Due to the use of a timer/capture to measure the pulse width of the calibration pulse, the timer_init() and TCC0_Handler() functions are only compatible with the SAMD21 / 20 / 11 / 10 microcontrollers. However, the functions are not too complicated so porting the functionality to a different micro architecture should be fairly easy.

TS8000 Library

21 Feb 22:59
Compare
Choose a tag to compare

TS8000 Ultrasonic to Digital Converter

This release eliminates the configDevice() function and replaces it with a calibrateDevice() function. calibrateDevice() performs a filter calibration as required by the TS8000 after power up, and writes the calibrated configuration word to the device.

NOTE: Due to the use of a timer counter to measure the pulse width of the calibration pulse, the timer_init() and TC3_Handler() functions are only compatible with the SAMD21 / 20 / 11 / 10 microcontrollers. However, the functions are not too complicated so porting the functionality to a different micro architecture should be fairly easy.

TS8000 Arduino Library Initial Release

26 Jan 22:46
Compare
Choose a tag to compare

This is an Arduino library that supports the configuration function for the TS8000 Ultrasonic to Digital Converter. It is for development purposes only and is not qualified for products for production release. This is an initial release that only supports configuration of the TS8000. Calibration of the device will be added in a later release.

NOTE: DO NOT implement pull-up or pull-down functions on the CLK and DATA signals either in source code or hardware. Doing so will cause the device to operate incorrectly.