Skip to content

Commit

Permalink
first approche
Browse files Browse the repository at this point in the history
make is working, linking has issues
  • Loading branch information
MaBecker committed May 15, 2023
1 parent a989280 commit f8afbe5
Show file tree
Hide file tree
Showing 6 changed files with 137 additions and 74 deletions.
20 changes: 13 additions & 7 deletions libs/network/esp32/jswrap_esp32_network.c
Expand Up @@ -720,7 +720,8 @@ void jswrap_wifi_disconnect(JsVar *jsCallback) {
// Call the ESP-IDF to disconnect us from the access point.
jsDebug(DBG_INFO, "Disconnecting.....");
// turn off auto-connect
esp_wifi_set_auto_connect(false);
// fixme
//esp_wifi_set_auto_connect(false);
s_retry_num = 0; // flag so we don't attempt to reconnect
esp_wifi_disconnect();
} // End of jswrap_wifi_disconnect
Expand Down Expand Up @@ -854,8 +855,9 @@ jsDebug(DBG_INFO, "jswrap_wifi_connect: entry");
memcpy(staConfig.sta.ssid, ssid, sizeof(staConfig.sta.ssid));
memcpy(staConfig.sta.password, password, sizeof(staConfig.sta.password));
staConfig.sta.bssid_set = false;
esp_wifi_set_auto_connect(true);
jsDebug(DBG_INFO, "jswrap_wifi_connect: esp_wifi_set_autoconnect done");
// fixme
//esp_wifi_set_auto_connect(true);
//jsDebug(DBG_INFO, "jswrap_wifi_connect: esp_wifi_set_autoconnect done");

