Hot answers tagged

16

Xtensa have just released an official ESP32/Espressif LLVM backend and clang front end. See their announcement here: https://esp32.com/viewtopic.php?p=38466 Repos: https://github.com/espressif/llvm-xtensa & https://github.com/espressif/clang-xtensa As rust is based on LLVM, this new ESP32 LLVM backend should help make Rust support for the ESP32 more ...


13

Rust uses the LLVM toolchain, which is a a set of programs used to compile LLVM's intermediate representation (IR) into platform-specific code. The process works a little like this: Rust Code -> Rust Compiler -> LLVM IR -> Back-end -> Platform-specific code (Front-end) Currently, there is no backend for the Xtensa architecture used ...


9

The current tools of the ESP32 have no explicit option for that. However, the existing tools can be easily combined to do this. The partition table is located at 0x8000 (32768) on older, and on 0x9000 (36384) on newer systems. Anyways, its location can be found (and be set) at the CONFIG_PARTITION_TABLE_OFFSET setting in the menuconfig. Its length is always ...


8

Like Aurora0001 said, you can't run Rust on an ESP32 currently (or the older ESP8266). There's a very similar chip, the RTL8710, that is recommended for use in situations where you'd use an ESP32, but want to use Rust. Here is a website where someone walks through their setup.


6

This is possible using an ESP32 that has Arduino headers, like the ones found on the ESPDuino-32. This project uses the Duino and an ST shield (with theTSYS02D sensor) to get you up and running. I've made a building monitor project using the ESPDuino-32 and an ST shield using this set up before and it worked out great (screen shot below). If the board ...


5

Not the complete answer but a step forward: https://docs.aws.amazon.com/freertos/latest/userguide/getting_started_espressif.html AWS has released their ESP32 support with AWS FreeRTOS. To send directly to S3 without going through IoT Core, you will need your endpoint (obviously) and certificates on the device side to authenticate on the Cloud side. With ...


5

From what you're asking, I believe you should use MQTT protocol, it seems to fit your architecture. You'll need to have a mqtt server/broker that will receive the data from the device and then send them to the app. Simply put in MQTT protocol you'd have "topics" that the client (your app) will subscribe to. The device will push it's data to the topic and ...


4

/dev/ttyUSB0 is how Linux refers to USB Serial ports. MacOS uses /dev/tty.usbserial with the FTDI driver


3

If you want to test internet connectivity the best way is to request http://google.com. If your device is connected to internet, you would get 301 as response code.


3

You have the bootstrap problem. The firmware can't know the WiFi credentials until it has been given them. There are many ways to solve this. WiFi Protected Setup using the pushbutton method is one way. I haven't checked if this is available for the ESP32. I know from making printer firmware that a few years ago customers demanded WPS. Now, I no longer ...


3

I would recommend NodeRed .Simple drag and drop visual programming by IBM based on Nodejs .NodeRed can be installed easily using npm (package manager in Nodejs sililar to pip for python).Please read offficial documentation for installation and usage.You can install mqtt broker like mosquitto and add mqtt capability to NodeRED. Thinger.io is also quiet ...


3

You could try writing an MJPEG stream, which is pretty universally supported in web browsers both on desktops and mobile devices. The writer code isn't that complex and could definitely be run on ESP32. Obviously the compression isn't that great for a video stream, but i'm assuming you have a fairly low resolution and frame rate that you are looking for ...


3

I'll bet ESP-Now frames can be sniffed by tshark using something like tshark -n -l -i wlp0s29u1u2 -I -y IEEE802_11_RADIO (add a -t type such as ek or json), then add a filter like -Y 'wlan.fc.type_subtype eq 4' to find the packets you want. You can use any wireless-aware packet injection tool to send WiFi packets. (i.e. Scapy)


3

You can start watching this unboxing video for the basic flow of installing and mounting the device. Tutorial uses Espressif Github project for Arduino which has the same instructions in written format for quite many platforms. With these you can first install esp32 support for Arduino IDE and with the IDE there are several ready tutorials that call you ...


