Git Product home page Git Product logo

esp32_explorer's People

Contributors

chegewara avatar nkolban avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

esp32_explorer's Issues

Loading Frontend files to ESP...not clear

I failed to find how to load the front end files to ESP storage partition, I guess I miss something...
Loading the front end files directly into browser looks like working (some issues with file tree tab)!
(partition created correctly as described by csv file...)
Please add some explanations about how to load the front end resource folder to ESP.

Looks really useful, but does not build?

Tried to build this but keep getting this error

C:/msys32/home/gcorson/esp/ESP32_Explorer/main/main.cpp:1:20: fatal error: Memory.h: No such file or directory
compilation terminated.
make[1]: *** [/home/gcorson/esp/esp-idf/make/component_wrapper.mk:290: main.o] Error 1
make: *** [C:/msys32/home/gcorson/esp/esp-idf/make/project.mk:582: component-main-build] Error 2

I did see the other post and downloaded esp32-snippits and changed ESP32_Explorer/components/cpp_utils to point to that directory, but still get the error.

How to link with my app?

I've compiled this but I would be grateful if you could please explain to this ESP32 and IDF build system noob how to perform the "link with the application" step? How does the explorer actually get started?

I wondered if there is there a plan to turn this into a IDF component and in it have a esp32_explorer.h header file with something like:

void start_explorer(int port, const char* user, const char* password);

Tasks not sorted correctly

The FreeRTOS tasks are sorted ... but they are case sensitive. This means we get
A-Z and then a-z ... thats no good ... we need a case insensitive comparison.

make flash fatfs not working

make flash && make flashfatfs are not working

make flashfatfs
/c/Work/Actisense/Esp32_Explorer/components/fatfs_image/Makefile.projbuild:13: warning: undefined variable 'CONFIG_FATFS_SIZE'
/c/Work/Actisense/Esp32_Explorer/components/fatfs_image/Makefile.projbuild:14: warning: undefined variable 'CONFIG_FATFS_BASE_ADDR'
Making fatfs image ...
python /c/Work/LibDev/esp32/esp-idf/components/esptool_py/esptool/esptool.py --chip esp32 --port COM174 --baud 115200 --before default_reset --after hard_reset write_flash -z --flash_mode dio --flash_freq 40m --flash_size detect
PARSE ERROR: Argument: -s (--size)
Couldn't read argument value from string '/c/Work/Actisense/Esp32_Explorer/build/fatfs_image.img'

Brief USAGE:
/c/Work/Actisense/Esp32_Explorer/components/mkfatfs/../mkfatfs/src/mkfat
fs {-c <pack_dir>|-u <dest_dir>|-l
|-i} [-d <0-5>] [-s ] [--]
[--version] [-h] <image_file>

For complete USAGE and HELP type:
/c/Work/Actisense/Esp32_Explorer/components/mkfatfs/../mkfatfs/src/mkfatfs --help

make: *** [/c/Work/Actisense/Esp32_Explorer/components/fatfs_image/Makefile.projbuild:13: flashfatfs] Error 1

What ESP32 Explorer project expect?

Does it expect these sub folders?

C:\Work\Actisense\Esp32_Explorer\components\fatfs_image
C:\Work\Actisense\Esp32_Explorer\components\mkfatfs

Build difficulties

Hi Guys,
This looks great! I can't wait to try it out (I understand it's a work-in-progress)
I'm having the following build errors, any ideas?
Thanks,
Steve.

