Commit Graph

129 Commits

Author SHA1 Message Date
RichardBarry
319dd912ca Update the readme files to be correct for the upcoming LTS snapshot z… (#141)
* Update the readme files to be correct for the upcoming LTS snapshot zip file - noting the differences between the Beta1 and Beta2 directories.
2020-07-16 17:52:37 -07:00
Muneeb Ahmed
e3c8583d60 Rename Transport Implementation and minor fixes (#145)
* Rename transport interface files

* Rename plaintext transport functions

* Address comments

* Add socket send timeout

* Set socket options after connection
2020-07-15 14:59:31 -07:00
Archit Aggarwal
0e789d21d5 Update hard-coded external Moqsuitto server cert to latest (#147) 2020-07-15 09:25:46 -07:00
leegeth
ba170799ca Update plain text demo to use local broker (#142) 2020-07-15 09:03:54 -07:00
leegeth
5ee5e2a95d Update main.c logs to use logging stack (#146) 2020-07-14 16:33:10 -07:00
leegeth
6a8cdcdf3c MQTT Lightweight demo (#119) 2020-07-13 17:00:12 -07:00
Muneeb Ahmed
b98b75e312 Add transport interface and MQTT plaintext demo (#130)
* Add transport interface for FreeRTOS

* Add MQTT plaintext demo
2020-07-10 12:19:57 -07:00
Muneeb Ahmed
2ee9fe649e Update MQTT files for network context (#133)
* Update MQTT files for network context

* Add transport interface header

* Update include path for lightweight demo
2020-07-08 19:11:13 -07:00
Joshua Yan
265d9d78d7 Update Mbed TLS to version v2.16.7 (#129)
* Update submodule pointer to be on v2.16.7 of Mbed TLS
* Update config file licenses
* Update readme.txt to include information on what Mbed TLS license the repo uses
2020-07-07 18:06:24 -07:00
Archit Aggarwal
c5b6d727cf Update uncrustify.cfg to match aws/amazon-freertos style (#128)
* Remove uncrustify config for assignment operator alignment to match aws/aws-iot-embedded-c-device-sdk and aws/amazon-freertos configs; re-format files
2020-07-07 15:02:52 -07:00
leegeth
d67f2ad963 MQTT Beta2 demo support files. (#115)
Co-authored-by: Archit Aggarwal <architag@amazon.com>
2020-07-07 12:21:33 -07:00
alfred gedeon
6669a6f9bf Style: uncrustify FreeRTOS-Plus files (#120)
Co-authored-by: Alfred Gedeon <gedeonag@amazon.com>
2020-07-06 15:28:33 -07:00
Tiangang Song
aa3fcbcb62 Fix return type of _establishMqttConnection (#112)
* Fix return type of _establishMqttConnection

* Fix document in OTA demo

* Fix build failures on microchip

* Add a log message in OTA demo
2020-07-01 16:24:37 -07:00
Carl Lundin
0bcbf43fee Sync PKCS #11 changes. (#113) 2020-06-30 16:54:25 -07:00
Archit Aggarwal
d95edc9733 Rename FreeRTOS-IoT-Libraries directory (#109)
* Rename both Demo/FreeRTOS-IoT-Libraries and Source/FreeRTOS_IoT_Libraries directories to FreeRTOS-IoT-Libraries-LTS-Beta1

* Rename directories within IDE project and source files

* Remove backup files pushed to remote accidentally

* Remaining directory name replacements in file texts
2020-06-30 15:07:32 -07:00
Tiangang Song
67aeced8b8 Sync OTA library from AFR 202007.00 release to lts-development (#91)
* Sync OTA library from AFR 202006.00 release

* Support suspend and resume in OTA demo

* Sync OTA library from AFR 202007.00 release

* Update OTA config files for other projects

* In OTA demo, block thread if fail to activate image

* Disable downgrade in OTA by default

* Update OTA demo config to match from AFR

* Add an idle hook to OTA demo to prevent 100% CPU

* Fix OTA config format and a mistake from last commit
2020-06-26 12:08:05 -07:00
Carl Lundin
fe3c62e476 Update PKCS #11 in LTS development branch. (#95) 2020-06-18 14:06:06 -07:00
Cobus van Eeden
dc491debe7 LTS-development-snapshot-202002.00
LTS development changes have Source, Demo, and dependencies added for FreeRTOS-IoT-Libraries. These libraries are using FreeRTOS kernel, FreeRTOS-Plus-TCP, and FreeRTOS-Plus-Trace of V10.3.0 tag. FreeRTOS_Plus_TCP and FreeRTOS_Plus_Trace are as used as is, but a few changes are made to FreeRTOS as listed below.

    Removed FreeRTOS/Demo.
    Updated FreeRTOS/readme.txt to remove mentions about the demos.
    Removed FreeRTOS/links_to_doc_pages_for_the_demo_projects.url file as there are no demos present.
2020-02-18 17:35:31 -08:00
Yuhui.Zheng
589dd9f149 Update version number in readiness for V10.3.0 release. Sync SVN with reviewed release candidate. 2020-02-07 20:14:50 +00:00
Richard Barry
7bea399061 Update libraries and sundry check-ins ready for the V10.3.0 kernel release. 2020-02-06 18:52:35 +00:00
Yuhui.Zheng
1deeb6dd84 Check socket binding result before doing anything with socket. (This is to address ARG findings.) Breaking the single return rule here, due to precedent violation at line 1039 and 1144.
prvTransferConnect() now returns:
- pdTRUE: everything's good. pdTRUE = 1.
- -pdFREERTOS_ERRNO_ENOMEM: FreeRTOS_socket() failed. -pdFREERTOS_ERRNO_ENOMEM = -12.
- -pdFREERTOS_ERRNO_EINVAL || -pdFREERTOS_ERRNO_ECANCELED: FreeRTOS_bind() failed. Negative values.

Thus, at line 569 and line 617, needs to check != pdTRUE instead of == pdFALSE.

This commit is done on behalf of Alfred.
2019-12-04 07:52:49 +00:00
Richard Barry
96bad0f6c3 Minor bug fix in NTPDemo.c -> use of FREERTOS_INVALID_SOCKET in place of NULL.
Update trace recorder code to account for uxPendedTicks renaming to xPendedTicks.
2019-09-04 00:13:17 +00:00
Richard Barry
b4c06085e1 Files as per 190725_FreeRTOS_IoT_Libs_Task_Pool_and_MQTT_Preview interim release. 2019-07-25 20:20:24 +00:00
Richard Barry
10b7b52995 Remove unnecessary include path from the MQTT demo. 2019-07-24 02:01:43 +00:00
Gaurav Aggarwal
38b6553abd Cosmetic changes in the MQTT demo - mostly comment updates. 2019-07-24 01:29:01 +00:00
Richard Barry
fe4511b35e Continued to work on the MQTT demo project.
A few review comments added into the MQTT implementation.
2019-07-24 00:27:14 +00:00
Richard Barry
53842d4cac Remove the simple UDP client/server tasks from the MQTT demo as the demo's network connection can be tested more easily just by pinging it.
Tidy up the iot_config.h header files a little.
2019-07-23 19:23:12 +00:00
Gaurav Aggarwal
95f60318d5 Cosmetic changes in the MQTT demo
- Fix warnings in the MQTT code.
- Update comments in the iot_config.h.
2019-07-23 18:20:06 +00:00
Gaurav Aggarwal
05e7d9cc08 Remove dependency on secure sockets
Network interface implementation for FreeRTOS now directly calls into
FreeRTOS+TCP instead of going via secure sockets.
2019-07-23 06:55:54 +00:00
Gaurav Aggarwal
8ea501ef11 Update projects to use the new directory name
IotTaskPool_GetSystemTaskPool has been removed from the cut down version
of the task pool. define IOT_SYSTEM_TASKPOOL to NULL so that the MQTT library
builds successfully.

Use the new #defines in the iot_config.h.
2019-07-23 04:16:32 +00:00
Richard Barry
7af8756c97 Update task pool so tasks and timer are allocated statically. 2019-07-23 01:46:59 +00:00
Gaurav Aggarwal
4c775574eb Fix DNS resolution failure for test.mosquitto.org
The DNS cache entry size was not big enough to fit the DNS name and
as a result the DNS reply parsing code returned error. Increased the
size of the entry to ensure that the DNS name can fit in.
2019-07-22 18:27:45 +00:00
Gaurav Aggarwal
06f9278de3 The MQTT example now works with the local MQTT broker.
It still needs to be tested with the public mosquitto broker.
2019-07-21 23:26:54 +00:00
Gaurav Aggarwal
a7ef9c3b61 Add first draft of mqtt example
Note that it is still work in progress and not working as of now.
2019-07-21 22:14:13 +00:00
Gaurav Aggarwal
d708efe997 Update the task pool demo to show re-use of recyclable jobs
The example now creates a recyclable job, schedules it and returns it
back to the task pool when it is done. It then again creates a
recyclable job and ensures that the task pool the same job present
it its cache.
2019-07-19 00:02:45 +00:00
Richard Barry
2b295f9015 Added simple UDP demo into the mqtt project to enable the network connectivity to be tested in a simple way prior to performing any MQTT operations. 2019-07-17 20:50:15 +00:00
Richard Barry
d362efca8d Add MQTT project that builds on the task pool project - currently the library is building but not being used. 2019-07-17 19:44:13 +00:00
Richard Barry
3c3b32b8e4 Rename the FreeRTOS_Plus_IoT_SDK directory to FreeRTOS_IoT_Libraries. 2019-07-16 18:21:42 +00:00
Richard Barry
290c8cedfd Function rename in task pool demo. 2019-07-16 18:19:44 +00:00
Richard Barry
bb0e1f356d Remove any TCP/IP functionality from the task pool demo - the TCP/IP stack is still built as it will be used in later revisions. 2019-07-14 23:33:05 +00:00
Richard Barry
e4e86a464e New MSVC task pool demo now building both the task pool and TCP libraries. 2019-07-14 19:13:51 +00:00
Richard Barry
3afd918ecd Rename the task pool version of FreeRTOS_Plus_TCP_Minimal.sln to task_pool_demo.sln. 2019-07-14 18:04:40 +00:00
Richard Barry
232a94c3f0 Restart the task pool demo, this time using the minimal FreeRTOS+TCP project as a base. 2019-07-14 18:01:57 +00:00
Richard Barry
d8a3ad3c6f Minor modification to the WIn32 simple TCP/IP stack example only. 2019-07-14 16:06:31 +00:00
Richard Barry
e60f71855a Remove IotTaskPool_CreateRecyclableSystemJob() and IotTaskPool_ScheduleSystemJob() again, which were intended to be alternative APIs that only access the system task pool, and instead update IotTaskPool_CreateRecyclableJob() and IotTaskPool_ScheduleJob() to allow the parameter used to pass in the task pool handle to be NULL if the system task pool is the only one available.
Update the task pool demo app to include a lot more functionality.
2019-07-08 15:48:21 +00:00
Richard Barry
e75b609c74 In small FreeRTOS applications it is unlikely there will be any task pools other than the system task pool. IotTaskPool_CreateRecyclableSystemJob() is therefore introduced to complement IotTaskPool_CreateRecyclableJob() that does not require the handle of the target task pool to be specified as a parameter. Likewise IotTaskPool_ScheduleSystemJob() is introduced to complement IotTaskPool_ScheduleJob() for the same reason.
IotTaskPool_CreateSystemTaskPool() calls synchronisation primitives, so cannot be called before the scheduler starts.  Add a configASSERT() to ensure the scheduler is running when it executes.
IotTaskPool_CreateSystemTaskPool() can conceivably be called from multiple different libraries that depend on the thread pool.  In this version _IotSystemTaskPool.running can be used to check the system task pool has not already been created.  If the task pool has been created simply return from IotTaskPool_CreateSystemTaskPool() instead of re-creating it (which would leak memory and leave orphaned tasks).
Call taskENTER_CRITICAL() and taskEXIT_CRITICAL() directly in place of mapping them to TASKPOOL_ENTER_CRITICAL() and TASKPOOL_EXIT_CRITICAL() in the same file.
Rename _timerThread() _timerCallback(), as it is a callback function and not a thread.
Remove the unused flags parameter from _scheduleInternal().
2019-07-01 17:05:20 +00:00
Richard Barry
76cc2a00c6 Add the first and most basic task pool example. 2019-06-28 23:20:52 +00:00
Richard Barry
87eb37342f Create a project that builds a subset of the dependencies of the IoT SDK that have been brought into SVN thus far. The application does nothing other than build at this time. 2019-06-19 18:42:58 +00:00
Richard Barry
b51529a284 Update version number ready for next release. 2019-05-11 01:47:37 +00:00
Richard Barry
58ba10eee8 Update version number in readiness for V10.2.0 release. 2019-02-17 22:36:16 +00:00