* wificfg: remove the AP WEP mode option
The WEP mode does not appear to be implement in the sdk for the AP mode, and
defaults to open when WEP is requested which is probably not intended. Remove
the WEP option from the wifi config interface.
* lwip: enable mdns dns queries.
* wificfg: support mDNS on the softAP interface.
* Adds ipv6 support. Compiles with ipv6 enabled and then accepts ipv6
connections and answers AAAA questions.
* Fixes a few overflows of the reply buffer. Reduce the default reply buffer
size, name it MDNS_RESPONDER_REPLY_SIZE, and allow overriding.
* Fix mdns_add_TXT.
* Prefer malloc to large stack buffers, to control stack sizes, and try to
malloc only the buffer size needed where known in advance.
* Determine the IP addresses when responding, eliminating the update function
and the update task.
* Allow use in SoftAP and StationAP mode too.
* Fix to compile without the debug output.
* Slightly better integration with lwip.
* Accept a NULL TXT entry.
* Some code style changes, not comprehensive.
* When IPv6 is enabled the http server and the captive portal dns now also
accept IPv6 connections. The interface and peer IPv6 address are now also
reported.
* The http server no longer redirects <name>.local to an IP address for better
integration with mDNS.
* Add mDNS support, for the extras/mdnsresponder or the LWIP mDNS responder,
and enable the LWIP mDNS responder for examples/wificfg.
* libesphttpd: added extras and example
* Added "heatshrink" as a submodule
* Updated libesphttpd
* Updated libesphttpd
* Trying to fix the commit id
* Updated libesphttpd
* Added zlib1g-dev package
* Use native gcc to build mkespfsimage and mkupgimg
* Added NS and GW for DHCP server configuration
* Making libeshttpd up-to-date
* Making libeshttpd up-to-date (heatshrink updated)
* Making libesphttpd up-to-date
* pwm fix special state + debug print + IRAM interupt
* Special state = don't set timer, safer
* fix timer crash, cant divide by 0
* pwm dont start when duty is set
* reverse option
* fix low duty crash + comments
The commit ebdd2f9 defined some offsets to differentiate between the
standard, socket and file descriptors.
SPIFFS_FILEHDL_OFFSET was updated accordingly but the code didn't use
that constant and this broke the SPIFFS POSIX API.
Fix it by initializing the fh_ix_offset field of the spiffs_config
structure to SPIFFS_FILEHDL_OFFSET.
* libesphttpd: added extras and example
* Added "heatshrink" as a submodule
* Updated libesphttpd
* Updated libesphttpd
* Trying to fix the commit id
* Updated libesphttpd
* Added zlib1g-dev package
* Use native gcc to build mkespfsimage and mkupgimg
* Added NS and GW for DHCP server configuration
* Driver for Sensirion SHT3x sensor added
This is a driver for Sensirion SHT3x temperature and humidity sensors
connected via I2C.
This commit is a rebasing and contains some interface changes based on
the review from @ourairquality.
* SHT3x driver changes
Additional include to satisfy the Travis CI test build
* SHT3x driver - small changes
README.md has been shortened
* SHT3x driver - small changes
* SHT3x driver - small changes
- crc8 lookup table is now static to be held in flash memory
- special handling for the timer overflow in sht3x_is_measuring removed
- initialization reduced to availability check
* SHT3x driver - some small changes
- crc8 lookup table is now static to be held in flash memory
- special handling for the timer overflow in sht3x_is_measuring removed
- some whitespace removed
- initialization reduced to availability check
* SHT3x driver - some minor changes
- lookup tables made const to be held in flash
- crc8 computation changed to a non table lookup version
- measurement duration is now given in ticks and can be used directly
for vTaskDelay (documentation and examples changed accordingly)
* SHT3x driver - documentation changed
* SHT3x driver - minor correction
- number of ticks for measurement duration takes now into account
portTICK_PERIOD_MS
* SHT3x driver - minor correction
- number of ticks for measurement duration takes now into account
portTICK_PERIOD_MS
* SHT3x driver - minor correction
- number of ticks for measurement duration takes now into account
portTICK_PERIOD_MS
* SHT3x driver - minor correction
- number of ticks for measurement duration takes now into account
portTICK_PERIOD_MS
* SHT3x driver - minor corrections
* SHT3x driver - minor corrections
* Driver for Sensirion SHT3x sensor added
This is a driver for Sensirion SHT3x temperature and humidity sensors
connected via I2C.
This commit is a rebasing and contains some interface changes based on
the review from @ourairquality.
SHT3x driver changes
- additional include to satisfy the Travis CI test build
- README.md has been shortened
- special handling for the timer overflow in sht3x_is_measuring removed
- some whitespaces removed
- crc8 computation changed to a non table lookup version
- measurement duration is now given in ticks and can be used directly
for vTaskDelay (documentation and examples changed accordingly)
- number of ticks for measurement duration takes now into account
portTICK_PERIOD_MS
- clock stretching disabled on sensor to avoid blocking when data are
not ready to read
- calculation of maesurement duration adds now one and a half ticks to
be sure that measurement duration is not too short
- function sht3x_is_measuring is now private and only for internal use,
user task has always to use function vTaskDelay to wait for
measurement results
- function sht3x_is_measuring was simplified and returns now just a
boolean value
- private function sht3x_reset added which is used to reset the sensor
during initialization
- active flag in sensor data structure not needed anymore
- function sht3_get_raw_data simplified
- function sht3x_start_measurement returns now only a boolean
- function sht3x_start_measurement does not check anymore whether there is
already a measurment running
- new function sht3x_get_measurement_duration which returns the measurement
duration in ticks for configured repeatability
* SHT3x driver minor changes
- type sht3x_values_t replaced by separate float values
- additional repeatability parameter defined for function sht3x_start_measurement
- parameter of function sht3x_get_measurement_duration changed from
sht3x_sensort_t to sht3_repeat_t
- sensor modes and repeatability levels extended by prefix sht3x_
* SHT3x driver minor changes
- new high level function sht3x_measure added, it comprises all three
steps to perform one measurement in only one function
- example with two sensors removed
* SHT3x driver small correction
* Correct checking of the AP password and SSID lengths.
* Only enable AP mode if it is really configured enabled.
* Only start the http server if wifi is enabled.
This patch gets the newlib standard stream descriptors playing well with the
lwip socket descriptors and the spiffs file descriptors. The LWIP_SOCKET_OFFSET
is now defined to be 3, rather than zero, to avoid clashing with the standard
stream descriptors, and the SPIFFS_FILEHDL_OFFSET is bumped up to start after
the lwip descriptors.
* bmp180: comment typo
* ds3231: minor code style fixes. Comment, on the week day start.
* Reverse engineered ets_timers.o 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
* ets_timer: code for using the FreeRTOS timers, and remove from libs.
* libc: update to a recent newlib version.
* LwIP v2 support
* spi_write: use uint32_t for the page iteration counter. The page counter was using an uint8_t which seems unnecessary and might wrap.
* sysparam_get_bool: memcpy the binary values out.
* FreeRTOS 9.0.1
* Add an argument to ISRs. Disable interrupts while masking them.
* sysparam: reserve one more flash sector before placing the sysparams. 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.
* upnp example: strip down the lwipopts.h file
* sysparam editor: accept newline to end a line of input.
* Add Wificfg. Uses the sysparam store to save the wifi configuration. Adds a basic http server for configuration.
* lwip: disable the tcpip_core_locking_input option. 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.
* sdk_cnx_add_rc: fix overflow of the table, when no match is found. 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.
* http_get example: fix compilation with ipv6 disabled.
* lwip: update to master branch.
* wificfg: allow the AP channel to be 1.
* lwip: rework the tcp ooseq handling. 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.
* Update lwip, fixes losses of pcbs and associated problems.
* lwip: revise the tcp ooseq limit calulations. Was making a mess of the calculation sign. Also added a COPY_PP_RX_PBUFS define to include appropriate limits for this option.
* lwip: ooseq_max_bytes() - set a practical target memory size.
* lwip: revise ooseq handling. Modified for lwip backwards compatibility based on upstream feedback.
* lwip: update to the 2.0.3 release
* lwip: merge upstream master.
* libc: update to upstream master.
* lwip: fix building without TCP_QUEUE_OOSEQ
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.
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.
Original work by @ourairquality
* Sysparam threadsafe and SPI access
* Sysparam test cases
* Fix for negative int8
* Sysparam getting bool without memory allocation. Bool tests.
* SPI flash refactoring.
* Extract common spiflash.c into core.
* Use spiflash.c in sysparam.
* Use memcpy in spiflash.c insted of hand-written version.
* Tests for spiflash.c
* custom delay
* Update comment
* add bus control status, add some missing include & fixed display output on sh1104 (#319)
* add some missing include
* Fixed display on SH1106
* Fix comment, add force sytem, rework flag, 16 bits data transfert
* Update all library with new I2C API
* custom delay
* Update comment, add bus control status
* fix i2c read + fix ds3231 temp + fix ssd1306 send
The function sntp_set_servers() duplicates the strings supplied in the
server_url[] array into new strings but forgets to allocate the extra
byte needed for the \0 terminator for each string.
Fix the problem by using strdup(), which allocates the right amount of
memory and copies the string at once.
* Process rercursive folder for spiffs images
* Flat file name from the directory structure
* change method to find '/' as the suggestion of @sheinz
* remove unused variable
* Allow changing write function of stdout.
Required for stdout redirection.
Works on blocks, not chars - does _not_ use sdk_os_putc !
Should work even when linking with SPIFFS.
* bmp280 more options
add option to user for temp oversampling and possibility to skipp a specific measure
* Update bmp280.h
* quick fix oups
* less redundant terms