In file included from C:/msys32/home/Steve/esp/proj-cpp/explore/components/cpp_utils/BLEUtils.cpp:22:0:
C:/msys32/home/Steve/esp/proj-cpp/explore/components/cpp_utils/BLEUtils.cpp: In static member function 'static void BLEUtils::dumpGattClientEvent(esp_gattc_cb_event_t, esp_gatt_if_t, esp_ble_gattc_cb_param_t*)':
C:/msys32/home/Steve/esp/proj-cpp/explore/components/cpp_utils/BLEUtils.cpp:1290:52: error: 'struct esp_ble_gattc_cb_param_t::gattc_connect_evt_param' has no member named 'status'
BLEUtils::gattStatusToString(evtParam->connect.status).c_str(),
^
C:/msys32/home/Steve/esp/esp-idf/components/log/include/esp_log.h:242:168: note: in definition of macro 'ESP_LOGD'
#define ESP_LOGD( tag, format, ... ) if (LOG_LOCAL_LEVEL >= ESP_LOG_DEBUG) { esp_log_write(ESP_LOG_DEBUG, tag, LOG_FORMAT(D, format), esp_log_timestamp(), tag, ##VA_ARGS); }
^
C:/msys32/home/Steve/esp/proj-cpp/explore/components/cpp_utils/BLEUtils.cpp:1306:55: error: 'struct esp_ble_gattc_cb_param_t::gattc_disconnect_evt_param' has no member named 'status'
BLEUtils::gattStatusToString(evtParam->disconnect.status).c_str(),
^
C:/msys32/home/Steve/esp/esp-idf/components/log/include/esp_log.h:242:168: note: in definition of macro 'ESP_LOGD'
#define ESP_LOGD( tag, format, ... ) if (LOG_LOCAL_LEVEL >= ESP_LOG_DEBUG) { esp_log_write(ESP_LOG_DEBUG, tag, LOG_FORMAT(D, format), esp_log_timestamp(), tag, ##VA_ARGS); }
^
C:/msys32/home/Steve/esp/proj-cpp/explore/components/cpp_utils/BLEUtils.cpp: In static member function 'static void BLEUtils::dumpGattServerEvent(esp_gatts_cb_event_t, esp_gatt_if_t, esp_ble_gatts_cb_param_t*)':
C:/msys32/home/Steve/esp/proj-cpp/explore/components/cpp_utils/BLEUtils.cpp:1592:23: error: 'struct esp_ble_gatts_cb_param_t::gatts_connect_evt_param' has no member named 'is_connected'
evtParam->connect.is_connected);
^
C:/msys32/home/Steve/esp/esp-idf/components/log/include/esp_log.h:242:168: note: in definition of macro 'ESP_LOGD'
#define ESP_LOGD( tag, format, ... ) if (LOG_LOCAL_LEVEL >= ESP_LOG_DEBUG) { esp_log_write(ESP_LOG_DEBUG, tag, LOG_FORMAT(D, format), esp_log_timestamp(), tag, ##VA_ARGS); }
^
C:/msys32/home/Steve/esp/proj-cpp/explore/components/cpp_utils/BLEUtils.cpp:1609:23: error: 'struct esp_ble_gatts_cb_param_t::gatts_connect_evt_param' has no member named 'is_connected'
evtParam->connect.is_connected);
^
C:/msys32/home/Steve/esp/esp-idf/components/log/include/esp_log.h:242:168: note: in definition of macro 'ESP_LOGD'
#define ESP_LOGD( tag, format, ... ) if (LOG_LOCAL_LEVEL >= ESP_LOG_DEBUG) { esp_log_write(ESP_LOG_DEBUG, tag, LOG_FORMAT(D, format), esp_log_timestamp(), tag, ##VA_ARGS); }
^
make[1]: *** [/home/Steve/esp/esp-idf/make/component_wrapper.mk:243: BLEUtils.o] Error 1
make: *** [C:/msys32/home/Steve/esp/esp-idf/make/project.mk:435: component-cpp_utils-build] Error 2

I need ESP32 explorer feature for my web application

Hi,

I need to return in JSON reply via HTTP rest api list of folders and sub folders with files names to be shown on UI. User can select files or folders and I can download it on PC. Is JSON module which generate files explorer is moduler, so I can use it as module integrate into my codebase.
Otherwise I can write myself JSON generated from file system. any JSON format recommendation for folders and sub folders.

Thanks,
Naeem

fatfs

These make are not working for

make: *** No rule to make target 'makefatfs'. Stop

make makefatfs
make flashfatfs

Also

Flash mount is failing.

D (2699) wl_flash: initSections - result=00000000
D (2699) wl_flash: recoverPos - this->state.pos=0x00000000, result=00000000
D (2709) vfs_fat_spiflash: using pdrv=0
W (2709) vfs_fat_spiflash: f_mount failed (13)
I (2719) vfs_fat_spiflash: Formatting FATFS partition, allocation unit size=52
4288
E (2719) vfs_fat_spiflash: f_mkfs failed (14)
ESP_ERROR_CHECK failed: esp_err_t 0xffffffff at 0x4011454a
file: "C:/Work/LibDev/esp32/esp-idf/components/cpp_utils/FATFS_VFS.cpp" line 4
9
func: void FATFS_VFS::mount()
expression: esp_vfs_fat_spiflash_mount(m_mountPath.c_str(), m_partitionName.c_
str(), &mountConfig, &m_wl_handle)