3

I followed the same tutorial and I also had this problem. It seems that esp_bt.h only appears in the latest release of esp-idf and some changes are not yet available in PlatformIO. The sample espidf-ble-adv (available from the PlatformIO home) compiles correctly. Now, how to use the latest espidf in PlatformIO is left as an exercise for the reader ;-) I'm ...


3

For the ESP32-EVB, most, if not all pins, are used by all of the stuff they pack on the board. If you look at the schematic for that particular board, you'll see that UART0 (GPIO pins 1&3) are tied to the USB port. GPIO 6,7,8,11 are tied to the SD card, that's why they are unavailable. Schematic directory here: Github for ESP32-EVB


3

Based on this forum post, it is possible to include precompiled scripts (in a modules directory at build time) in the flash image. This requires the config FROZEN_MPY_DIR. It is also possible to cross-compile using mpy-cross, but it looks like this requires some micropython source code changes (#define MICROPY_PERSISTENT_CODE_LOAD (1)), and also what looks ...


3

The short answer is yes, you can likely use the shields. But, the following will apply: This is obvious, but you won't be able to just plug it in to an ESP32 like a shield. You'll have to use another way of making the connections. Jumper wires should be fine for prototyping. If you plan on using the Arduino software libraries instead of coding from ...


3

I have some doubt I fully understand the question (as the answer seems too simple) but I'll try nonetheless. Two options that came to mind right away: Get a plain Grove I2C Hub with 4 ports or more, split a Grove cable on one end and attach individual jumper wires (similar to what I do here), plug those into the dev board. Get a Grove Base Shield for e.g. ...


3

The only two network types you can count on on a phone are WiFi and BLE (or cellular, but you told us there’s no Internet). LoRa is indeed never available. WiFi requires the user to connect to the network (network name and usually password, though this can be provided as a QR Code), and phones don’t always like WiFi networks without Internet access (they may ...


2

I2C is a "bus", as in bi-directional. You signal the device at its address that you want some data from it, and it sends it back. Now I'm no electrical engineer graduate, but the 74F244 chips looks like a one-way buffer. You have "input" and "output" lines, and from the datasheet (link (pdf)), it does not look bi-directional to me. What exactly are you ...


2

This depends on the WiFi adapter you are using; some grant this level of access, others do not, or at least not in any documented or discovered way. Given that the ESP-series modules are comparable in price to USB WiFi adapters and without the concern of a vendor changing the internals without changing the part number, if you don't need other networking or ...


2

One way is you have to create the web service which upload the data on S3. and call service through http protocol. 1. https://www.w3schools.com/xml/xml_services.asp use this to create the webservice or use angular 2 for creating the rest service call https://sniederm.wordpress.com/2017/04/12/tutorial-ng2-rest-service/


2

Yes you can use esp32 microcontroller with matlab as long as you can use esp8266 with matlab code using same method. Both esp8266 and esp32 are from the same family of microcontrollers and can be coded with esplorer(Lua) or Arduino IDE(c) etc. Yes, they can be coded in several ways. ESP32 is infact successor of ESP8266 with faster wifi and added bluetooth ...


2

Another option is ThingSpeak: https://thingspeak.com/ This platform allows you to send data using http request and visualise in graphic yous sensors. Besides, you can create 'alerts' to send a message when some sensor reach an exact value.


2

You've not said if you want to do client authentication via certificate as well as the usual server validation. Assuming just server validation then you need to include the Certificate Authority chain to be able to validate the certificate presented by the HTTP server. In this case it would the Lets Encrypt chain which is available from here: https://...


2

Just for reference, it worked fine almost out of the box. I only needed to connect rx, tx, vcc, gnd. Then I setup the config file as outlined and plugged it in. Every time I run the ESP32, all of the output is saved to a new file. Couldn't have been simpler.


2

You can use ubidots platform for data visualization. It provides very good graphical representation of your data.


Only top voted, non community-wiki answers of a minimum length are eligible