Commit graph

882 commits

Author SHA1 Message Date
Our Air Quality
c8c7f97290 i2c: increase the default clock strech timeout to 250msec.
This also redefines the timeout in FreeRTOS clock ticks, and implements a two
stage wait: firstly spinning sampling frequently, and then falling back to a
longer wait while sampling less frequently and yielding.
2018-06-15 08:28:47 +10:00
Ruslan V. Uss
d9c5f2eaa2
Merge pull request #635 from quietboil/improved
ssd1306: Allow SPI3 support to be disabled
2018-06-06 19:30:05 +05:00
Alex Demenchuk
c3b7a01891 Add SPI3 SUPPORT preprocessor macro to CFLAGS 2018-06-05 16:17:26 -04:00
Ruslan V. Uss
eed96df5dd
Merge pull request #634 from ourairquality/sysparam-init-sem
sysparam: always create the semaphore on init.
2018-06-05 20:05:39 +05:00
Our Air Quality
090db8da5e sysparam: always create the semaphore on init.
Otherwise when initialization was not successful it may fail with an
assertion in FreeRTOS rather than returning SYSPARAM_ERR_NOINIT.
2018-06-05 22:24:48 +10:00
Ruslan V. Uss
93d43d7825
Merge pull request #622 from ourairquality/uart-nonblock-vtime
stdin_uart_interrupt: add support for nonblock and a timeout.
2018-05-20 02:48:30 +05:00
Zaltora
4dc7d825bc Initial HW PWM (Delta-Sigma) (#609) 2018-05-20 02:47:29 +05:00
Ruslan V. Uss
10f361c8ca
Merge pull request #625 from joostn/jn_cpp1
Improved C++ support, support C++ exceptions
2018-05-18 20:00:42 +05:00
Joost Nieuwenhuijse
2985d1d11e Make operator new / delete weak
so you can implement your own, e.g. if you need a throwing operator new.
2018-05-16 17:56:15 +02:00
Joost Nieuwenhuijse
233f9a6a31 Change linker script to support C++ exceptions
See:
https://github.com/espressif/esp-idf/issues/459
https://github.com/jcmvbkbc/crosstool-NG/issues/54
2018-05-16 17:54:56 +02:00
Joost Nieuwenhuijse
ee001e0231 Move large lib_a-svfwprintf to flash
lib_a-svfwprintf may get included when linking against libstdc++
This will overflow IRAM

https://github.com/SuperHouse/esp-open-rtos/issues/623
2018-05-16 17:53:17 +02:00
Our Air Quality
efff445a03 stdin_uart_interrupt: add support for nonblock and a timeout. 2018-05-05 13:00:06 +10:00
Ruslan V. Uss
5830e001cf
Merge pull request #621 from ourairquality/dhcpc-flag-stopped
sdk_wifi_station_dhcpc_stop: ensure the client is flagged as stopped.
2018-04-30 15:14:18 +05:00
Our Air Quality
6db5525fbb sdk_wifi_station_dhcpc_stop: ensure the client is flagged as stopped.
Need to flag the dhcp client as stopped, even if the netif is not yet
initialized, because the flag is used to control the starting of the
dhcpc.
2018-04-30 14:08:41 +10:00
Ruslan V. Uss
61d3f5b445
Merge pull request #615 from ourairquality/os_delay_us
sdk_os_delay_us: rewrite to avoid hal.h
2018-04-27 01:20:30 +05:00
Ruslan V. Uss
a8c0e44cc7
Merge pull request #616 from ourairquality/new-flash-sizes
Recognise some new flash size codes.
2018-04-27 01:19:47 +05:00
Ruslan V. Uss
2b818ab6e3
Merge pull request #617 from ourairquality/rboot-1_4_2
rboot: update to 1.4.2
2018-04-27 01:19:17 +05:00
Our Air Quality
c183804aa2 rboot: update to 1.4.2 2018-04-25 23:27:01 +10:00
Our Air Quality
46559496c6 Recognise some new flash size codes.
This at least recognises the 2MB-c1, 4MB-c1, 8MB, and 16MB flash
size codes.
2018-04-25 23:06:28 +10:00
Our Air Quality
cec6b7c19f sdk_os_delay_us: rewrite to avoid hal.h
Seems to fail to compile recently, missing xthal_get_ccount(), so
avoid using hal.h which is outside esp-open-rtos.
2018-04-25 13:05:25 +10:00
Ruslan V. Uss
782eaabb97
Merge pull request #612 from rerobika/sdio_send_command
Fix SDIO send_command
2018-04-21 22:05:33 +05:00
Robert Fancsik
3b5510dce1 Fix SDIO send_command
This patch fixes the problem, while receiving R1b type of response from the card.
In case of R1b response the continuous stream that the card sends must be checked whether the signal indicates busy status and wait until a non zero response.
2018-04-20 19:59:59 +02:00
Ruslan V. Uss
4581999feb
Merge pull request #608 from rerobika/sdio_write_block_fix
Fix for sdio_write_sectors
2018-04-17 01:03:38 +05:00
Robert Fancsik
b43c3cee2d Fix for sdio_write_sectors
The issue was found by using f_mkdir("directory_name").
The function always returned FR_DISK_ERR due to an unhadled case in sdio_write_sectors().
According to this documentation: http://www.convict.lu/pdf/ProdManualSDCardv1.9.pdf#page=92 stop transmission command should be sent after writing multiple blocks.
This patch fixes this bug also adds a test case for it.
2018-04-16 12:11:05 +02:00
Ruslan V. Uss
0fa4213577
Merge pull request #607 from FlavioBayer/patch-1
bugfix/ets_timer.c: race condition while disarming
2018-04-14 00:11:10 +05:00
Flavio Bayer
de426c08b6
bugfix/ets_timer.c: race condition while disarming
If `sdk_ets_timer_arm_ms_us` is called right after `vPortExitCritical` inside `sdk_ets_timer_disarm` on line 247 (by an ISR for example, which was my case), execution will loop forever on line 196, since `timer->next!=ETS_TIMER_NOT_ARMED`, which was supposed to be changed in line 248.
By delaying the IRS or context switch until `sdk_ets_timer_disarm` the problem is fixed.
2018-04-13 16:08:03 -03:00
Ruslan V. Uss
524a98ed1a
Merge pull request #583 from ourairquality/global-stdio-streams
newlib: rebuild with the global stdio streams enabled.
2018-04-02 11:22:48 +05:00
Ruslan V. Uss
1ef7e85e05
Merge pull request #602 from ourairquality/freertos-r2536
FreeRTOS: Update to r2536.
2018-04-02 11:22:09 +05:00
Ruslan V. Uss
94047dd765
Merge pull request #601 from ourairquality/rom-skip-wrap
Skip calling wrappers from a number of the ROM functions.
2018-04-02 11:21:23 +05:00
Ruslan V. Uss
ace502a533
Merge pull request #597 from nicogrx/upstreamable_work
uart: add ability to configure byte length
2018-04-02 11:20:41 +05:00
Ruslan V. Uss
05af33fe0d
Merge pull request #595 from Zaltora/ws2812_init_fix
ws2812 fix possible memory leak
2018-04-02 11:20:18 +05:00
Our Air Quality
a6fa0ee497 FreeRTOS: Update to r2536.
* Introduce sbBYTES_TO_STORE_MESSAGE_LENGTH

* Fix bug in ucStreamBufferGetStreamBufferType() - which is only used by the
  Percepio trace tool.

* Update the line within vTaskStartScheduler() that was setting xTickCount to 0
  to instead set it to configINITIAL_TICK_COUNT.

* Introduce xMessageBufferNextLengthBytes() and tests for the same.

* Add call to traceTASK_SWITCHED_IN() in vTaskStartScheduler() so trace tools
  can see the first task to run.

* Correct definition of StaticTask_t in the case that portUSE_MPU_WRAPPERS is
  set to 1.

* prvTaskCheckFreeStackSpace() now returns configSTACK_DEPTH_TYPE to allow
  return values greater than max uint16_t value if required.

* xStreamBufferSend() and xStreamBufferReceive() no longer clear task
  notification bits - clearing was unnecessary as only the task notification
  state is used.

* Correct out of date comment in tasks.c.

* Fix typo in comment in queue.h.
2018-03-31 23:32:27 +11:00
Our Air Quality
e43329cbc7 Skip calling wrappers from a number of the ROM functions.
A number of the ROM functions were pointing to wrappers that saved and
restored the $a0 register, but the functions they called either did
not use $a0 or saved and restored $a0 as needed anyway.
2018-03-31 21:29:26 +11:00
Jean-Nicolas Graux
8cb769d55d uart: add ability to configure byte length
Signed-off-by: Jean-Nicolas Graux <nicogrx@gmail.com>
2018-03-29 13:24:06 +02:00
Zaltora
6dde352842 prevent multiple initialization memory allocation and inform user if allocation was fail 2018-03-27 10:56:46 +02:00
Ruslan V. Uss
a89417e26e
Merge pull request #582 from espway/i2c-timing-calculation
i2c: revise timing calculation
2018-03-13 18:35:41 +05:00
tkremeyer
5c18d42c8d UART: Add ability to configure stopbits and parity bit (#590) 2018-03-13 18:31:19 +05:00
Ruslan V. Uss
f296f4d91e
Merge pull request #591 from maximkulkin/fix-dhcpserver-memory-leak
extras/dhcpserver - Fix memory leak on stop
2018-03-13 18:30:27 +05:00
Maxim Kulkin
7707f4f905 extras/dhcpserver - Fix memory leak on stop 2018-03-11 22:56:10 -07:00
Andrea Greco
b77380bad1 Http client OTA (#553) 2018-03-01 05:03:44 +05:00
Jeff Kletsky
33082ba2c9 extras/timekeeping -- provide POSIX-like interface (#578) 2018-03-01 05:01:40 +05:00
Our Air Quality
f9ae521710 newlib: rebuild with the global stdio streams enabled.
This change means that there is only one set of global stdin, stdout, and stderr
FILE streams shared by all the threads. This reduces memory usage and avoids
having to close these streams before threads exit. These streams still have a
lock to synchronise access.
2018-02-28 23:44:27 +11:00
Sakari Kapanen
4a1b600be4 i2c: improve timing
Look-up tables were used for determining the delay loop counts before.
Based on these hand-tuned values, the loop overhead was estimated for
each option -- 80 and 160 MHz, fast and slow GPIO access. Instead of the
great number of tunable parameters one now only has to tune the overhead
values if the code is changed.

Functions were added to the API which allow setting an arbitrary
frequency. API backward compatibility is retained.

i2c: fix potential overflow situation
2018-02-27 23:47:16 +02:00
Ruslan V. Uss
ed1a6cc6f3
Merge pull request #580 from ourairquality/newlib-lock-fix
newlib lock support: use a separate mutex and recursive mutex.
2018-02-23 22:30:20 +05:00
Sashka
8d4b4aa7a3 Multi-Channel Soft PWM library (#579) 2018-02-23 22:29:42 +05:00
Our Air Quality
dccf3fc7b9 newlib lock support: uses a separate mutex and recursive mutex.
In trying to save memory had incorrectly shared a non-recursive mutex
with recursive mutex uses. Initialize one non-recursive mutex too.
2018-02-23 23:00:08 +11:00
Ruslan V. Uss
49343e9c68
Merge pull request #571 from ourairquality/newlib-300
Newlib: update to version 3.0.0
2018-02-19 10:16:58 +05:00
Ruslan V. Uss
33147ae77f
Merge pull request #574 from ourairquality/lwip-fix-timer-debug
lwip: update and fix compilation with timer debug enabled.
2018-02-18 20:25:57 +05:00
Our Air Quality
8fc06b9b57 lwip: update and fix compilation with timer debug enabled. 2018-02-18 23:38:15 +11:00
Our Air Quality
875aaabebe Newlib: update to version 3.0.0 2018-02-17 01:11:54 +11:00