Showing posts with label ESP32 compile. Show all posts
Showing posts with label ESP32 compile. Show all posts

Wednesday, October 12, 2016

ESP32 is on preorder


Good new today !!!

Today the ESP32 is on preoder on banggood. Delivery will start by the end of October.

If you are in the first 50 orders $7.69, up to 200 $8.69 and $9.69 after that.






As a reminder the specs from the official espressif site are:

Key Features

  • 240 MHz dual core Tensilica LX6 microcontroller with 600 DMIPS
  • Integrated 520 KB SRAM
  • Integrated 802.11BGN HT40 Wi-Fi transceiver, baseband, stack and LWIP
  • Integrated dual mode Bluetooth (classic and BLE)
  • 16 MByte flash
  • 2.2V to 3.6V operating voltage
  • -40°C to +125°C operating temperature
  • On-board PCB antenna / IPEX connector for external antenna


Sensors

  • Ultra low noise analog amplifier
  • Hall sensor
  • 10x capacitive touch interface
  • 32 kHz crystal oscillator


32x GPIO

  • 3 x UARTs, including hardware flow control
  • 3 x SPI
  • 2 x I2S
  • 12 x ADC input channels
  • 2 x DAC
  • 2 x I2C
  • PWM/timer input/output availabe on every GPIO pin
  • OpenOCD debug interface with 32 kB TRAX buffer
  • SDIO master/slave 50 MHz
  • Supports external SPI flash up to 16 MB
  • SD-card interface support


Security Related


  • WEP, WPA/WPA2 PSK/Enterprise
  • Hardware accelerated encryption: AES / SHA2 / Elliptical Curve Cryptography / RSA-4096


Performance

  • Supports sniffer, station, softAP and Wi-Fi direct modes
  • Max data rate of 150 Mbps@11n HT40, 72 Mbps@11n HT20, 54 Mbps@11g, and 11 Mbps@11b
  • Maximum transmit power of 19.5 dBm@11b, 16.5 dBm@11g, 15.5 dBm@11n
  • Minimum receiver sensitivity of -98 dBm
  • 135 Mbps UDP sustained throughput
  • 2.5 μA deep sleep current


Saturday, September 3, 2016

MQTT Broker on ESP32 #2

MQTT Broker on ESP32

I've managed to put an MQTT broker on ESP32 (aka ESP31B).

The code is under development and ESP32 at this time is not yet released, but when it will be I'll also have the code complete. There are some problems but let's hope they will be resolved by the Espressif System. 

I will try to see if I can do the same with ESP8266 which is already on the market. 



Don't forget that the same broker is running on its little brother ESP8266. Check it here.

Wednesday, December 2, 2015

Setup environment for ESP32

In order to develop something with the ESP32 you need to setup the environment for it.

I am hopping that Santa will bring me an ESP31 ( the prerelease model for ESP32).

Usually I create a VM for this. After I've installed the lumbuntu 15.04 in a Virtual Box and the Guest Addition now is time for compiler stuff.

The following commands are from espressif github with few modification for using the lumbutu i386 VM.




Step 1. Install the required toolchain packages.

sudo apt-get install git autoconf build-essential gperf bison flex texinfo libtool libncurses5-dev wget gawk libc6-dev python-serial libexpat-dev libtool-bin

Step 2. Create a directory (e.g./opt/Espressif) to store the toolchain.

sudo mkdir /opt/Espressif

Step 3. Make the current user the owner.

sudo chown $USER /opt/Espressif/

Step 4. Download the latest toolchain installation file to the directory created in Step 2.

cd /opt/Espressif/git clone -b esp108-1.21.0 git://github.com/jcmvbkbc/crosstool-NG.git

Step 5. Install toolchain.

cd crosstool-NG./bootstrap && ./configure --prefix=`pwd` && make && make install
./ct-ng xtensa-esp108-elf
./ct-ng build

The command ./ct-ng build takes some time(30-40minutes), so grab a coffee or a cup with tea.
Step 6. Set the PATH variable to point to the newly compiled toolchain.

export PATH=/opt/Espressif/crosstool-NG/builds/xtensa-esp108-elf/bin:$PATH

Note: You need to do Step 6 once you open a new shell, or you can put it inside your .bashrc file

Project template Compile

Step 1. Create a directory (e.g.~/Workspace) to store a new project.

mkdir ~/Workspace

Step 2. Clone ESP32 RTOS SDK.

cd ~/Workspacegit clone https://github.com/espressif/ESP32_RTOS_SDK.git

Step 3. Copy ESP32_RTOS_SDK/examples/project_template to Workspace directory created in Step 1.

cp -R ~/Workspace/ESP32_RTOS_SDK/examples/project_template ~/Workspace/

Step 4. Create a directory (e.g.~/Workspace/ESP32_BIN) to store the bin files compiled.

mkdir ~/Workspace/ESP32_BIN

Step 5. Set SDK_PATH as the path of SDK files and BIN_PATH as the path of .bin files compiled.

export SDK_PATH=~/Workspace/ESP32_RTOS_SDK
export BIN_PATH=~/Workspace/ESP32_BIN

Notice: Make sure you set the correct paths, or it will occur a compile error.
Step 6. Start to compile files

make cleanmake

Now in ESP32_BIN directory you have the bin files.