This CHANGELOG file should help that the library becomes a standardized open source project. All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
Unreleased - 2021-02-27
- Support of three privileged levels LogoClient::SetSessionPassword, LogoClient::ClearSessionPassword
- Parameter Mode
RUN_P
LogoClient::GetPlcStatus - Updated examples for compatibility with Arduino Leonado boards
- Update Library Reference Manual (RefManual.md) to Rev. Ak
- Protection Level in LogoClient::GetProtection
- Output in example PlcInfoDemo.ino
0.5.3 - 2021-01-17
- Example LogoClient::SerialPlotter.ino added to the project folder
- Updated examples for compatibility with Arduino MKR boards
- Block oriented function LogoClient::GetDBSize
- Block oriented function LogoClient::DBGet
- DebugUtils in LogoPG.h and LogoPG.cpp
- Using fixed-width integer types regardless of which Arduino is being targeted
- ArduinoLog in LogoPG.h and LogoPG.cpp
- Example ProtocolTester.ino maximum indexing for receivedChars
0.5.2 - 2020-12-23
- Low Level function LogoClient::ReadBlock
- Security function LogoClient::SetSessionPassword
- Security function LogoClient::ClearSessionPassword
- Logging (library ArduinoLog)
- Protection Level in GetProtection
- Update Library Reference Manual (RefManual.md) to Rev. Ai
- DTE Interface Images
- Update Examples for compatibility with Arduino Mega boards
- GetOrderCode: Support of 0BA6.ES10
- StreamConnect: Clearing serial buffer for Reconnection
- ReadArea: VM Mapping (correct access to the program space)
- Reduce some compiler warnings
0.5.1 - 2018-09-18
- Support of 0BA6.ES10
- Wiki Page
- Move "Undocumented LOGO! 0BA5" to the Wiki
- Move "LOGO! PG Protocol Reference Guide" to the Wiki
0.5.0 - 2018-03-29
- CHANGELOG.md added to the project folder
- Library Reference Manual (RefManual.md) added to the project folder
- DTE Interface description (DTE-Interface.md) added to the project folder
- Date/Time functions: LogoClient::GetPlcDateTime and WritePlcDateTime
- System info function: LogoClient::GetOrderCode
- Private functions: LogoClient::GetOrderCode, WriteByte and CpuError
- Security function: LogoClient::GetProtection
- Example ReadClockDemo.ino and WriteClockDemo.ino added to the project folder
- Example PlcInfoDemo.ino added to the project folder
- Customization of CPU Exception Codes for LogoClient::CpuError
- LogoClient::RecvControlResponse uses the LogoClient::CpuError function
- Rename LOGO_CR to LOGO6_CR and LOGO_REVISION to LOGO4_CR
- typedef pstream for Stream*
- Validation of DBNumber and Start in LogoClient::ReadArea
- Reading Exception Code in LogoClient::RecvControlResponse
- Example CyclicReading.ino added to the project folder
- LogoClient::RecvControlResponse now with cyclic data reading
- Example FetchDataDemo.ino added to the project folder
- Optimizations in LogoClient
- Several bug fixes
- Now different memory models are supported (as in Settimino)
- LogoClient::RecvControlResponse
- LogoHelper indexing from PDU to VM
- Update file PG-protocol.md to Rev. Bg
- LogoClient::RecvIOPacket
- PDU related constants
- struct of TPDU
- VM mapping table
- First executable version (not fully tested)
- Example ProtocolTester.ino added to the project folder
- Example RunStopDemo.ino added to the project folder
- VM mapping table for assigning the inputs, outputs and flags to the 0BA7 address layout
- Rev. B: LOGO! PG Protocol Reference Guide (PG-protocol.md) created
- LogoClient::ReadArea
- LogoClient error codes
- Update in file keywords.txt
- LogoClient::ErrorText
- PDU related constants
- CPU Exception Codes
- LogoClient::ReadArea
- LogoClient::NegotiatePduLength
- LogoClient::PlcStop
- Rev. A: LOGO! PG Protocol Reference Guide (PG-protocol.md) added to the project folder
- VM indexing
- LogoClient::ReadArea
- CPU Exception Codes
- LogoClient::Serial to LogoClient::Stream
- Telegrams LOGO_STATUS to LOGO_MODE
- LogoClient::WaitForData
- LogoHelper memory access to PDU
- Name of file keywords.txt
- Change licence from MIT to GPL-3.0, because Settimino is distributed as shared library with full source code under GNU Library or Lesser General Public License version 3.0
- Pre alpha version of the Library (not compiled, not tested)
- LogoPG.h added to the project folder
- LogoPG.cpp added to the project folder
- keywords.txt added to the project folder
- Initial version created
- LICENCE.md added to the project
- README.md added to the project