Backtrace: 0x4008e85f:0x3ffd6c10 0x4008ecd5:0x3ffd6c30 0x4011454a:0x3ffd6c50 0
x400d4fbb:0x3ffd6c80 0x400d45b9:0x3ffd6ce0 0x4010de80:0x3ffd6d00

BootWIFI and OTA features

Im posting this in one issue for some reason. At the moment we have already implemented bootWiFi and it works but as everything i am doing requires some touch to work good. But the reason i am posting bootWIFI and OTA in one issue is because i think we can provide in bootWiFi setup web page additional fields to let us input IP, port and path to file that will be used to OTA.

I would like to hear comments on it before i will send PR

Build failure, missing JSON.h?

Using latest esp-idf master and ESP32_Explorer as of today.

$ make
CXX build/main/BLEExplorer.o
In file included from /Users/cmorgan/projects/ESP32_Explorer/main/./BLEExplorer.cpp:8:0:
/Users/cmorgan/projects/ESP32_Explorer/main/./BLEExplorer.h:11:18: fatal error: JSON.h: No such file or directory
 #include "JSON.h"
                  ^
compilation terminated.
make[1]: *** [BLEExplorer.o] Error 1

Out of RAM

Hi,
there is too low heap to start webserver. Before web server starts heap is about 40kB, giving him stack about 20kB system crashes even before all path handlers are added, i have had to comment out 3 of them to run program.

Errors when I try to flash ESP32_Explorer.

CXX build/main/main.o
C:/msys32/home/Megauser/esp/ESP32_Explorer/main/main.cpp:1:20: fatal error: Memory.h: No such file or directory
compilation terminated.
make[1]: *** [/home/Megauser/esp/esp-idf/make/component_wrapper.mk:286: main.o] Error 1
make: *** [C:/msys32/home/Megauser/esp/esp-idf/make/project.mk:505: component-main-build] Error 2
Could someone explain reasons, pl.

Time since boot

How it is possible that time which is in milliseconds is displayed in microseconds? Last 3 digits should be 0 and only 0.

Free heap memory: 123932
Time: 485.793623
ESP IDF Version: v3.0-dev-1248-g7e8c2a9
Cores: 2
Revision: 0

Linker fails in cpp_utils files while building

Hi Neil!
I've tried to compile your Explorer app with Eclipse and ESP-IDF. Eclipse is configured based on your youtube tutorial. I've been experimenting with ESP32 for just a couple of days. I've copied Explorer source files under a subdirectory in my test application, and invoked from my main app.
My test project stucture:

- [project]
-     components - dir
-         esp32-ds18b20 - dir
-         esp32-owb - dir
-     main - dir
-         cpp_utils - dir
-         explorer - dir
-         adafruit - dir
-             Adafruit_GFX files
-             Adafruit_SSD1306 files
-         main_helloworld.cpp and some files

The compile seems to be successful, but linking is fail. I've copied first cpp_util directory to components dir with the same result. Without Explorer, the app is compiled and linked successfully with the ds18b20 library in the components directory, and adafruit libraries in the main/adafruit subdirectory.

Build log is here:
https://pastebin.com/raw/7Q80biQJ

Thanks.

Semaphore issue?

Ive seen many errors already, but this one drives me crazy. Making changes in settings does not help, only thing that helps is to reflash few times (until that error disappear) with the same settings and the same app code.

D (8922) Socket:  - accept: Received new client!: sockFd: 4097
D (8922) Socket: << accept: sockFd: 4097
/home/esp32/esp/esp-idf/components/freertos/./tasks.c:4052 (xTaskPriorityDisinherit)- assert failed!
abort() was called at PC 0x4008a0aa on core 0
0x4008a0aa: xTaskPriorityDisinherit at /home/esp32/esp/esp-idf/components/freertos/./tasks.c:4052 (discriminator 1)

Backtrace: 0x4008bddc:0x3ffdf120 0x4008bea7:0x3ffdf140 0x4008a0aa:0x3ffdf160 0x4008825e:0x3ffdf180 0x4008859c:0x3ffdf1a0 0x4015c8c1:0x3ffdf1e0 0x40164371:0x3ffdf220
0x4008bddc: invoke_abort at /home/esp32/esp/esp-idf/components/esp32/./panic.c:572

0x4008bea7: abort at /home/esp32/esp/esp-idf/components/esp32/./panic.c:572

0x4008a0aa: xTaskPriorityDisinherit at /home/esp32/esp/esp-idf/components/freertos/./tasks.c:4052 (discriminator 1)

