Commit graph

582 commits

Author SHA1 Message Date
Our Air Quality
762eced543 sysparam: add a semaphore to synchronize writers. (#194) 2016-08-21 07:47:40 +02:00
Paul Sokolovsky
0aabbea16f esp/wdt_regs.h: Add "current value" register.
WDT is countdown timer. Current value is accessible via VAL register. At
this time it's unclear if it's RO or RW (common sense says it shoul be RO).

Source: looking at the WDT registers on a running chip.
2016-08-20 16:13:07 +03:00
Paul Sokolovsky
458a6813c8 esp/interrupts.h: Add wDev FIQ interrupt number.
40251dd9     $a2 = 0x0
40251ddb     $a3 = wDev_ProcessFiq
40251dde     $a4 = 0x0
40251de0     $a0 = ets_isr_attach
40251de3     call $a0
2016-08-20 16:06:09 +03:00
sheinz
95081a1e9f Merge pull request #186 from ourairquality/bme280
BME280 support.
2016-08-19 10:31:21 +03:00
sheinz
519accd46c Merge pull request #190 from sheinz/fix/deep_sleep_timer
Fix for system_deep_sleep ignoring argument
2016-08-19 10:28:09 +03:00
Johan Kanflo
40dc3bf945 Sysparam by @foogod (#180)
* Sysparam implementation

sysparam improvements

Mostly done, a few minor cleanups left.

Add sysparam_editor example

Sysparam code cleanup

Add documentation to sysparam.h

Fix up sysparam.h docs

Added a couple more debug statements

Fix potential memory leak if realloc() fails

Major sysparam overhaul

Add sysparam_get_info function

Add sysparam initialization to app_main.c

* Fixed warnings, added license
2016-08-18 12:07:46 +02:00
ourairquality
f0c43ff5d5 BME280 support.
The BME280 is close to compatible with the existing BMP280 and extends it with support for measuring humidity, so support has been bundled into the bmp280 driver.

The example now auto-detects the device and displays the humidity for the BME280.

The I2C bus initialization has been moved out of the bmp280 driver to support multiple devices.

The check-id and reset logic has been bundled into the driver initialization. It needs to be re-initialized after reset anyway and the chip-id is need to initialize it, just re-initialize to reset.

Support has been added for multiple devices. The calibration data storage needs to be managed by the caller rather than static data. The caller can choose the I2C address to allow two BMx280 devices to be used on the same I2C bus.

An interface has been added to return the measurement values in an integer fixed float format. The float format interface is still there.

All the values are read in one I2C transaction to ensure they are a consistent set.

Renamed bmp280_calib_t to bmp280_t, and removed read_register8.
2016-08-17 23:33:04 +10:00
sheinz
62f55d499e Fix for system_deep_sleep ignoring argument 2016-08-17 16:25:17 +03:00
sheinz
b07c34b863 Merge branch 'ourairquality-iomux-set-func' 2016-08-17 14:37:16 +03:00
sheinz
0875e5d55b Merge branch 'iomux-set-func' of https://github.com/ourairquality/esp-open-rtos into ourairquality-iomux-set-func
Conflicts:
	core/include/esp/iomux.h
2016-08-17 14:36:46 +03:00
Johan Kanflo
84ee8d493c Merge pull request #189 from sheinz/feature/i2s_dma
i2s_dma wrapper, ws2812_i2s driver and examples.
2016-08-17 06:59:30 +02:00
sheinz
e96dc5c722 is2_audio: Example of using i2s_dma library to output audio 2016-08-16 11:16:02 +03:00
sheinz
666f821263 ws2812_i2s: WS2812 leds driver implementation using i2s_dma library 2016-08-16 10:53:56 +03:00
sheinz
27135d6252 i2s_dma: Implementation of I2S + DMA wrapper library 2016-08-16 10:19:33 +03:00
ourairquality
4b77138f71 Add gpio_set_iomux_function(). 2016-08-15 22:23:45 +10:00
ourairquality
8405b989f9 iomux_set_function: remove the IOMUX_FUNC transform of the func argument.
The allows the IOMUX_GPIO<n>_FUNC_<function> definitions to be used here.
2016-08-15 22:10:59 +10:00
sheinz
3dcc4f14a9 Merge pull request #185 from pellepl/master
spiffs: enable temporal cache for spiffs v 0.3.6
2016-08-14 19:50:54 +03:00
Peter Andersson
5ea0228639 spiffs: enable temporal cache for spiffs v 0.3.6 2016-08-14 15:15:45 +02:00
Johan Kanflo
0c09054f3e Merge pull request #178 from sheinz/feature/spiffs_update
SPIFFS: Selectable configuration of SPIFFS
2016-08-09 22:32:37 +02:00
Johan Kanflo
0f20bbae47 Merge pull request #181 from kanflo/spiffs-0.3.6
Updated SPIFFS to 0.3.6
2016-08-09 22:31:47 +02:00
Johan Kanflo
a868f9dadb Updated SPIFFS to 0.3.6 2016-08-09 20:33:40 +02:00
sheinz
5051c5c528 SPIFFS: Selectable configuration of SPIFFS 2016-08-08 23:18:15 +03:00
sheinz
964a2f850a Merge pull request #165 from ourairquality/bmp180-rework
bmp180: make a lower level interface available and support oversampling.
2016-08-06 00:39:43 +03:00
Johan Kanflo
14f79a4857 Merge pull request #168 from bhuvanchandra/ds3231-v3
DS3231 v3
2016-08-05 23:38:30 +02:00
Bhuvanchandra
f388bbc7c4 examples: ds3231: Add simple example for ds3231
Simple example for reading out the time and temperature
from ds3231 RTC every second.

Signed-off-by: Bhuvanchandra DV <bhuvanchandra.dv@gmail.com>
2016-08-03 01:23:43 +00:00
Bhuvanchandra
782cdfd11d extras: ds3231: Add support for DS3231 real-time clock (RTC)
Add support for DS3231 extremely accurate I2C real-time clock (RTC).

Signed-off-by: Bhuvanchandra DV <bhuvanchandra.dv@gmail.com>
2016-08-03 01:23:43 +00:00
Johan Kanflo
083aa0451a Merge pull request #163 from sheinz/feature/spiffs
File system support. SPIFFS integration.
2016-08-02 15:42:22 +02:00
sheinz
d69b8390d4 SPIFFS: Fix PR review comments.
* Enable SPIFFS_USE_MAGIC
 * Enable SPIFFS_USE_MAGIC_LENGTH
 * Enable SPIFFS_FILEHDL_OFFSET
 * Rebuild mkspiffs if spiffs_config.h is changed
 * Emulate NOR flash in mkspiffs
 * Build spiffs image in 'flash' and 'test' targets
2016-07-27 10:12:59 +03:00
sheinz
0ec47b5de9 Merge branch 'feature/spiffs' into experiments/spi_flash_reimplement 2016-07-21 16:48:26 +03:00
sheinz
38cccbd456 SPIFFS: Optimized SPI data read/write.
Unaligned read/write from/to SPI data registers is rewritten in
assembler to improve performance.
2016-07-21 16:36:55 +03:00
ourairquality
41d4427fba bmp180: separate the task and queue interface from the lower level support.
This just separates them in the one file leaving it as possible future change to actually remove the higher level api or move it to an example.
2016-07-20 18:52:13 +10:00
ourairquality
05bbe48bd4 bmp180: make a lower level interface available and support oversampling.
An application using multiple I2C devices will need it's own
loop. This reworks the code to make the detection, calibration
constant loading, and measurment functions available too without
having to use the bmp810 task which is still retained.

Adds support for oversampling.

Fixes a bug in the calculation of the temperature.

Better error handling. Checks for I2C errors and errors in the loading
of the calibration constants and propagates these up.
2016-07-20 18:42:51 +10:00
sheinz
281faa2cac SPIFFS: Wait SPI idle optimization. 2016-07-19 17:38:21 +03:00
Angus Gratton
22c480b583 Merge pull request #160 from sheinz/feature/bmp280
BMP280 pressure sensor driver and example.
2016-07-19 08:22:14 +10:00
Johan Kanflo
38375e218a Merge pull request #164 from ourairquality/i2c-open-drain
i2c: use open drain outputs.
2016-07-18 22:01:34 +02:00
sheinz
4b1568cbb9 SPIFFS: flash access refactoring. 2016-07-18 13:12:21 +03:00
ourairquality
16157080cd i2c: use open drain outputs.
Configure the pins as open-drain just in case the code forces them
high although it should be configuring them as inputs to let them float high.

Initialize the pins when the driver is initialized.

Enable the internal pull-ups to prevent them floating too high if not
connected and damaging the circuit.
2016-07-18 14:35:01 +10:00
sheinz
5d5f28a22f SPIFFS: Bypass SDK and bootrom for flash access.
Accessing SPI flash using reversed engineered functions.
2016-07-16 00:22:33 +03:00
sheinz
fb187eae08 Merge branch 'feature/spiffs' into experiments/spi_flash_reimplement 2016-07-16 00:19:21 +03:00
sheinz
0a98f43902 SPIFFS: Fixed linux build and travis build
mkspiffs utility explicitly use gcc to compile
2016-07-15 19:01:17 +03:00
sheinz
55b7d29767 SPIFFS: Fix SPIFFS rebuild if SIZE is changed. 2016-07-15 15:44:22 +03:00
sheinz
924860a78f SPIFFS: Update example, README.md
Separate method to initialize SPIFFS memory buffers.
REDME.md for spiffs component.
Simplify spiffs example.
2016-07-15 15:22:03 +03:00
sheinz
66610c56cb SPIFFS: Improve SPIFFS image build
Rebuild SPIFFS image if files change.
Rebuild mkspiffs if SPIFFS_SIZE is changed in Makefile.
2016-07-15 01:21:32 +03:00
sheinz
df796947bd SPIFFS: Update README.md 2016-07-15 00:41:29 +03:00
sheinz
1db953e0c3 SPIFFS: Add speed test. 2016-07-15 00:08:34 +03:00
sheinz
22654a4de7 SPIFFS: Support lseek, stat, fstat
Support for lseek, stat, fstat added.
Test extended to covert those functions.
2016-07-14 16:13:03 +03:00
sheinz
bfa20af855 Fix branch merging.
Changes in esp_spiffs.c recovered.
2016-07-14 15:44:02 +03:00
sheinz
6484c57737 Merge branch 'experiments/posix_fs' into feature/spiffs 2016-07-14 15:26:32 +03:00
sheinz
d25b8b2a55 Create SPIFFS image and flash it.
mkspiffs is added to create SPIFFS image from directory with files.
Build process changed to flash SPIFFS image if necessary
2016-07-14 14:49:34 +03:00
sheinz
5c12b7c7e9 Draft implementation of SPIFFS integration 2016-07-14 14:49:34 +03:00