It now accounts for the number of rx pool buffers used and the
available memory when deciding the number of ooseq buffers to retain.
Enable the TCP Selective ACK support which appears to help a lot on
lossy wifi when using the OOSEQ option.
Also adds source code for sdk_cnx_rc_search, adding a null pointer dereference
check (that is not expected to be seen), and source code for sdk_cnx_remove_rc.
With this option enabled some lwip input processing occurs in the pp task which
works well for some uses but some code uses a lot of stack (e.g. mdns) and will
overflow the pp task stask, or might unnecessarily slow the critical pp task,
so disable this by default and if not already defined.
Switch from FreeRTOS queue to task notification.
Removed unknown/unused code.
Rename sdk_ets_handler_isr to process_pending_timers
Add function for microseconds
Simplify time to ticks conversion
This is to help work with recent SDKs that add a RF cal sector by
default in the fifth last sector - just so the sysparam sectors do not
jump around when using different SDK versions.
Looks like this was test wip code that should not have been included.
Want to be able to set the i2c per-project rather than having to patch
the driver.
The fiq NMI calls rand() from lmac:lmac.a:sdk_lmacTxFrame and the NMI
must not touch the newlib reent structure or enter critical regions
etc, so just use the simple and safe hwrand implementation as a
substitute.
mqtt_timer_left_ms: timer->end_time is in ticks, now is in ticks, so left
is in ticks. left * portTICK_PERIOD_MS is the time left.
With that change, the select in both mqtt_esp_read and mqtt_esp_write
seems to work as expected(with time, not ticks)
On MQTTClient.c function mqtt_subscribe, if more than MQTT_MAX_MESSAGE_HANDLERS are registered, the variable rc receives the value of grantedQoS.
If grantedQoS = 0, and all handlers are already occupied, it goes on and returns 0 to the caller.