0x4008825e: prvCopyDataToQueue at /home/esp32/esp/esp-idf/components/freertos/./queue.c:2037

0x4008859c: xQueueGenericSend at /home/esp32/esp/esp-idf/components/freertos/./queue.c:2037

0x4015c8c1: FreeRTOS::Semaphore::give() at /home/esp32/ESP32_Explorer/components/cpp_utils/./FreeRTOS.cpp:134

0x40164371: SockServ::acceptTask(void*) at /home/esp32/ESP32_Explorer/components/cpp_utils/./SockServ.cpp:134

Panic crash

ESP-IDF wear-levelling example that use mounting FAT works...also replacing the explorer mount code with the wear-levelling mount code works!

Env:
Platform: Win10
ESP-IDF: v3.1-dev-386-g7d13e3fa-dirty
SDK: Eclipse (Mingw32 make = same results)
esptool.py v2.2.1
Chip is ESP32D0WDQ6 (Dev Board)
xtensa-esp32-elf-5.2.0

Steps:

  1. clone
  2. update wifi details
  3. update STA static IP
  4. make all
  5. make flash
  6. make monitor

got the following crash dump:

D (1393) wl_flash: init - config ID=1, stored ID=1, access_count=0, block_size=4096, max_count=16, pos=0, move_count=0
D (1403) wl_flash: init starts: crc1=1280242342, crc2 = 1280242342, this->state.crc=1280242342, state_copy->crc=1280242342
D (1413) wl_flash: init: crc1=1280242342, crc2 = 1280242342, result=0
D (1423) wl_flash: recoverPos - this->state.pos=0x00000000, result=00000000
D (1433) vfs_fat_spiflash: using pdrv=0
W (1433) vfs_fat_spiflash: f_mount failed (13)
I (1443) vfs_fat_spiflash: Formatting FATFS partition, allocation unit size=524288
E (1443) vfs_fat_spiflash: f_mkfs failed (14)
ESP_ERROR_CHECK failed: esp_err_t 0xffffffff at 0x40114416
0x40114416: FATFS_VFS::mount() at D:/Google-Drive/Technology/ESP32/Dev/Eclipse/workspace/ESP32_Explorer/components/cpp_utils/FATFS_VFS.
cpp:49 (discriminator 2)

file: "D:/Google-Drive/Technology/ESP32/Dev/Eclipse/workspace/ESP32_Explorer/components/cpp_utils/FATFS_VFS.cpp" line 49
func: void FATFS_VFS::mount()
expression: esp_vfs_fat_spiflash_mount(m_mountPath.c_str(), m_parttitionName.c_str(), &mountConfig, &m_wl_handle)

Backtrace: 0x4008e983:0x3ffd6c30 0x4008edf9:0x3ffd6c50 0x40114416:0x3ffd6c70 0x400d5159:0x3ffd6ca0 0x400d4759:0x3ffd6d00 0x4010dab8:0x3
ffd6d20
0x4008e983: invoke_abort at C:/Esp32/Esp-IDF/components/esp32/panic.c:648

0x4008edf9: _esp_error_check_failed at C:/Esp32/Esp-IDF/components/esp32/panic.c:660

0x40114416: FATFS_VFS::mount() at D:/Google-Drive/Technology/ESP32/Dev/Eclipse/workspace/ESP32_Explorer/components/cpp_utils/FATFS_VFS.
cpp:49 (discriminator 2)

0x400d5159: ESP32_Explorer::start() at D:/Google-Drive/Technology/ESP32/Dev/Eclipse/workspace/ESP32_Explorer/main/ESP32Explorer.cpp:527
(discriminator 8)

0x400d4759: ESP32_ExplorerTask::run(void*) at D:/Google-Drive/Technology/ESP32/Dev/Eclipse/workspace/ESP32_Explorer/main/main.cpp:36

0x4010dab8: Task::runTask(void*) at D:/Google-Drive/Technology/ESP32/Dev/Eclipse/workspace/ESP32_Explorer/components/cpp_utils/Task.cpp
:59

Add support for BLE

Add support for BLE logging and testing.

If memory serves me, I believe another contributor is working/interested in this area as well. As such, until I can chat with that colleague I'll refrain from working in that area myself.

later ...

Mr @chegwara is working on this one.

With latest esp-idf update

