Commit graph

64 commits

Author SHA1 Message Date
andysun2015
957fb26dbe
Add cellular library submodule path and demo (#695)
* [Cellular] Add cellulr lib submodule and demo app

* [Cellular] Fix memory violation in transport layer and add using LoggingPrintf

* Update FreeRTOS Cellular Interface

* Change the mbedtls usage in FreeRTOS-Plus

* [Cellular] Fix missing spell

* [Cellular] Add manifest.yml

* Fix missing spell

* Update manifest.yml

* [Cellular] Add integration test

* Modify the demo log level to LOG_INFO

* Update cellular interface

* The modification of the folder structure for cellular library

* Rename the naming of demo

* Adjust the location of using_mbedtls and socket_wrapper

* Adjust project setting for relocating using_mbedtls and socket_wrapper

* Turn off PSM mode

* Add start marker for CI validation.

* The modification for mbedtls platform send/recv function for cellular

* Change the project file due to the changes of mbedtls platform send/recv function for cellular

* Fix missing newline and remove unused file

* Add missing configuration.

* Make cellular and freertos tcp plus use the same transport implementation

* Add comment for the macro MBEDTLS_SSL_SEND and MBEDTLS_SSL_RECV

* Make changes from the github comment.
2021-11-10 11:38:44 +08:00
tianmc1
176f1cae02 [AUTO][RELEASE]: Bump file header version to "202107.00" 2021-07-24 00:32:35 +00:00
Oscar Michael Abrina
dd80d615b5
Remove duplicate error.c in WIN32.vcxproj.filters files (#662) 2021-07-22 11:42:29 -07:00
Oscar Michael Abrina
63d38b846e
Remove redundant mbedtls error sources (#654)
Since `mbedtls_error.c` is already part of the mbedTLS submodule, the duplicate files are removed from this repository.

Co-authored-by: Cobus van Eeden <35851496+cobusve@users.noreply.github.com>
2021-07-19 16:17:18 -07:00
Archit Aggarwal
971a6e1d22
Merge FreeRTOS 202104.00 to main (#585) 2021-04-29 14:53:40 -07:00
Archit Aggarwal
43bd42db27
Rename MQTT Agent structs and files (#576) 2021-04-26 11:29:50 -07:00
TakayukiMatsuo
1e2f99a11b
Add feature to set credentials using buffer in MQTT_Mutual_Auth_wolfSSL demo (#522)
* Add feature to set credentials using buffer
* Change instructions for giving credential data via buffer
2021-04-21 11:09:43 -07:00
Muneeb Ahmed
ef6194a7ce
Replace multithreading demo with MQTT Agent (#563)
* Update MQTT agent submodule

* Copy MQTT agent demo files

* Remove other demos from connection manager

* Update demo config and uncrustify

* Update readme files

* Fix headers
2021-04-20 17:27:10 -07:00
Carl Lundin
a78cb45d12
Minor changes to wolfSSL MQTT demo files (#493)
* Clean up demo config for wolfSSL mutual auth. 
* Add comment about picking the correct ROOT CA.
* uncrustify using_wolfSSL.c and some other code style changes.
* Apply suggestions from code review

Co-authored-by: Archit Aggarwal <architag@amazon.com>
2021-02-04 16:17:34 -08:00
TakayukiMatsuo
dfdf2ddf1f
Add MQTT_Mutual_Auth_wolfSSL demo (#464)
Add a demo that shows MQTT over TLS mutual authentication connection and communication with a broken when using wolfSSL as the TLS library.
2021-02-02 17:28:43 -08:00
Joseph Julicher
da9b9a800d [AUTO][RELEASE]: Bump file header version to "202012.00" 2020-12-15 11:50:37 -07:00
Joseph Julicher
2e2ba99a74 [AUTO][RELEASE]: Bump file header version to "202012.00" 2020-12-15 10:20:29 -07:00
Archit Gupta
2e0de9aa70
Clean up demo project files (#468) 2020-12-12 16:35:43 -08:00
RichardBarry
a503a3a7a0
Add links to the MQTT agent in the non-agent mqtt demos (#470)
Add URL file links to the MQTT agent documentation page.
Add comment blocks into each demo that also point toward the MQTT agent documentation to ensure users are aware the agent method exists.
2020-12-11 21:12:44 -08:00
Carl Lundin
1d444eecae
Update mbedtls to v2.24.0 (#465)
* Set mbedtls submodule tag to v2.24.0

* Update projects

Co-authored-by: Oscar Michael Abrina <abrinao@amazon.com>
Co-authored-by: Cobus van Eeden <35851496+cobusve@users.noreply.github.com>
2020-12-11 17:16:47 -08:00
Oscar Michael Abrina
1c2c671e7a
Update comments about NetworkContext definition (#461)
Small change that simply specifies why the NetworkContext must be defined by each compilation unit along with details on how to include it to your project.

Co-authored-by: Cobus van Eeden <35851496+cobusve@users.noreply.github.com>
2020-12-11 11:09:03 -08:00
Archit Aggarwal
d93a3d63a0
Update demos to use version macro from coreMQTT (#460)
Update demos to use the MQTT_LIBRARY_VERSION macro for the coreMQTT version they report in their metrics
2020-12-10 12:05:02 -08:00
Archit Aggarwal
c0d4c7c67c
Update MQTT config for Keep Alive demo that uses dummy timer (#457)
The MQTT library has been updated with the MQTT_RECV_POLLING_TIMEOUT_MS and MQTT_SEND_RETRY_TIMEOUT_MS configurations which should be set to zero when using a dummy timer function to avoid possibility of infinite loop when retrying failed transport send/receive calls. As the MQTT Keep Alive demo uses a dummy timer function, this PR updates the demo configuration to set these timeouts to zero.
2020-12-09 19:02:51 -08:00
Sukhmani Minhas
87662ff4d8
Replace GPL with FreeRTOS license in MbedTLS demo config files (#447)
Since we own mbedtls_config.h files, updating the GPL to use the FreeRTOS license instead.
2020-12-04 18:38:40 -05:00
Archit Aggarwal
eec68e8790
Fix TLS handshake failures in demos (#438)
Increase default size of FreeRTOS+TCP RX buffers in TLS demos to avoid TLS handshake failures
2020-12-02 11:03:55 -08:00
Oscar Michael Abrina
05dc34b27b
Clean up server setup instructions for MQTT and HTTP demos (#429)
- Removes a broken link to configure Windows Firewall
- Removes references to Mosquitto in the httpbin server setup instructions
2020-12-01 20:28:50 -08:00
Oscar Michael Abrina
73b0d1b259
Support multiple transports in the same compilation unit (#434)
By removing the definition of the NetworkContext struct in the header file, we allow the application to define it. This allows an application writer to use multiple transports in the same compilation unit. That way, multiple .c files do not have to be created for each transport.
2020-12-01 17:24:18 -08:00
Archit Aggarwal
682447445b
Bump backoffAlgorithm submodule for API change and update demos (#426)
The API of FreeRTOS/backoffAlgorithm library has changed to remove dependency on random number generator; instead require the caller to generate the random number and pass it to the BackoffAlgorithm_GetNextBackoff API for backoff period calculation. This PR updates the submodule pointer commit, and updates the demos and tests to use the simplied library API
2020-11-30 11:12:07 -08:00
Archit Aggarwal
036ec83b65
Replace exponential_backoff with submodule to FreeRTOS/backoffAlgorithm (#419)
A new repository, FreeRTOS/backoffAlgorithm, has been created for hosting the library for backoff calculation. This repo replaces the FreeRTOS-Plus/Source/Utilities/exponential_backoff with the submodule to the new repository, and updates all the demos that use retry logic to use the backoffAlgorithm API
2020-11-24 14:54:31 -08:00
Oscar Michael Abrina
ae1226b1bb
Match WindowsTargetPlatformVersion across all MQTT VS Projects (#405)
Simply updates the Visual Studio projects so that WindowsTargetPlatformVersion is set to 10.0 for all MQTT demos.
2020-11-13 10:23:48 -08:00
Archit Aggarwal
6debf6a2c0
Add #ifndef guards for SdkLog definition to fix conflicting definitions (#403) 2020-11-12 11:10:12 -08:00
Muneeb Ahmed
d555cdd475
Fix incorrect size calculation in MT demo (#402) 2020-11-10 13:58:13 -08:00
RichardBarry
ef18289398
Simplify the mqtt multitasking demo a little (#398) 2020-11-10 11:29:23 -08:00
RichardBarry
5f6464c22e
Update urls in code to those on the server (#396)
* URLs have changed on the FreeRTOS.org site - this commit matches the URLs in the code with the new URLs on the website.

* Add link to device shadow directory to the shadow docs.

* Update main.c

* Update main.c

* Update readme.txt

* Update main.c

* Update main.c

* Update readme.txt

Co-authored-by: yngki <47755894+yngki@users.noreply.github.com>
2020-11-10 10:53:14 -08:00
Oscar Michael Abrina
1876800382
Print metadata only after a line break (#397)
* Fix logging stack to print message in the first SdkLog

* Do not log metadata if on the same line

* Fix wrong var name

* Change task names to DemoTask

* Change for shadow too

* Move declaration to a separate line

Co-authored-by: Gary Wicker <14828980+gkwicker@users.noreply.github.com>
2020-11-10 10:51:01 -08:00
Archit Aggarwal
21878bd619
Allow overriding default definitions of logging macros (#384)
* Update logging_stack.h file to avoid use of __FUNCTION__ macro

* Revert to use __FUNCTION__ instead of __FILE__

* Fix comment about metadata format

* Fix incorrect mapping of SdkLog function

* Fix typo causing LOG_METADATA_ARGS to be undefined

* Fix another bug with SdkLog macro definition

* Fix formatting

* Move mapping of SdkLog to vLoggingPrintf from logging_stack to config files

* Remove dependency of LIBRARY_LOG_NAME on LIBRARY_METADATA_* macros

* Minor improvements

Co-authored-by: Gary Wicker <14828980+gkwicker@users.noreply.github.com>
Co-authored-by: RichardBarry <3073890+RichardBarry@users.noreply.github.com>
2020-11-09 15:07:19 -08:00
RichardBarry
596b466300
Add code comments on the different requirements for credential constants between evaluation and production systems. (#386)
Only comments have changed.  No code changes.

Co-authored-by: Cobus van Eeden <35851496+cobusve@users.noreply.github.com>
Co-authored-by: Gary Wicker <14828980+gkwicker@users.noreply.github.com>
2020-11-09 14:56:52 -08:00
RichardBarry
5d3b3cb1c7
Multiple tidy up and corrections preparing for release (#390)
* Update to the WolfSSL FIPS ready demo:  Add a debug break point into the configASSERT() implementation along with a comment telling users how to update the integrity check hash if they hit the breakpoint.

* Updates in the root directory:  Remove "New - Stream and Message Buffers.url" as the feature is no longer new, and edit the readme.md file as the repo now contains 'core' libraries in addition to 'FreeRTOS+' libraries.

* FreeRTOS-Plus/Source/Utilities:  Add readme files and links to documentation.

* Application-Protocols:  Add readme and URL links.

* Remove Index.html from the end of a URL in the readme.txt file.

* Demo-IP-Protocols:  Add readme.txt files and code comments saying the protocols are not intended for production use.

* coreMQTT:  Remove links to deprecated documentation, add readme and correct links to documentation.

* General:  Correct URLs in source files and .url files.

* Update readme.txt
2020-11-09 14:50:33 -08:00
Oscar Michael Abrina
52d7c47cd4
Fix logging issue causing mangled new lines (#391)
* Fix logging issue caused by using \n as the default newline character

* Update the other demos

* Fix accidentally changed NETWORK_INTERFACE

* Set \r\n as default instead

* Update sources to reflect \r\n change

* Get rid of configLOGGING_NEW_LINE altogether

Co-authored-by: abhidixi11 <44424462+abhidixi11@users.noreply.github.com>
2020-11-08 21:27:53 -08:00
Oscar Michael Abrina
c7cd06488f
Update path for WinSim logging port (#385)
Moves Logging_WinSim.c to a nested windows folder
2020-11-06 09:21:25 -08:00
Oscar Michael Abrina
01e59a036c
Restructure platform directory (#382)
This updates the platform and logging directory and moves it to the following places:
FreeRTOS\FreeRTOS-Plus\Source\Utilities
FreeRTOS\FreeRTOS-Plus\Source\Application-Protocols\network_transport\freertos_plus_tcp

Project files are updated to follow suite. All updated demos are tested to work as expected.
2020-11-05 16:47:43 -08:00
Oscar Michael Abrina
330b8c002f
Delete printf-stdarg.c and move logging.c from Source/Logging (#381)
printf-stdarg.c seems have to been moved by mistake when moving logging sources to a common folder.

Also, because logging.c is specific to Windows, it is moved to FreeRTOS-Plus/Demo/Common/Logging/Logging_WinSim.c.
2020-11-05 10:12:06 -08:00
Oscar Michael Abrina
25cd833fd6
Rename platform files and submodules (#374)
This updates FreeRTOS-Plus/Source/Application-Protocols/platform folder based on feedback to include separate folders for tls and plaintext. In addition, the device-shadow-for-aws-iot-embedded-c submodule is renamed to device-shadow.
2020-11-03 11:51:02 -08:00
Oscar Michael Abrina
5a8f03b633
Update the MQTT keep-alive demo to use a mocked timer-query function (#369)
Because we would like to show an example of how the coreMQTT library is used without an actual timer query function, the keep-alive demo is updated to used a mocked function that always returns 0. As such, MQTT_ReceiveLoop must be passed a timeout of 0 so that it runs for exactly 1 iteration. Therefore, MQTT_ReceiveLoop is called repeatedly until an acknowledgement packet from the broker is received or the maximum iterations are reached.
2020-10-30 18:16:36 -07:00
Oscar Michael Abrina
4124ac0c57
Update path to transport_interface.h from the coreMQTT submodule (#368)
Use transport_interface.h from the source/interface folder of coreMQTT submodule in the MQTT demos as this path was changed recently.
2020-10-29 10:22:15 -07:00
Archit Aggarwal
832a797c69
Hygiene fix in MQTT demos to log warning for unexpected PINGRESP packet event (#366)
Update MQTT demos to log warning on receiving PINGRESP packet in event callback
2020-10-28 17:41:54 -07:00
Muneeb Ahmed
ee588710dd
Improve connection sharing demo (#362)
* Add a daemon socket listener so that the process loop will only execute if data is available on the socket.

* Set process loop timeout to 0 so that other commands do not have to wait for a process loop that isn't doing anything.

* Add an additional publisher task to show multiple tasks publishing simultaneously.

* Clarify what is meant by "synchronous" and "asynchronous" publishes.

* Fix possible race condition in task notification waits.

* Move task notification wait loop to its own function.

* The prvMQTTConnect function was doing more than just connecting, so it was split into more functions.

* Minor name changes for clarity.

* Add macros for AWS IoT metrics
2020-10-23 15:32:04 -07:00
Oscar Michael Abrina
f31d10ae0f
Add instructions for MQTT broker setup on Windows for coreMQTT demos (#360)
This adds instructions for setting up a local Mosquitto broker on Windows for use with the coreMQTT demos. There are different instructions for mutual auth, server auth, and plaintext.
2020-10-22 19:06:19 -07:00
Oscar Michael Abrina
d1c3b8321d
Add demo config option for disabling SNI (#359)
This creates a democonfigDISABLE_SNI option for the demos so that it can easily be toggled by users who are using a local MQTT broker with no hostname. However, it is and should be enabled by default whenever possible.
2020-10-21 14:42:42 -07:00
Oscar Michael Abrina
10842c9189
Relocate logging sources under FreeRTOS-Plus/Source/Logging (#354)
As suggested, because logging_stack.h and logging_levels.h are used not only by demos but also by platform-specific transport code, it would make sense to move FreeRTOS-Plus/Demos/Common/Logging to FreeRTOS-Plus/Source/Logging. The same is done for demo_logging.c and demo_logging.h, which are duplicated by several demos. Win32.vcxproj project files are also updated to follow suite.
2020-10-20 20:31:54 -07:00
Oscar Michael Abrina
553d448865
Update configNETWORK_INTERFACE_TO_USE default value for demos to 0L (#353)
To avoid silent errors, configNETWORK_INTERFACE_TO_USE should be defaulted to 0L.
2020-10-19 18:02:58 -07:00
Oscar Michael Abrina
afc5563045
Update mbedtls VS project filters (#351)
The mbedTLS sources used to show up in the root directory of the Visual Studio Project. This change updates WIN32.vcxproj.filters so that it appears under FreeRTOS+\mbedtls\library instead.
2020-10-19 10:54:31 -07:00
Muneeb Ahmed
8b32c56573
Fix incorrect operator from #349 (#352) 2020-10-19 10:39:33 -07:00
Muneeb Ahmed
60ac51d7f1
Add macro to break from potential infinite loops (#349)
* Break from potentially infinite loops in connection sharing demo

* Use QoS1 subscription for resilience against network disconnect

Co-authored-by: Oscar Michael Abrina <abrinao@amazon.com>
2020-10-16 14:25:09 -07:00
Muneeb Ahmed
806d51caf0
Fix bug allowing an infinite subscribe loop (#348)
* Reset flag in each iteration of subscribe loop
2020-10-16 10:51:23 -07:00