Skip to content
This repository has been archived by the owner on Aug 4, 2020. It is now read-only.

Releases: xively/xively-client-c

Xively Client v1.3.4

09 Feb 23:00
Compare
Choose a tag to compare

Xively Client version 1.3.4

Feb 9 2018

Features

  • [CC3220SF] Further support for WiFi disconnection events. SimpleLink is now restarted upon loss of WiFi AP. Previously attempting to build socket connections after reconnecting WiFi would sometimes cause the underlying network system to fail in building TCP/IP connections. Restarting SimpleLink seems to solve all of these edge cases.

  • [make] Support linking and inclusion of TLS libraries outside the xively-client-c directory. This is part of the effort to get the ESP32 running its SDK's version of mbedTLS, as opposed of downloading and building our own.

  • [ESP32] Updated the Xively C Client build to work with IDF SDK: Master commit 16de6bff

Bugfix

  • [mbedTLS] Fix BSP certificate buffer parsing. mbedTLS expects a NULL-terminated string but our certificate array was non NULL-terminated in order to support WolfSSL. The WolfSSL BSP has been updated to ignore the NULL terminator if present.

Xively Client v1.3.3

22 Jan 20:50
Compare
Choose a tag to compare

Xively Client version 1.3.3

Jan 22 2018

Features

  • [CC3220SF] Updated example application support to TI SimpleLink SDK 1.6, XDC Tools version 3.50.04.43.
  • [CC3220SF] Example application now detects WiFi disconnections and cleanly reconnects when WiFi AP returns.
  • [ESP32] Updated the Xively C Client build to work with IDF SDK: Master commit af63ca1
  • [ESP32] Improved LED signaling in demo application.
  • [Secure File Transfer] CBOR library assertions are now suppressed. They can be enabled by defining XI_DEBUG_ASSERT=1 on the make command line when building the Xively C Client library.

Bugfix

  • [ESP32] Fix integer overflow in time BSP.
  • [ESP32/CC3200] Fix FWU Board Support Packages for SFT when running an SFT migration that does not include new firmware binaries. Previously the device rebooted at switched boot partitions upon all SFT deliveries, now this only occurs if a new firmware image is downloaded.
  • [WolfSSL] src\import\tls\wolfssl.conf configuration script errantly defined --enable-debug twice.

Misc

  • Removed legacy Licenses directory. All licenses are now in LICENSE.md of the base directory of the repository.
  • Updated Copyright Header to 2018.
  • Travis CI configuration changes to FuzzTest Environment.
  • Moved the cc3200\xively_firmware_updates to src\experimental\cc3200\xively_sft_external_client. This external client application is not our standard Secure File Transfer client, but instead serves as a reference for those who would like to implement SFT on another MQTT client or in another language. Specifically it demonstrates how to use the CBOR encoder to handle SFT Service Requests and Responses over MQTT. This implementation was moved from our examples directory as it was being confused with our CC3200 SFT implementation via our Board Support Packages (FWU and FS BSPs). This experimental application will not be kept up to date. Further development using the Xively C Client SFT feature should be done inside the BSPs of the respective platforms, such as in src\bsp\platform\cc3200\xi_bsp_fw_cc3200.c and src\bsp\platform\cc3200\xi_bsp_io_fs_cc3200.c.

Xively Client v1.3.2

24 Nov 12:27
Compare
Choose a tag to compare

Nov 24 2017

Features

Extensions to Secure File Transfer (SFT) and Firmware Updates (FWU) feature

  • SFT now supports Large File Downloads over HTTP. The SFT Service cannot deliver files
    larger than 8MB through MQTT. However, it now transmits URLs for these large files so
    that larger devices may download them over the HTTP protocol. The Xively C Client now has an
    updated Board Support Package (BSP) which reports these URLs to the Application, which
    must then download the file separately and report the download result to the Xively C Client.
    The file download status report is propagated back to the Xively SFT service by the
    Xively C Client for fleet-wide deployment tracking, and then the Xivley C Client continues
    the update process by working through the next file on the download list. From an update flow
    perspective, nothing has changed, only the protocol that was used to download the file.
  • Added the ability for the Applications to order the files downloaded over the Xively Secure
    File Transfer service. Please see the documentation for
    xi_bsp_io_fwu_order_resource_downloads() in the header include/bsp/xi_bsp_fwu.h for more
    information.
  • Auto-test coverage was increased on the new SFT feature.

ESP32 Support Extended

  • ESP32 now supports firmware updates over MQTT using Xively's Secure File Transfer
    protocol.
  • Travis CI now builds ESP32 target.

Misc

  • API extension: added xi_is_context_connected( xi_context_handle_t ) to the standard
    Xively API.

Xively Client v1.3.1

10 Oct 09:25
Compare
Choose a tag to compare

Oct 10 2017

Bugfix

  • Fix WolfSSL build for the ESP32 platform.

Xively Client v1.3.0

06 Oct 13:06
Compare
Choose a tag to compare

Oct 06 2017

Features