D (30079) ESP32Explorer: handle_REST_GPIO
abort() was called at PC 0x40138643 on core 0
0x40138643: __cxxabiv1::__terminate(void (*)()) at /builds/idf/crosstool-NG/.build/src/gcc-5.2.0/libstdc++-v3/libsupc++/eh_terminate.cc:112


Backtrace: 0x400890a0:0x3fff6870 0x4008916b:0x3fff6890 0x40138643:0x3fff68b0 0x4013868a:0x3fff68d0 0x4011f91f:0x3fff68f0 0x40128147:0x3fff6910 0x4010668f:0x3fff6930 0x4014bddf:0x3fff6960 0x40109223:0x3fff6980 0x4017ac92:0x3fff6a20 0x4014afb9:0x3fff6a40 0x4014b911:0x3fff6e60 0x4014d228:0x3fff83b0
0x400890a0: invoke_abort at /home/esp32/esp/esp-idf/components/esp32/./panic.c:553

0x4008916b: abort at /home/esp32/esp/esp-idf/components/esp32/./panic.c:553

0x40138643: __cxxabiv1::__terminate(void (*)()) at /builds/idf/crosstool-NG/.build/src/gcc-5.2.0/libstdc++-v3/libsupc++/eh_terminate.cc:112

0x4013868a: std::terminate() at /builds/idf/crosstool-NG/.build/src/gcc-5.2.0/libstdc++-v3/libsupc++/eh_terminate.cc:112

0x4011f91f: __cxa_throw at /builds/idf/crosstool-NG/.build/src/gcc-5.2.0/libstdc++-v3/libsupc++/eh_throw.cc:87

0x40128147: std::__throw_logic_error(char const*) at /builds/idf/crosstool-NG/.build/src/gcc-5.2.0/libstdc++-v3/src/c++11/functexcept.cc:135 (discriminator 1)

0x4010668f: void std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_construct<char const*>(char const*, char const*, std::forward_iterator_tag) at /home/esp32/esp/xtensa-esp32-elf/xtensa-esp32-elf/include/c++/5.2.0/bits/basic_string.tcc:216

0x4014bddf: void std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_construct_aux<char const*>(char const*, char const*, std::__false_type) at /home/esp32/ESP32_Explorer/components/cpp_utils/./JSON.cpp:196
 (inlined by) void std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_construct<char const*>(char const*, char const*) at /home/esp32/esp/xtensa-esp32-elf/xtensa-esp32-elf/include/c++/5.2.0/bits/basic_string.h:214
 (inlined by) std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, std::allocator<char> const&) at /home/esp32/esp/xtensa-esp32-elf/xtensa-esp32-elf/include/c++/5.2.0/bits/basic_string.h:457
 (inlined by) JsonObject::toString[abi:cxx11]() at /home/esp32/ESP32_Explorer/components/cpp_utils/./JSON.cpp:344

0x40109223: handle_REST_GPIO(HttpRequest*, HttpResponse*) at /home/esp32/ESP32_Explorer/main/./ESP32Explorer.cpp:88

0x4017ac92: PathHandler::invokePathHandler(HttpRequest*, HttpResponse*) at /home/esp32/ESP32_Explorer/components/cpp_utils/./HttpServer.cpp:372

0x4014afb9: HttpServerTask::processRequest(HttpRequest&) at /home/esp32/ESP32_Explorer/components/cpp_utils/./HttpServer.cpp:325

0x4014b911: HttpServerTask::run(void*) at /home/esp32/ESP32_Explorer/components/cpp_utils/./HttpServer.cpp:325

0x4014d228: Task::runTask(void*) at /home/esp32/ESP32_Explorer/components/cpp_utils/./Task.cpp:58

FATFS_VFS.h not found?

I am unable to compile the ESP32_Explorer source using Eclipse (and also using make directly from mingw32) as recommended in the ESP-IDF "Getting Started" guide.

The error I receive is related to FATFS_VFS.h not being found.
ESP32_Explorer/main/main.cpp:4:23: fatal error: FATFS_VFS.h: No such file or directory
compilation terminated.

I have found the FATFS_VFS.h and .cpp in the "esp32_snippets" repository here and here, and copied them to the project folder at the following location, but neither of these could help me get rid of the error.

FATFS_VFS.h and FATFS_VFS.cpp copied to (one location at a time):

  • ESP32_Explorer/
  • ESP32_Explorer/main
  • ESP32_Explorer/src
  • ESP32_Explorer/main/src

Where are these files supposed to be located for the compiler to 'see' them?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.