Status: Experimental
Based on:
- https://github.com/bellard/quickjs
- https://github.com/binzume/esp32quickjs
- https://github.com/poruruba/QuickJS_ESP32
-DCONFIG_VERSION=$(cat VERSION)*.c
*.h
tests/
examples/
doc/
qjs.c
qjsc.c
quickjs-libc.c
quickjs-libc.h
unicode_gen.c
run-test262.c
main.ino
#include <Arduino.h>
#include "esp/quickjs.h"
static const char *jscode = R"CODE(
console.log('Hello, JavaScript!');
)CODE";
QuickJS qjs;
void setup() {
Serial.begin(115200);
qjs.begin();
qjs.exec(jscode);
}- console.log(string)
- setTimeout(callback, ms) : int
- setInterval(callback, ms) : int
- clearTimeout(id)
esp32 module
- esp32.millis() : int
- esp32.digitalRead(pin) : int
- esp32.digitalWrite(pin, value) // value=0: LOW, 1: HIGH
- esp32.pinMode(pin, mode) // mode=1: INPUT, 2: OUTPUT
- esp32.setLoop(func) // func is called every arduino loop().
- esp32.deepSleep(us) // not returns
If WiFi.h is included:
- esp32.isWifiConnected() : bool
- esp32.fetch(url, {method:string, body:string}): Promise<{body:string, status:int}>