Commit graph

863 commits

Author SHA1 Message Date
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
Ruslan V. Uss
a3d94f168b
Merge pull request #567 from ourairquality/lwip-from-isr-stub
lwip add and stub for sys_mbox_trypost_fromisr()
2018-02-14 16:57:56 +05:00
Our Air Quality
4b6513f5a1 lwip add and stub for sys_mbox_trypost_fromisr()
This is not supported on esp-open-rtos, but add a stub to quieten
linker warnings.
2018-02-14 10:40:46 +11:00
Ruslan V. Uss
59c3ae3e5d
Merge pull request #554 from ourairquality/lwip-update-0118
lwip update
2018-02-13 16:39:34 +05:00
andrewclink
5750b9d91f Allow overriding bootloader flash arguments (#565) 2018-02-13 16:38:51 +05:00
Our Air Quality
3c81f7d587 lwip update
* The mdns responder has been reworked to lower stack and memory usage. This is
  a variation on the upstream code, it use malloc whereas the upstream code uses
  pools. The high stack usage of the mdns responder was problem for
  esp-open-rtos, so we might have to maintain the differences for now.

* Improved lwip core locking, and lock checking. Upstream improvements, that
  need some added support from esp-open-rtos specific code. More core lock is
  performed when calling from the esp-open-rtos code now, so a little safer. The
  checking is not enforced, but projects might see warning messages and might
  want to look into them.

* The esp-open-rtos lwip support has been sync'ed with the new freertos port
  included with lwip. There are still some minor differences.

* A few lwip timer bugs have been resolved. This might help resolve some issues.

* Plus it picks up all the other upstream fixes and improvements.

* The default lwip stack has been lowered from 768 words to 480 words,
  due to the reduced stack usage by the mdns responder.
2018-02-09 20:26:02 +11:00
Ruslan V. Uss
5f8b3d43c7
Merge pull request #556 from andrewclink/master
Add makefile flash hooks
2018-02-09 13:04:04 +05:00
Jeff Kletsky
6b43a1caa1 Improve extras/sntp -- Issue #562 (#563) 2018-02-09 13:02:01 +05:00
Ruslan V. Uss
c31d392f9a
Merge pull request #558 from wutje/patch-1
Update FreeRTOS license.
2018-02-03 01:21:30 +05:00
Wouter
c3eaaa7043
Update FreeRTOS license.
FreeRTOS is under MIT license and copyrighted by Amazon
2018-01-27 23:54:36 +01:00
Andrew Clink
63af6f4cc4 Add makefile flash hooks 2018-01-25 09:16:31 -07:00
Ruslan V. Uss
42e342e3dd
Merge pull request #544 from gschorcht/sht3x
Minor changes in SHT3x driver
2018-01-20 17:03:09 +05:00
Gunar Schorcht
13db675ac6 Minor changes in BME680 driver (#543) 2018-01-20 17:02:53 +05:00
Gunar Schorcht
8325bb87c5 Minor changes in CCS811 driver (#542) 2018-01-20 17:02:31 +05:00
Gunar Schorcht
37230b2de6 L3GD20H 3-axes gyroscope driver (#545) 2018-01-20 17:01:59 +05:00
Gunar Schorcht
a4de9dd4f1 LIS3DH 3-axes accelerometer driver added (#546) 2018-01-20 17:01:38 +05:00
Gunar Schorcht
812794f7d9 LIS3MDL 3-axes magnetometer driver added (#547) 2018-01-20 17:00:35 +05:00
Gunar Schorcht
f5bbff8b87 LSM303D e-Compass driver added (#548) 2018-01-20 16:59:54 +05:00
Ruslan V. Uss
39957e6203
Updated FreeRTOS version in reaadme 2018-01-18 12:30:34 +05:00
Gunar Schorcht
7fed013453 minor changes 2018-01-06 15:34:36 +01:00