Recent Releases of thetislib
thetislib - Version 2.0.3
Hotfix for include error with Fusion
- C++
Published by Legohead259 over 2 years ago
thetislib - Version 2.0.2
Hotfix for a deprecated dependency (AsyncElegantOTA)
- C++
Published by Legohead259 over 2 years ago
thetislib - Version 2.0.1
Hotfix for symbolic link for LIS3MDL source files
Full Changelog: https://github.com/Legohead259/ThetisLib/compare/v2.0.0...v2.0.1
- C++
Published by Legohead259 over 2 years ago
thetislib - Version 2.0.0
Latest firmware release as the accompanying thesis finishes
What's Changed
- Timer events rework by @Legohead259 in https://github.com/Legohead259/ThetisLib/pull/53
- Complete Refactor by @Legohead259 in https://github.com/Legohead259/ThetisLib/pull/55
Full Changelog: https://github.com/Legohead259/ThetisLib/compare/v1.5.3...v2.0.0
- C++
Published by Legohead259 over 2 years ago
thetislib - Version 2.0.0-beta1
2.0.0-beta1 - 2023-06-29
Known Bugs
- Current implementation of xioAPI settings for the WiFi AP cause initialization to fail. #54
Added
- Added a new setting
gpsRtcSyncEnabledtoThetisSettingsthe controls whether the GPS is allowed to be used to sync the internal RTC - Added implementations for the xioAPI user-defined command callback functions
- Added a new function
syncInternalClock()that can sync the internal clock based on a timestamp string like "YYYY-MM-DD HH:mm:SS" - Added a new function
getTime_RTC()that returns a string timestamp like "YYYY-MM-DD HH:mm:SS" - Added xioAPI settings integration to WiFi functions
- Added a new log level for bypassing the
LogLevelcheck during logging - Added a designated object for the Thetis board itself
- Added TimerEvents for the different board LED statuses
- Added a
ThetisFSclass for the filesystem - Added header protections for
max17048.h - Added a
ThetisSubsystembase class for different objects - Added LIS3MDL-specific settings to the settings table
- Added MAX17048-specific settings to the settings table
- Integrated sensor fusion algorithm into the fusion update event
Changed
- Changed the
setSystemState()function to use the diagnostic logger properly - Changed the
initNeoPixel()function to use the diagnostic logger properly #46 - Renamed
filestofilesystemfor consistency - Renamed
Thetis_Settingstosettingsfor consistency TimerEventsto be more OOP-compliant- Migrated
TimerEventsto a separate Arduino library and added it as a submodule - Changed
neopixel.hto be more OOP-compliant (ThetisPixel) - Changed
states.hto be more OOP-compliant - Changed
max17048.hto use theBATT_MON_ENABLEcompile flag - Migrated
LIS3MDLtoThetisSubsystemimplementation - Migrated
MAX17048toThetisSubsystemimplementation - Migrated
GPSto be OOP-compliant - Migrated
WiFito be OOP-compliant - Updated
RTCto be OOP-compliant - Migrated the
colourcommand toThetis
Fixed
- Fixed some reference issues within
filesystem - Fixed syncing and reporting issues with the xioAPI time command
- Fixed key update error with settings that are of
FLOAT_ARRAYtype - Fixed include errors from the
TimerEventmigration
Removed
- Removed the Config library
- Removed
timer.h - Removed
ThetisLib.cpp - Removed the central
datastructure - removed
ThetisAPIremnants
- C++
Published by Legohead259 almost 3 years ago
thetislib - Version 1.5.3
1.5.3 - 2023-06-11
Added
- Support for the xioAPI
- New sensor fusion engine from xio-Technologies
[UNRELEASED] 1.5.2 - 2023-02-17
Added
- Added functions to change and log the system state
- Added minimally viable product for integrating the magnetometer (#29)
- Added WiFi compile flags (#28)
- Added minimally viable product for integrating the LiPo battery gauge (#31)
- Added compile flags for MAX17048 to prevent inclusion on earlier hardware revisions (#42)
Fixed
- Fixed NeoPixel functionality (#25)
- Fixed RTC timestamp issue ([#21]https://github.com/Legohead259/ThetisLib/issues/21)
Changed
- Updated Git issue templates to include F5 and G2 (#23)
- Changed how logging is handled. Now it is coordinated with a hardware timer to log at a user-configurable rate ([#41]https://github.com/Legohead259/ThetisLib/issues/41)
- Changed LSM6DSO32 initialization to check both I2C addresses at startup (#43)
[UNRELEASED] 1.5.1 - 2022-12-27
Added
- Added HTTP server to handle GET requests for log enable and disable
- C++
Published by Legohead259 about 3 years ago
thetislib - Version 1.5.0
Known bugs
- Configurations not loading properly into functions (#22
Added
- Added a File Transfer Protocol (FTP) server
- Added WiFi client initialization functions
- Added configuration options for FTP server and username
Changed
- Migrated sensor data to use the
tracelog level - Renamed the WiFi source files to fit current naming conventions
Fixed
- Fixed compile error with
tmand WiFi functions
- C++
Published by Legohead259 over 3 years ago
thetislib - Version 1.4.0
The Logging Update
Added
- Added a massive rework to the logging system
- Added seven different logging levels that can be used to track events
- Consolidated all logging functions into an object-oriented approach, allowing more flexibility
- Loggers can specify which streams they send data to and what the information looks like
- Ability to dynamically switch between streaming the event log to the Serial monitor or the file system, depending on USB connection
- Expanded the configuration options that can be saved to SPIFFS
- Log level for print streaming
- Log level for event file
- Added various
info,fatal, andverbosestatements throughout code to track flow
Changed
- Changed static logging behavior to object-oriented
- Moved
fusion.htoAHRS/folder since that makes more sense - Removed state update behavior in
updateSystemState(), for now
Deprecated
- Deprecated the old
loggingfiles - they currently have the file extension.bkpfor safekeeping - remove in next update!
Removed
- Removed BNO055 files
- C++
Published by Legohead259 over 3 years ago
thetislib - Version 1.3.0
1.3.0 - 2022-11-20
Added
- Added
pollGPS()function - Added raw IMU readings to logging functions
- Added raw IMU readings to data packet
- Added a function to log data to the file in a binary format
- Added an
updateTimestamp()function to update the data packet epoch - Added ability to change IMU information from configuration data
- Aded ability to change sensor fusion update rate from configuration data
- Expanded the configuration options that can be saved to SPIFFS
- More device information
- WiFi information
- Sensor information
- Logging information
Changed
- Changed log file extension to 'bin' instead of 'csv'
- Changed configuration parsing behavior to be more efficient to add new parameters
- Changed
configDatastructure to reflect to configuration options - Changed some names in
configDatastructure
Fixed
- Fixed minor typos throughout
Deprecated
- Deprecated all human-readable logging functions
- C++
Published by Legohead259 over 3 years ago
thetislib - Version 1.1.5
New release that fixes a NeoPixel function, pulseLED() to work slower and use a sinusoidal cycle, rather than linear. Also changes all debugging within the library to be toggled by build flags (e.g. -D CONFIG_DEBUG or -D SDCARD_DEBUG). Also added a changelog for tracking changes.
- C++
Published by Legohead259 almost 4 years ago