Skip to content

Releases: philips-software/amp-embedded-infra-lib

v9.0.0

13 Mar 07:53
8cd5875

Choose a tag to compare

9.0.0 (2026-03-13)

⚠ BREAKING CHANGES

  • refactor gap peripheral service (#1083)
  • use 96-bit IV for aes-gcm in SesameSecured (#1087)

Features

Bug Fixes

  • Do not report integrity failed on a truncated message, which may be the result of a reboot of the peer (#1072) (42c3ad5)
  • Fixed race condition when stopping BufferedSerialCommunicationOnUnbuffered (#1092) (f9f1000)
  • New session ticket during try send results in tls write failure (#1101) (43e8127)
  • Really_assert_with_msg with no abort logging enabled (#1106) (15405f6)
  • Sesame: double buffer incoming messages so that window releases are always processed (#1103) (26e611f)
  • Standard include directories in Windows toolchain file (#1091) (135c95f)
  • Truncated service forwarding (#1107) (eb7ca3b)

v8.0.0

16 Jan 13:13
6fdb066

Choose a tag to compare

8.0.0 (2026-01-16)

⚠ BREAKING CHANGES

  • removed Optional.hpp (#1062)
  • removed Variant.hpp (#1062)
  • deprecate infra::Optional (#981)

Features

  • Aborts can opt-in to also log file path or name (#1058) (4de1566)
  • Add ChipSelectObserver and -Subject interfaces in SPI (#1011) (ec4194b)
  • Add handling for ambiguous method calls in Console service (#1041) (b978fac)
  • Add IntegrityObserver for SesameSecured (#968) (052a8da)
  • Add MakeConstRange which returns a MemoryRange<const T> (#891) (72a8a2c)
  • Add Out Of Band support on BLE (#872) (1de8dcb)
  • Add secure sesame to echo console (#877) (7734960)
  • Add SeggerRTT on SerialCommunication (#886) (f4de93c)
  • Add services/util/FlashDelegate (#862) (e69458d)
  • Add sesame_key_generator (#870) (1c97c6f)
  • Add status parameter to gatt client notifications, discovery and characteristic callbacks (#956) (45e1f5d)
  • Automatically enable coverage for all targets excluding test targets (#897) (9607adf)
  • Deprecate infra::Optional (#981) (aa01db0)
  • Extend ble gatt server interface to add characteristic descriptors (#958) (804b28c)
  • Extend the ble gap advertisement formatter with the option to add the appearance value (#960) (a17fb55)
  • Extended addressing on flash spi (#895) (07b25da)
  • Get IPv6 link local address from Lightweight IP stack (#948) (6b4efe7)
  • Implement I2C error handling policy (#994) (2c26042)
  • Implement LOG_AND_ABORT (#1057) (8613f70)
  • Include MtuExchange in claiming operations (#921) (3625d29)
  • Optional deep power down for FlashSpi (#1001) (f9002a7)
  • Refactor gatt client interface to take handle directly (#950) (9d3718f)
  • Removed Optional.hpp (#1062) (67ce17f)
  • Removed Variant.hpp (#1062) (67ce17f)
  • Rename Pair to PairAndBond (#907) (a9df781)

Bug Fixes

  • Callback calls after object destruction (#1044) (eda0964)
  • Checking for done in connections (#1005) (4494b45)
  • Claiming gatt client adaptor shall release claimer on disconnect (#961) (7e1253e)
  • Claiming gatt client WriteWithoutResponse crash during Read (#950) (9d3718f)
  • Double request send on quick reinitialization of sesame dhke (#1064) (a72c633)
  • Double request send on quick reinitialization of sesame diffie hellman (a72c633)
  • Error message for tcp connection failure. (#991) (6201de1)
  • Fix cucumber wire protocol controller class (#911) (6d4cdc1)
  • Fix CucumberStepStorage (variable type) (#906) (d84e761)
  • Fix forwarding of long echo messages (#1051) (8d85c6a)
  • Fixed race condition in EchoOnStreams (#875) (45bec54)
  • Formatter access operator for a FormatHelper object (#947) (78b011d)
  • Handle all negative result from fcntl in SetNonBlocking (#988) (4d2bf45)
  • Handling of multiple LWIP buffers (#1015) ([5852f5b](https://github....
Read more

v7.2.0

01 May 07:37
6988d73

Choose a tag to compare

7.2.0 (2025-04-28)

Features

  • Add address type and rssi to discovered device (#822) (2e0b3ec)
  • Add AreAnyBitsSet() and AreAllBitsSet() (#823) (f83c37b)
  • Add ble dtm interface (#844) (394cf55)
  • Add ble dtm protobuf (#852) (587b60a)
  • Add EchoOnSesameDiffieHellman (#835) (384a6a9)
  • Add error code to GattClient operations (#843) (4b5b4eb)
  • Add NoneAllocated to SharedObjectAllocator (#808) (ed9ac24)
  • Add PulseWidthModulation hal interface (#834) (a216de3)
  • Add sector config for external spi flash (#848) (0c71dd6)
  • Add support to create x509 certificates (#826) (7dfa477)
  • Add support to resolve MAC address (#792) (3b8d1a4)
  • Added configuration to enable tls 1.3 (#820) (c392d44)
  • Added GetIntegerAs to JsonObject to convert a JsonValue to a target integer width with bounds checking (#830) (c4c26e0)
  • Allow stopping AdcMultiChannel measurements (#859) (c01515a)
  • Documentation update (#809) (661a1ee)
  • Streamed http put and post without chunked transfer encoding (#817) (1943573)
  • Update mbedtls from v3.2.1 to v3.6.2 (#813) (46b4fe8)
  • Updated Gap to allow connection param setting and interval change for ble internal flash (#850) (72cf794)
  • Updated mbedtls config file to latest (#837) (dc73dfa)

Bug Fixes

  • Keep EchoOnConnection alive while the factory is alive (#840) (3cdb0c4)
  • Keep websocket alive while reader or writer is alive (#839) (99efc71)
  • Keep websocket alive while reader or writer is alive (#849) (ff2743b)
  • Revert "fix: keep websocket alive while reader or writer is alive (#839)" (#847) (eb0fa86)
  • Services/util/SesameSecured: avoid timing attack on verifying MAC (#818) (51dca2d)
  • Solved crash using uart linux when starting the read thread (#832) (a23f00f)

v7.1.0

15 Jan 14:58
4239adf

Choose a tag to compare

7.1.0 (2025-01-15)

Features

  • Add AdcMultiChannel interface (#784) (c77731b)
  • Add ble state 'initiating' (bcfe895)
  • Add instantiations for EchoOnSesameSecured (#801) (4c5d083)
  • Add query and fragment parsing to HttpRequestParser (#766) (644934b)
  • Add TimerLimitedRepeating::Start overload to support TriggerImmediately (#760) (631ec6c)
  • Add verb and target to HttpClientAuthentication to enable Digest authentication (#768) (ea7de38)
  • Added starts_with ends_with and ""_s literal for Bounded(Const)String (#777) (6c5cb00)
  • Changed BoundedString::copy to copy up to length-pos characters (#779) (6659905)
  • Extend GattClient interface with enable/disable indication/notification (#744) (e110c4d)
  • Improve hal::Can::Id (#786) (50860b1)
  • Infra::Optional returns the type on Emplace instead of void (#762) (49bce7d)
  • Make all hal::Can::Id functions constexpr and add static assert tests (#803) (6184a66)
  • Make terminal's hardcoded sizes configurable (#798) (9cc6606)
  • Refactor BodyReader handling in HttpClient implementations (#781) (6c84af5)
  • Replaced assert with really_assert to align BoundedString overflow behaviour with other Bounded classes (#780) (d3b1218)

Bug Fixes

  • Assert when serial server and terminal receive data queue is full (#802) (8a83678)
  • In HttpClientApplication don't crash when detaching during StatusAvailable (#770) (e626133)
  • When opening an ECHO connection over websockets, use the full URL (#799) (4f62987)
  • Workaround lwip dhcp+auto-ip issue (#753) (2bb0caf)

v7.0.0

24 Oct 13:54
61e09d7

Choose a tag to compare

7.0.0 (2024-10-24)

⚠ BREAKING CHANGES

  • sesame stack which does not execute in interrupt context (#514)

Features

  • Add 256bit ecdsa key support for upgrade pack builder (#657) (a72b4d4)
  • Add custom clang-format file support (#668) (3653875)
  • Add NewConnectionStrategy to SingleConnectionListener (#747) (66e4f4a)
  • Add NotifyingSharedOptional::OnAllocatable overload (#667) (cb37f67)
  • Add osal/threadx/EventDispatcherThreadX (#637) (8c66ddd)
  • Add selection of TCP echo port to echo_console (#748) (3d2622f)
  • Added EcDsa256 bit support for sign and verify (#651) (bc39360)
  • Added infra::MockFunction helper function for testing callbacks via infra::Function (#658) (49810ee)
  • Crc with automatic table generation (#636) (23ac162)
  • Enable SHA384 and SHA512 on mbedtls (#745) (2c0351e)
  • Extend gpio interrupt interface to enable immediate interrupt handlers (#721) (95ddf85)
  • Gap proto extension before sesame (#688) (d5efa72)
  • Generate string literals (#699) (d272b1f)
  • HttpClientBasic will now reset the contentError flag before a new connection is attempted (#598) (c0e6755)
  • Implement persisted mbed tls session (#602) (53d45ce)
  • Make I2cAddress constexpr (#740) (ca31705)
  • Protobuf: add support for optional keyword (#661) (82032aa)
  • Protobuf: add support for optional keyword (#665) (b33ed06)
  • Sesame stack which does not execute in interrupt context (#514) (4dc5736)

Bug Fixes

  • Echo: only ContinueReceiveMessage() when readerPtr != nullptr (#701) (81c87c4)
  • echo: Fix generation of tracer class for empty services (#671) (751fefd)
  • echo: Support serializing nested messages (#670) (63c55e0)
  • Fix move construct and move assign for Variant (#749) (ed39658)
  • Pad 0xff when add hex and elf to upgrade pack (#646) (5c5d318)
  • Services.echo_console: parsing tokens of nested messages and arrays, formatting of messages, and properly close upon losing connection (#712) (4a69845)
  • Tcp packet fragmentation (#700) (c419e54)
  • Timer limited repeat (#659) (4f2a49e)
  • Trace outgoing echo calls (#710) (279bb62)
  • UartUnix receiveData callback being called after destruction (#677) (65f164b)

v6.1.0

01 May 07:29
bca9534

Choose a tag to compare

6.1.0 (2024-05-01)

Features

  • Add connection factory with name resolver mbed tls (#536) (af200d2)
  • Add FlashHeterogenous (#549) (a0deadb)
  • Add Segger RTT tracing output option (#572) (16529d7)
  • Changed compile definitions to be compatible with the gnu assembler (#554) (5a5e5dc)
  • Disabled documentation warning when compiling with AppleClang (#618) (5fd230a)
  • Services/network/HttpClientBasic is now able to process more than 1 request (#576) (0df2625)

Bug Fixes

  • Avoid overflow when scheduling TimerSingleShot (#612) (ea4683c)
  • Ble advertisement parser erroneous data handling (#600) (f6d6b5e)
  • BufferingStreamReader OOB access and Echo segments calculated correctly (#569) (b1c1d12)
  • ConnectionMbedTls no longer calls DataReceived() with 0 bytes (#585) (cd74d66)
  • Duplicate header guard HAL_UART_HOST_HPP (#558) (a8b1e63)
  • Heap memory leak on SerializerFactory::OnHeap (#561) (0ed606b)
  • Networking on linux (#594) (972ff81)
  • Repeated proto message incorrect maxMessageSize calculation (#617) (2d28a51)
  • Services/network/ConnectionMbedTls: Hostname() may not be invoked after ConnectionEstablished() (#609) (fcc469a)
  • Services/network/WebSocketClientConnectionObserver: Don't close websocket connection after 1 minute (#578) (d2e0c05)
  • Timer jumped shall trigger next trigger time update (9bbfb53)
  • Timer jumped will trigger next trigger time update (#590) (9bbfb53)

v6.0.0

24 Jan 12:11
8d945aa

Choose a tag to compare

6.0.0 (2024-01-24)

⚠ BREAKING CHANGES

  • refactor adc to support multiple samples (#530)

Features

  • Add ExecuteUntil to event dispatchers, add EventDispatcherThreadAware (#526) (d05d1f3)
  • Add targets in order upgrade pack (#488) (e528794)
  • Added generic gatt dis characteristic uuid (#457) (be6fdde)
  • Added hal/generic/UartGeneric and hal/generic/SynchronousUartGeneric (#535) (799e0ee)
  • Changed EMIL_ENABLE_GLOBAL_TRACING define to EMIL_ENABLE_TRACING and EMIL_DISABLE_TRACING (#521) (2d4eb48)
  • Forward tags to scenario request handler (#483) (a66f711)
  • Made EventDispatcher and EventDispatcherWithWeakptr exception safe when executing an action (#525) (46a118c)
  • Optional tracing (#489) (0c594d9)
  • Refactor adc to support multiple samples (#530) (419f636)

Bug Fixes

  • Handle echo message split over multiple streams (#481) (37d7878)
  • HttpClientBasic reporting error for reestablished connections (#473) (0619299)
  • Incorrect handling of float numbers in json (#478) (c8ee456)
  • Infra/util/Endian: fix comparison against C++ version (#486) (4fe74e5)
  • Null json value (#470) (e72d48f)
  • Remove \r from end of line of certificates (#510) (7f581d8)
  • Remove virtual destructors reducing binary size (#502) (fc69a3c)
  • ServiceForwarder with LimitedStreamReader ends up in infinite loop (#524) (9e7f949)

v5.0.1

15 Nov 09:55
db26350

Choose a tag to compare

5.0.1 (2023-11-15)

Bug Fixes

v5.0.0

09 Nov 15:19
67fcfd1

Choose a tag to compare

5.0.0 (2023-11-09)

⚠ BREAKING CHANGES

  • generic pairing/bonding classes updated (#330)
  • ble interface improvements (#300)

Features

Bug Fixes

  • Add acd sources to lwip (#400) (a4f68ef)
  • Added workaround mbedtls and clang-cl incomatibility (#441) (063b595)
  • Cpp:S6232 well-defined type-punning method should be used instead of a union-based one (d809c17)
  • Destruction of HttpClientJson while resetting the reader resulted in memory corruption (#404) (ed8a8a0)
  • Detaching HttpClient while in HeaderAvailable resulted in a crash (#406) (a905a30)
  • Enable service scoping of method invocations in services.echo_console (#325) (7090a40)
  • UpgradePackBuilderFacade setting mbedtls global memory pool on stack (#324) (ec567d5)
  • UpgradePackBuilderFacade setting mbedtls global memory pool on stack, causing a crash when combined with ConnectionMbedTls (ec567d5)

v4.0.0

02 Jun 12:36
54a8a82

Choose a tag to compare

4.0.0 (2023-06-02)

⚠ BREAKING CHANGES

  • security for MessageCommunication (#294)

Features

Bug Fixes

  • Correct order of destruction in EchoForwarderToSerial. (#291) (3267831)
  • CucumberWireProtocolFormatter; max string value size does not fit into stepMatchArgumentsBuffer. (#311) (5504202)
  • Ensure forwarding constructors have constraints (#290) (5015938)
  • GattClient notification (#284) (15ff387)
  • Line termination mismatch in hex files (#307) (47482c3)
  • Remove superfluous > from cmake/emil_xsltproc.cmake (#276) (be139b2)
  • Usable memory loss in HttpClientBasic::Path (#304) (d5d4abf)