Commit Graph
2945 Commits
Author SHA1 Message Date
Gijs Noorlander fc950b141f Merge pull request #2126 from wdonker/mega
Fix P029 - MQTT Helper: device status not updated when GPIO is (#1708)
2018-12-06 08:55:56 +01:00
Gijs Noorlander 331462877f Merge pull request #2129 from Grovkillen/DocumentationUpdate
[docs] look and feel (headlines css) + P001 hardware + script for screenshots of GUI
2018-12-06 08:55:26 +01:00
Gijs Noorlander 50635d8024 Merge pull request #2131 from TD-er/bugfix/split_gpio_from_switch
Split GPIO commands from switch plugin
2018-12-06 08:54:38 +01:00
Grovkillen 108bdb4b01 [docs] fixed "ESP Easy" logo margin bug
The logo in the top left corner was being pushed down because of my CSS of images in general. Fixed now.
2018-12-05 22:08:19 +01:00
Gijs Noorlander 0c0db4f401 [GPIO] GPIO commands with long duration will be stopped async.
Implemented a GPIO timer for the scheduler to schedule a GPIO state change.

These will be stopped async:

- Tone > 50 msec duration
- Longpulse and longpulse_ms

Also implemented a frequency parameter for the `pwm` command.
2018-12-04 22:38:17 +01:00
Gijs Noorlander 77b283197d [GPIO] Add some checks to what GPIO pin can be used.
Not all pins should be used.
For example GPIO 6 - 11 are often connected to flash and thus not usable.
2018-12-04 22:38:17 +01:00
Gijs Noorlander 021374bf09 [GPIO] Add GPIO pin description page
And some other GPIO related updates.
2018-12-04 22:38:17 +01:00
Gijs Noorlander 8db694bde6 [GPIO] Move "inputswitchstate" back to Switch plugin
And added some checks + documentation.
2018-12-04 22:38:17 +01:00
Gijs Noorlander c304efb1b4 [GPIO] Move all GPIO commands out of Switch plugin
Currently only "gpio", "pwm" , "pulse" and "servo" work
2018-12-04 22:38:17 +01:00
Grovkillen 60edd5208e [docs] Test if arrows (unicode) work with RTD 2018-12-04 15:23:41 +01:00
Grovkillen b6e96a0086 [docs] P052 sensair S8 hardware page updated 2018-12-04 15:03:42 +01:00
Grovkillen 72862e7169 [docs] syntax error fixed. 2018-12-04 14:03:11 +01:00
Grovkillen 25c2f55219 [docs] updated headlines (css) + added P001 hardware 2018-12-04 13:58:34 +01:00
Grovkillen 65d072dcf7 [docs] added phantomJS script to streamline the screenshots 2018-12-04 13:07:00 +01:00
wdonker 89b30dcd88 Update _C002.ino 2018-12-04 12:40:44 +01:00
ESPEasy release bot 7948efb6fe automatically updated release notes for mega-20181204 mega-20181204 2018-12-04 04:00:08 +01:00
Grovkillen 05723163cc Merge pull request #2123 from Grovkillen/DocumentationUpdate
[docs] added P001 hardware
2018-12-03 14:38:20 +01:00
Grovkillen 79123392a9 Merge remote-tracking branch 'Grovkillen/DocumentationUpdate' into DocumentationUpdate 2018-12-03 14:35:56 +01:00
Grovkillen ccf2929e69 [docs] Added P001 (hardware) 2018-12-03 14:35:41 +01:00
ESPEasy release bot 8ae51cda1c automatically updated release notes for mega-20181203 mega-20181203 2018-12-03 04:00:11 +01:00
Gijs Noorlander ebe11246a1 Merge pull request #1813 from workgroupengineering/feature/Issue_1771
Increase the rule speed
2018-12-02 23:39:17 +01:00
Gijs Noorlander 43dfa03f2f [HLW8012] Make reading Sonoff POW non blocking ( #2097 )
See #2097
Timings are now less than a msec per iteration and interrupt driven.
Also settings are no longer saved every time the plugin gets initialized. (flash wear out)
2018-12-02 23:13:20 +01:00
Gijs Noorlander ce1ab3e718 [HLW8012] Update library to 1.1.1 2018-12-02 23:11:05 +01:00
Gijs Noorlander c9fa53914a [webserver CORS] #2119 Allow commands to be scripted
See #2119
2018-12-02 21:21:00 +01:00
Gijs Noorlander 4acedced42 [PWM] #2117 PWM stops after about 80 msec in core 2.4.1
See #2117
2018-12-02 16:41:51 +01:00
Gijs Noorlander dd8a67adcd [ESP32] Disable RTOS Multitasking option (multi_heap_poisoning)
When enabled, we now get crashes and CORRUPT HEAP messages.
2018-12-02 12:15:56 +01:00
Gijs Noorlander ab893a7d14 [Rules] GetArgv should clear the return string before filling it
The `GetArgv` function should clear the return string, since it is re-used in `parseCommandString`

See: https://github.com/letscontrolit/ESPEasy/issues/2112#issuecomment-443494191
2018-12-02 11:07:52 +01:00
Gijs Noorlander aaae79c8d9 [Memory] Pass String as reference or const reference, not deepcopy
A number of functions was given a String parameter as a deepcopy instead of a (const) reference.
This will use a lot more memory and time, where it isn't needed.
Also those deepcopy actions may fail silently and thus lead to crashes.
2018-12-02 01:25:32 +01:00
Gijs Noorlander 6ae627b32a [Uncrustify] Make rules source code files better readable
Since the `ESPEasyRules.ino` file is newly introduced in this branch, now is the best moment to tidy up the source code.
Also included the used Uncrustify.cfg file.
2018-12-02 00:35:00 +01:00
Gijs Noorlander 8369c330de [Stack] P035_IRTX reduction of memory usage & speed improvement
- Parsed commands or IR codes now only use amount of memory needed, no fixed allocation on the stack.
- Strings passed to functions via const reference instead of deepcopy
- Massive checks for brand name is now done on lower case, to improve speed.
2018-12-02 00:31:57 +01:00
Gijs Noorlander 2290de3c98 [Stack] Optimize GetArgv to only allocate what is needed.
And also only allocate on the heap, not on the stack.
2018-12-01 22:51:43 +01:00
ESPEasy release bot 3f00ef5dde automatically updated release notes for mega-20181201 mega-20181201 2018-12-01 04:00:09 +01:00
Gijs Noorlander afeed445ca [Stack] Make IP-address formatting simpler 2018-11-30 22:41:56 +01:00
Gijs Noorlander b76e8b4e8b [Stack] Reduce allocations on stack 2018-11-30 17:32:38 +01:00
Gijs Noorlander 84a31c0af9 [Rules engine] Set UseOldRulesEngine as default
Changed to use one of the VariousBits in the settingsfile, not adding an extra bit.
2018-11-30 14:13:53 +01:00
Saverio Cisternino bdfa4b7eec Adding flag to settings for switch from old to new rules engine (Default engine old). 2018-11-30 13:51:09 +01:00
Saverio Cisternino 99a77ad343 Fixed ESP32 build 2018-11-30 13:51:09 +01:00
Saverio Cisternino 0b4c605f43 Change menu url from relative to absolute 2018-11-30 13:51:09 +01:00
Saverio Cisternino eabf79be54 Redefine Rules WebUi 2018-11-30 13:51:09 +01:00
Saverio Cisternino b14fe5de32 Added addButton, addFormTextBox overload and addSaveButton, AddDeleteButton functions 2018-11-30 13:51:09 +01:00
Saverio Cisternino ed3d8f5371 implement matching of rule file 2018-11-30 13:51:09 +01:00
Saverio Cisternino 459e103a73 Moved the rules related functions from Misc.ino to ESPEasyRules.ino 2018-11-30 13:51:09 +01:00
Gijs Noorlander c62fab5eec Merge pull request #2110 from TD-er/bugfix/1970_remove_newline_HTTP_header
[#1970] Fix: HTTP Header broken in 'Generic HTTP Advanced' controller
2018-11-30 12:20:04 +01:00
Gijs Noorlander ecba3c79e2 [#1970] Fix: HTTP Header broken in 'Generic HTTP Advanced' controller
Also replaced a number of short strings not to use F() macro to reduce binary footprint.
2018-11-30 11:34:53 +01:00
Gijs Noorlander 5146803833 [Docs] Update to Sphinx 1.8.2 2018-11-30 11:33:34 +01:00
ESPEasy release bot 2b5a822cd5 automatically updated release notes for mega-20181130 mega-20181130 2018-11-30 04:00:11 +01:00
Gijs Noorlander 5ee53a49f5 Merge pull request #2106 from TD-er/feature/espeasy_p2p_protocol
[Docs] Document ESPeasy p2p controller
2018-11-30 00:18:17 +01:00
Gijs Noorlander b49921eb9a New data structures for P001, P019, P009, etc. plugins
See #2057 

Currently this version works with P001 and P019.

Main changes:
Added a new command to SWITCH 001: unmonitor,pcf,port#
Added two new commands to PCF 019: monitor,pcf,port# and unmonitor,pcf,port#
Added two new http commands: monitor and unmonitor
Added a new rules command: logPortStatus that will print the port status
Added the "SafeButton" functionality to 001 and 019 that will avoid false positives
Added more checks to all commands in WRITE function to avoid possible overflows
Added two more PIN STATUS: OFFLINE and INPUT_PULLUP
Modified SendStatus function so that it will be called only when needed (#1593)
Redesign of the pinstate page
Optimized the WRITE function, changing the serie of 'if' with 'else if'
2018-11-30 00:05:57 +01:00
Gijs Noorlander b9f999d79f [Docs] Split Sphinx plugin substitutions to speed-up build
Split the plugin related substitutions into separate files (per 10) to speed-up building docs.

Please note the use of indirect paths used in includes, needed to link those replacements from other directories.
2018-11-29 23:55:22 +01:00
Gijs Noorlander 776277b179 [Docs] Move Sphinx substitutions to separate file to speed-up build 2018-11-29 22:37:58 +01:00