err = esp_wifi_set_config(ESP_IF_WIFI_STA, &staConfig);
if (err != ESP_OK) {
Expand Down Expand Up @@ -1107,8 +1109,11 @@ JsVar *jswrap_wifi_getStatus(JsVar *jsCallback) {
esp_wifi_get_ps(&psType);
char *psTypeStr;
switch(psType) {
case WIFI_PS_MODEM:
psTypeStr = "modem";
case WIFI_PS_MIN_MODEM:
psTypeStr = "min_modem";
break;
case WIFI_PS_MAX_MODEM:
psTypeStr = "max_modem";
break;
case WIFI_PS_NONE:
psTypeStr = "none";
Expand Down Expand Up @@ -1204,8 +1209,9 @@ void jswrap_wifi_setConfig(JsVar *jsSettings) {
if (jsvIsString(jsPowerSave)) {
if (jsvIsStringEqual(jsPowerSave, "none")) {
esp_wifi_set_ps(WIFI_PS_NONE);
} else if (jsvIsStringEqual(jsPowerSave, "ps-poll")) {
esp_wifi_set_ps(WIFI_PS_MODEM);
// fixme
//} else if (jsvIsStringEqual(jsPowerSave, "ps-poll")) {
// esp_wifi_set_ps(WIFI_PS_MODEM);
} else if (jsvIsStringEqual(jsPowerSave, "min")) {
esp_wifi_set_ps(WIFI_PS_MIN_MODEM);
} else if (jsvIsStringEqual(jsPowerSave, "max")) {
Expand Down
4 changes: 2 additions & 2 deletions make/crypto/ESP32.make
@@ -1,8 +1,8 @@
DEFINES += -DUSE_CRYPTO

INCLUDE += -I$(ROOT)/libs/crypto
INCLUDE += -I$(ESP_IDF_PATH)/components/mbedtls
INCLUDE += -I$(ESP_IDF_PATH)/components/mbedtls/mbedtls/include
INCLUDE += -I$(ESP_IDF_PATH)/components/mbedtls/esp_crt_bundle/include
INCLUDE += -I$(ESP_IDF_PATH)/components/mbedtls/mbedtls/include/mbedtls

DEFINES += -DMBEDTLS_CIPHER_MODE_CTR \
-DMBEDTLS_CIPHER_MODE_CBC \
Expand Down
174 changes: 114 additions & 60 deletions make/family/ESP32.make
Expand Up @@ -21,39 +21,34 @@ endif
# The prefix for the ESP32 compiler
CCPREFIX=xtensa-esp32-elf-
SOURCES += targets/esp32/main.c
LDFLAGS += -L$(ESP_IDF_PATH)/ld \
-L$(ESP_IDF_PATH)/components/bt/lib \
-L$(ESP_IDF_PATH)/components/esp32/lib \
-L$(ESP_APP_TEMPLATE_PATH)/build/app_update \
-L$(ESP_APP_TEMPLATE_PATH)/build/bootloader \
-L$(ESP_APP_TEMPLATE_PATH)/build/bt \
-L$(ESP_APP_TEMPLATE_PATH)/build/driver \
-L$(ESP_APP_TEMPLATE_PATH)/build/esp32 \
-L$(ESP_APP_TEMPLATE_PATH)/build/esptool_py \
-L$(ESP_APP_TEMPLATE_PATH)/build/ethernet \
-L$(ESP_APP_TEMPLATE_PATH)/build/expat \
-L$(ESP_APP_TEMPLATE_PATH)/build/freertos \
-L$(ESP_APP_TEMPLATE_PATH)/build/heap \
-L$(ESP_APP_TEMPLATE_PATH)/build/json \
-L$(ESP_APP_TEMPLATE_PATH)/build/log \
-L$(ESP_APP_TEMPLATE_PATH)/build/lwip \
-L$(ESP_APP_TEMPLATE_PATH)/build/mbedtls \
-L$(ESP_APP_TEMPLATE_PATH)/build/mdns \
-L$(ESP_APP_TEMPLATE_PATH)/build/newlib \
-L$(ESP_APP_TEMPLATE_PATH)/build/nghttp \
-L$(ESP_APP_TEMPLATE_PATH)/build/nvs_flash \
-L$(ESP_APP_TEMPLATE_PATH)/build/partition_table \
-L$(ESP_APP_TEMPLATE_PATH)/build/pthread \
-L$(ESP_APP_TEMPLATE_PATH)/build/smartconfig_ack \
-L$(ESP_APP_TEMPLATE_PATH)/build/soc \
-L$(ESP_APP_TEMPLATE_PATH)/build/spi_flash \
-L$(ESP_APP_TEMPLATE_PATH)/build/tcpip_adapter \
-L$(ESP_APP_TEMPLATE_PATH)/build/vfs \
-L$(ESP_APP_TEMPLATE_PATH)/build/wpa_supplicant \
-L$(ESP_IDF_PATH)/components/esp32/ld \
-lgcc

ESPTOOL?=
INCLUDE+=\
-I$(ESP_IDF_PATH)/components/esp_common/include \
-I$(ESP_IDF_PATH)/components/esp_hw_support/include \
-I$(ESP_IDF_PATH)/components/esp_system/include \
-I$(ESP_IDF_PATH)/components/freertos/include/esp_additions/freertos \
-I$(ESP_IDF_PATH)/components/freertos/include/esp_additions \
-I$(ESP_IDF_PATH)/components/hal/include \
-I$(ESP_IDF_PATH)/components/xtensa/include \
-I$(ESP_IDF_PATH)/components/freertos/port/xtensa/include \
-I$(ESP_IDF_PATH)/components/esp_rom/include \
-I$(ESP_IDF_PATH)/components/esp_timer/include \
-I$(ESP_IDF_PATH)/components/bt/host/bluedroid/api/include/api \
-I$(ESP_IDF_PATH)/components/esp_wifi/include \
-I$(ESP_IDF_PATH)/components/esp_netif/include \
-I$(ESP_IDF_PATH)/components/esp_ipc/include \
-I$(ESP_IDF_PATH)/components/esp_eth/include \
-I$(ESP_IDF_PATH)/components/lwip/include \
\
-I$(ESP_IDF_PATH)/components/xtensa/esp32/include \
-I$(ESP_IDF_PATH)/components/hal/esp32/include \
-I$(ESP_IDF_PATH)/components/driver/esp32/include \
-I$(ESP_IDF_PATH)/components/bt/include/esp32/include \
-I$(ESP_IDF_PATH)/components/soc/esp32/include \
-I$(ESP_IDF_PATH)/components/soc/esp32/include/soc \
\
-I$(ESP_IDF_PATH)/components/esp_hw_support/include/soc \
-I$(ESP_APP_TEMPLATE_PATH)/build/include \
-I$(ESP_IDF_PATH)/components \
-I$(ESP_IDF_PATH)/components/newlib/include \
Expand All @@ -74,69 +69,128 @@ INCLUDE+=\
-I$(ESP_IDF_PATH)/components/spi_flash/include \
-I$(ESP_IDF_PATH)/components/tcpip_adapter/include \
-I$(ESP_IDF_PATH)/components/soc/include \
-I$(ESP_IDF_PATH)/components/soc/esp32/include \
-I$(ESP_IDF_PATH)/components/soc/esp32/include/soc \
-I$(ESP_IDF_PATH)/components/vfs/include \
-I$(ESP_IDF_PATH)/components/esp_ringbuf/include \
-I$(ESP_IDF_PATH)/components/lwip/include/apps/sntp \
-I$(ESP_IDF_PATH)/components/esp_event/include \
-I$(ESP_IDF_PATH)/components/lwip/include/apps \
-I$(ESP_IDF_PATH)/components/app_update/include \
-I$(ESP_IDF_PATH)/components/bootloader_support/include
-I$(ESP_IDF_PATH)/components/bootloader_support/include \
./app/build/app_update

LDFLAGS += \
-L$(ESP_APP_TEMPLATE_PATH)/build/bt \
-L$(ESP_APP_TEMPLATE_PATH)/build/driver \
-L$(ESP_APP_TEMPLATE_PATH)/build/esp32 \
-L$(ESP_APP_TEMPLATE_PATH)/build/esptool_py \
-L$(ESP_APP_TEMPLATE_PATH)/build/ethernet \
-L$(ESP_APP_TEMPLATE_PATH)/build/expat \
-L$(ESP_APP_TEMPLATE_PATH)/build/freertos \
-L$(ESP_APP_TEMPLATE_PATH)/build/heap \
-L$(ESP_APP_TEMPLATE_PATH)/build/json \
-L$(ESP_APP_TEMPLATE_PATH)/build/log \
-L$(ESP_APP_TEMPLATE_PATH)/build/lwip \
-L$(ESP_APP_TEMPLATE_PATH)/build/mbedtls \
-L$(ESP_APP_TEMPLATE_PATH)/build/mdns \
-L$(ESP_APP_TEMPLATE_PATH)/build/newlib \
-L$(ESP_APP_TEMPLATE_PATH)/build/nghttp \
-L$(ESP_APP_TEMPLATE_PATH)/build/nvs_flash \
-L$(ESP_APP_TEMPLATE_PATH)/build/partition_table \
-L$(ESP_APP_TEMPLATE_PATH)/build/pthread \
-L$(ESP_APP_TEMPLATE_PATH)/build/smartconfig_ack \
-L$(ESP_APP_TEMPLATE_PATH)/build/soc \
-L$(ESP_APP_TEMPLATE_PATH)/build/spi_flash \
-L$(ESP_APP_TEMPLATE_PATH)/build/tcpip_adapter \
-L$(ESP_APP_TEMPLATE_PATH)/build/vfs \
-L$(ESP_APP_TEMPLATE_PATH)/build/wpa_supplicant \
-L$(ESP_APP_TEMPLATE_PATH)/build/app_update \
-L$(ESP_IDF_PATH)/components/esp32/ld

LDFLAGS+=-nostdlib -u call_user_start_cpu0 -u ld_include_panic_highint_hdl -Wl,--gc-sections -Wl,-static -Wl,-EL
LIBS+=-T esp32_out.ld \
-T esp32.project.ld \
-T$(ESP_IDF_PATH)/components/esp32/ld/esp32.rom.ld \
-T$(ESP_IDF_PATH)/components/esp32/ld/esp32.peripherals.ld \
$(ESP_IDF_PATH)/components/esp32/lib/librtc.a \
$(ESP_IDF_PATH)/components/esp32/lib/libnet80211.a \
$(ESP_IDF_PATH)/components/newlib/lib/libc.a \
$(ESP_IDF_PATH)/components/newlib/lib/libm.a \
$(ESP_IDF_PATH)/components/esp32/lib/libwpa2.a \
$(ESP_IDF_PATH)/components/esp32/lib/libwps.a \
$(ESP_IDF_PATH)/components/newlib/lib/libc-psram-workaround.a \
$(ESP_IDF_PATH)/components/newlib/lib/libm-psram-workaround.a \
$(ESP_IDF_PATH)/components/esp32/lib/libcore.a \
LIBS+= \
-T $(ESP_APP_TEMPLATE_PATH)/build/esp_system/ld/memory.ld \
-T $(ESP_APP_TEMPLATE_PATH)/build/esp_system/ld/sections.ld \
-T $(ESP_IDF_PATH)/components/esp_rom/esp32/ld/esp32.rom.ld \
-T $(ESP_IDF_PATH)/components/esp_rom/esp32/ld/esp32.rom.newlib-funcs.ld \
-T $(ESP_IDF_PATH)/components/soc/esp32/ld/esp32.peripherals.ld \
-T $(ESP_IDF_PATH)/components/esp_rom/esp32/ld/esp32.rom.api.ld \
-T $(ESP_IDF_PATH)/components/esp_rom/esp32/ld/esp32.rom.newlib-data.ld \
-T $(ESP_IDF_PATH)/components/esp_rom/esp32/ld/esp32.rom.newlib-nano.ld \
-T $(ESP_IDF_PATH)/components/esp_rom/esp32/ld/esp32.rom.newlib-time.ld \
-T $(ESP_IDF_PATH)/components/esp_rom/esp32/ld/esp32.rom.newlib-locale.ld


#-T $(ESP_IDF_PATH)/components/esp_rom/esp32/ld/esp32.rom.libgcc.ld \
#-T $(ESP_IDF_PATH)/components/esp_rom/esp32/ld/esp32.rom.syscalls.ld \
#-T $(ESP_IDF_PATH)/components/esp_rom/esp32/ld/esp32.rom.spiflash.ld \
#-T $(ESP_IDF_PATH)/components/esp_rom/esp32/ld/esp32.rom.redefined.ld \
#-T $(ESP_IDF_PATH)/components/esp_rom/esp32/ld/esp32.rom.eco3.ld \
LIBS+= \
$(ESP_IDF_PATH)/components/esp_phy/lib/esp32/librtc.a \
$(ESP_IDF_PATH)/components/esp_wifi/lib/esp32/libnet80211.a \
$(ESP_IDF_PATH)/components/esp_wifi/lib/esp32/libcore.a \
$(ESP_IDF_PATH)/components/esp_phy/lib/esp32/libphy.a \
$(ESP_IDF_PATH)/components/esp_phy/lib/esp32/librtc.a \
$(ESP_IDF_PATH)/components/esp_wifi/lib/esp32/libpp.a \
$(ESP_IDF_PATH)/components/esp_wifi/lib/esp32/libcoexist.a \
$(ESP_IDF_PATH)/components/bt/controller/lib_esp32/esp32/libbtdm_app.a \
$(ESP_IDF_PATH)/components/xtensa/esp32/libxt_hal.a \
\
$(ESP_APP_TEMPLATE_PATH)/build/esp_rom/libesp_rom.a \
$(ESP_APP_TEMPLATE_PATH)/build/lwip/liblwip.a \
$(ESP_APP_TEMPLATE_PATH)/build/hal/libhal.a \
$(ESP_APP_TEMPLATE_PATH)/build/esp_ringbuf/libesp_ringbuf.a \
$(ESP_APP_TEMPLATE_PATH)/build/bootloader_support/libbootloader_support.a \
$(ESP_APP_TEMPLATE_PATH)/build/bootloader/efuse/libefuse.a \
$(ESP_APP_TEMPLATE_PATH)/build/esp_system/libesp_system.a \
$(ESP_APP_TEMPLATE_PATH)/build/esp_pm/libesp_pm.a \
$(ESP_APP_TEMPLATE_PATH)/build/mdns/libmdns.a \
$(ESP_APP_TEMPLATE_PATH)/build/esp_hw_support/libesp_hw_support.a \
$(ESP_APP_TEMPLATE_PATH)/build/esp_netif/libesp_netif.a \
$(ESP_APP_TEMPLATE_PATH)/build/esp_wifi/libesp_wifi.a \
$(ESP_APP_TEMPLATE_PATH)/build/esp_timer/libesp_timer.a \
$(ESP_APP_TEMPLATE_PATH)/build/esp_event/libesp_event.a \
$(ESP_APP_TEMPLATE_PATH)/build/console/libconsole.a \
$(ESP_APP_TEMPLATE_PATH)/build/esp_common/libesp_common.a \
$(ESP_APP_TEMPLATE_PATH)/build/mbedtls/libmbedtls.a \
$(ESP_APP_TEMPLATE_PATH)/build/esp_phy/libesp_phy.a \
$(ESP_APP_TEMPLATE_PATH)/build/bt/libbt.a \
$(ESP_APP_TEMPLATE_PATH)/build/esp_wifi/libesp_wifi.a \
$(ESP_APP_TEMPLATE_PATH)/build/esp_hw_support/libesp_hw_support.a \
$(ESP_APP_TEMPLATE_PATH)/build/esp_ipc/libesp_ipc.a \
$(ESP_APP_TEMPLATE_PATH)/build/xtensa/libxtensa.a \
$(ESP_APP_TEMPLATE_PATH)/build/freertos/libfreertos.a \
$(ESP_APP_TEMPLATE_PATH)/build/asio/libasio.a \
$(ESP_APP_TEMPLATE_PATH)//build/cxx/libcxx.a \
$(ESP_APP_TEMPLATE_PATH)//build/cbor/libcbor.a \
\
-lbt \
-lbtdm_app \
-ldriver \
-lesp32 \
$(ESP_IDF_PATH)/components/esp32/libhal.a \
-lcore \
-lnet80211 \
-lphy \
-lwpa_supplicant \
-lrtc \
-lpp \
-lwpa \
-lexpat \
-lfreertos \
-ljson \
-llog \
-llwip \
-lmbedtls \
-lmdns \
-lmesh \
-lnghttp \
-lnvs_flash \
-lheap \
-lpthread \
-lsmartconfig_ack \
-lsoc \
-lspi_flash \
-ltcpip_adapter \
-lvfs \
-lnewlib \
-lcoexist \
-lethernet \
-lapp_update \
-lstdc++ \
-lgcc




#needed for using ifdef in wrapper JSON
DEFINES += -DESP32

Expand Down
6 changes: 4 additions & 2 deletions scripts/provision.sh
Expand Up @@ -75,12 +75,14 @@ if [ "$PROVISION_ESP32" = "1" ]; then
# SDK
if [ ! -d "app" ]; then
echo installing app folder
curl -Ls https://github.com/espruino/EspruinoBuildTools/raw/master/esp32/deploy/app.tgz | tar xfz - --no-same-owner
curl -Ls https://github.com/espruino/EspruinoBuildTools/raw/esp32_v4.4.4/esp32/deploy/app.tgz | tar xfz - --no-same-owner
#curl -Ls https://github.com/espruino/EspruinoBuildTools/raw/master/esp32/deploy/app.tgz | tar xfz - --no-same-owner
#curl -Ls https://github.com/espruino/EspruinoBuildTools/raw/ESP32-V3.1/esp32/deploy/app.tgz | tar xfz - --no-same-owner
fi
if [ ! -d "esp-idf" ]; then
echo installing esp-idf folder
curl -Ls https://github.com/espruino/EspruinoBuildTools/raw/master/esp32/deploy/esp-idf.tgz | tar xfz - --no-same-owner
curl -Ls https://github.com/espruino/EspruinoBuildTools/raw/esp32_v4.4.4/esp32/deploy/esp-idf.tgz | tar xfz - --no-same-owner
#curl -Ls https://github.com/espruino/EspruinoBuildTools/raw/master/esp32/deploy/esp-idf.tgz | tar xfz - --no-same-owner
#curl -Ls https://github.com/espruino/EspruinoBuildTools/raw/ESP32-V3.1/esp32/deploy/esp-idf.tgz | tar xfz - --no-same-owner
fi
if ! type xtensa-esp32-elf-gcc 2> /dev/null > /dev/null; then
Expand Down
1 change: 1 addition & 0 deletions targets/esp32/jshardware.c
Expand Up @@ -24,6 +24,7 @@
* functions should follow the expected conventions.
*/
#include <stdio.h>
#include <sys/time.h>

#include "jshardware.h"
#include "jshardwareUart.h"
Expand Down
6 changes: 3 additions & 3 deletions targets/esp32/jshardwareAnalog.c
Expand Up @@ -112,8 +112,8 @@ int readADC(Pin pin){
channel = pinToAdcChannel(pin);
adc1_config_channel_atten(channel,adc_channel[pinToAdcChannelIdx(pin)]);
if(channel >= 0) {
value = adc1_get_voltage(channel);
return value;
value = adc1_get_raw(channel);
return value;
}
else return -1;
}
Expand All @@ -125,7 +125,7 @@ void writeDAC(Pin pin,uint8_t value){
return;
}
channel = pinToDacChannel(pin);
if(channel >= 0) dac_out_voltage(channel, value);
if(channel >= 0) dac_output_voltage(channel, value);
}


Expand Down

0 comments on commit f8afbe5

Please sign in to comment.