Secure File Transfer (SFT) and Firmware Updates (FWU)

  • The Xively C Client now provides Secure File Transfer (SFT) and Firmware
    Update (FWU) functionality over MQTT out of the box. These features are coupled to a
    device's Firmware and File Storage SDKs through two highly-portable Board Support Packages
    (BSPs). The Xivley C Client controls the main update flow, protocol, and chunking of files,
    with only the satellite functionalities of non-volatile storage, bootloader management and
    restart functionalities required for porting.Example implementations for CC3200 and POSIX.

  • Secure File Transfer (SFT) and Firmware Updates (FWU) features have been added to the
    CC3200 xively_demo example.

  • Changes to our External SFT Implementation Demo: Previously the Xively C Client
    added TI CC3200 SFT and FWU functionalities at the application level (not in our Xively C
    Client Library BSPs). We will keep the sources for this client-external SFT implementation
    to serve as a quick reference of how a Xively SFT client could be implemented in other
    languages. Please see our CC3200 Secure File Transfer (SFT) Tutorial in
    the Xively Development Center to remote update your CC3200's firmware over MQTT today!

Ports

  • ESP32 Port (New!): A BSP, makefile system, and an example application have been written for
    the ESP32. Please see the Xively Developer Center for a tutorial.

  • STM32F4 Tier 1 tutorial support: now the repository contains precompiled STM32F4
    wifi + ethernet application binaries to support the simpliest tutorial of connecting
    these devices to Xively.

Misc

  • CC3220SF Library and Build environment update: tested use of CC3220 SDK v1.4 and
    XDCTOOLS v3.50.02.20, which will be part of our CI builds.

  • wolfSSL version update: default builds now work against version 3.10.2-stable

Documentation

  • Porting Guide and User Guide are updated with Secure File Transfer (SFT) and
    Firmware Updates (FWU) feature description.

Xively Client v1.2.6

30 Jun 14:56
Compare
Choose a tag to compare

Jun 30 2017

Documentation

  • Fixes to doc/porting_guide.md referring to improper make enviornment CONFIG flag tls. It should be tls_bsp.

Features

  • Secure File Transfer: A new TI CC3200 client that allows firmware updates over MQTT via the Xively SFT service.
  • Updates to the User Guide to reflect the new Open Source porting process. Also added links to our CC3200 and STM32 Nucleo examples, and to our Further Readings.

TI CC3200

  • Contains a new example xively_firmware_updates as our first reference implemention of using Xively Secure File Transfer to update the firwmare of a CC3200.

TI CC3220SF

  • Added TI CC3220SF demo application sources and build process for tutorials on Xively Developer Center.

STM32F4 Nucleo

  • Updated STM32F4 examples to build against latest ST SDKs.
  • New build configurations to support both sensor boards (IKS01A1 and IKS01A1) out of the box.
  • The github repository is extended with a prebuilt binary for STM32F401RE + WiFi IDW01M1 + MEMS IKS01A1. Tier 1 tutorial (how to use the precompiled binary) is also provided.
  • STM32F4 ethernet example now supports runtime provisioning over serial and flash storage of Xively credentials.
  • Convenience fixes for Ethernet and WiFi project examples to increase ease use of the tutorial.

Internal Development

  • CI system now builds against ST SDKs v1.16.0 for Ethernet and v3.0.2 for WiFi.

Xively Client v1.2.5

14 Mar 20:54
Compare
Choose a tag to compare

March 14 2017

Features

  • STM32F401RE Nucleo board + wifi X-NUCLEO-IDW01M1 expansion board support. Example Eclipse project and Tutorial (https://developer.xively.com/docs/stm32f4xx-nucleo) included. TLS connection to Xively Servers uses the wifi expansion on-board TLS solution. Accurate time initialised from SNTP servers.

Xively Client v1.2.4

20 Mar 14:17
Compare
Choose a tag to compare

Jan 17 2017

Bugfixes

  • Fixing two build errors for CC3200's Tutorial project: xively_demo (linker optimization problems with two functions: xi_event_loop_with_evtds and xi_bsp_io_net_select)

Xively Client v1.2.3

14 Mar 20:45
Compare
Choose a tag to compare

Jan 10 2017

Features

  • TI CC3200: fixed all compiler warnings so that the client compiles cleanly for that platform.
  • The library now supports fuzz tests! For more details refer to doc/dev/FuzzTestsProgrammerManual.md.
  • Makefile support files in the make/ directory now have the .mk extension.
  • Makefile updates for better Linux compatibility.
  • Travis CI maintenance, Internal Storage Infrastructure and Build changes for Continuous Integration tools.
    • End result: We'll be to support more platforms.
  • Removed legacy TLS BSP files for WolfSSL. These were from a previous Xively C Client BSP architecture.
    • The new BSP files remain in src/bsp/tls/wolfssl.

Xively Client v1.2.2

24 Nov 16:54
Compare
Choose a tag to compare

Documentation and Ease of Use

  • CC3200 tutorials are now accessible on https://developer.xively.com.
  • Added xively_demo application example Code Composer Studio project for CC3200 devices.
  • Removed uses of \r from some debug output statements to be more consistent, and to remove some formatting problems on some platforms. We now always simply use \n.
  • Added error code numbers to comments in xi_error.h to easily map error codes integer values to their corresponding enumerated type.

Bugfixes

  • Fixed a socket descriptor leak on the CC3200.

Known issues

  • When the io input buffer size increased over 64 bytes incoming messages could be stacked in the tls receive buffer and not parsed