Archive

Posts Tagged ‘esp32’

Single Core ESP32-S0WD WiSoC Datasheet and Price

August 18th, 2017 3 comments

I’m subscribed to Espressif Systems’ notification system so that I received an email each time there’s a documentation update on their website, and this morning they posted ESP32-S0WD Datasheet, the single core version of ESP32 processor, which we reported in our post about ESP32 5×5 packages.

Beside the small 5x5mm 48-pin package, and single Xtensa 32-bit LX6 microprocessor, it looks to be the same as the frequently used ESP32-D0WDQ6 with a 6x6mm 48-pin package. The CPU & Memory part of the datasheet reads:

  • ESP32-S0WD: Xtensa single–core 32-bit LX6 microprocessor, up to 200 DMIPS
  • 448 KB ROM
  • 520 KB SRAM
  • 16 KB SRAM in RTC
  • QSPI flash/SRAM, up to 4 x 16 MB
  • Power supply: 2.3V to 3.6V

While ESP32 datasheet shows a dual core up to 600 MIPS, so maybe the max frequency is also limited. I could not find any ESP32-S0WD module or board just yet, but GridConnect is selling ESP32-S0WD chip for $2.35, ESP32-D0DW(Q6) for $2.75, and ESPD2DW (dual core with 2MB embedded flash) for $3.25.

Click to Enlarge

For comparison, the same site sells ESP8266 for $1.75, so it should mean we should soon get even cheaper ESP32 boards with WiFi and Bluetooth 4.2 LE, but just with less processing power. Note that price should be even lower if you buy in quantity from resellers in China. ESP32-S0WD would be especially suited as an upgrade for products that use both ESP8266 and an external Bluetooth chip, as it would offer a smaller and cheaper solution.

Husarion CORE2 STM32 Board for Robotics Projects Works with ESP32, Raspberry Pi 3, or ASUS Tinkerboard

June 30th, 2017 No comments

Husarion CORE2 is a board designed to make robotics projects simpler and faster to complete with pre-configured software and online management. Projects can start using LEGOs, before moving to 3D printed or laser-cut version of the mechanical parts without having to spend too much time on the electronics and software part of the project.

CORE2 and CORE2-ROS Boards – Click to Enlarge

Two versions of the board are available: CORE2 combining STM32 MCU with ESP32 WiFI & Bluetooth module, and CORE2-ROS with STM32 instead coupled to a Raspberry Pi 3 or ASUS Tinkerboard running ROS (Robot Operating System). Both solutions share most of the same specifications:

  • MCU -STMicro STM32F4 ARM CORTEX-M4 MCU @ 168 MHz with 192 kB RAM, 1 MB Flash
  • External Storage – 1x micro SD slot
  • USB – 1x USB 2.0 host port with 1A charging capability; 1x micro USB port for debugging and programming via FTDI chip
  • Expansion Headers
    • hRPi expansion header for
      • CORE2-ROS –  a single board computer Raspberry Pi 3 or ASUS Tinker Board
      • CORE2 – an ESP32 based Wi-Fi module
    • 2x motor headers (hMot) with
      • 4x DC motor outputs with built-in H-bridges
      • 4x quadrature encoder inputs 1 A cont./ 2 A max. current per output (2 A/4 A current when paralleled)
    • 6x servo ports with selectable supply voltage (5 / 6 / 7.4 / 8.6 V) 3 A cont./4.5 A max. current for all servos together
    • 6x 6-pin hSens sensor ports with GPIOs, ADC/ext. interrupt, I2C/UART, 5 V out
    • 1x hExt extension port with 12x GPIO, 7x ADC, SPI, I2C, UART, 2 x external interrupts
    • 1x CAN interface with onboard transceiver
  • Debugging – DBG SWD (Serial Wire Debug) STM32F4 debug port; micro USB port for serial console
  • Misc – 5x LEDs, 2x buttons
  • Power Supply – 6 to 16V DC with built-in overcurrent, overvoltage, and reverse polarity protection
  • Dimensions – 94 x 85 mm

On the software side, Husarion provide a set of open source libraries for robots as part of their hFramework, using DMA channels and interrupts internally to handle communication interfaces. The company has also prepared tutorials dealing with ROS introduction, creating nodes, simple kinematics for mobile robot, visual object recognition, running ROS on multiple machines, and SLAM navigation. CORE2 board can also be programming using the Arduino IDE, and finally Husarion Cloud allows you to securely create a web user interface to control the robot, and even program the robot firmware from a web browser.

That means you can program your robot using either the Web IDE, or offline with an SDK plus Visual Studio Code and the Husarion extension. The development work flow is summarized above.

CORE2 boards can be used for a variety of projects such as robotic arms, telepresense robots, 3D printers, education robots, drones, exoskeletons, and so on. If you want to learn about robots, but don’t have LEGO Mindstorms and don’t feel comfortable making your own mechanical parts yet, ROSbot might be a good way to start with CORE2-ROS board, LiDAR, a camera, four DC motors with encoders, an orientation sensor (MPU9250), four distance sensors, a Li-Ion battery (3 x 18650 batteries) and a charger, as well as aluminum mechanics. It also happens to be the platform they use for their tutorials.

ROSbot

You’ll find all those items, and some extra add-on boards, on the CrowdSupply campaign, starting at $89 for CORE2 board with ESP32 module, $99 for CORE2-ROS board without SBC, and going up to $1,290 for the complete ROSbot with ASUS Tinker Board. Shipping is free to the US, and $8 to $20 depending on the selected rewards, with delivery scheduled for September 2017, except for ROSbot that’s planned for mid-October 2017.

GR-LYCHEE Development Board to Combine Renesas RZ/A1LU Processor, ESP32 Module, and a VGA Camera

June 23rd, 2017 9 comments

Japanese semiconductor vendors have mostly stayed away from the maker market, at least outside Japan, as most people would be hard-pressed to come up with a hobbyist development board powered by processor or micro-controller from Toshiba, Sony, Renesas or other Japanese companies, despite the three aforementioned names being in the top 20 semiconductors companies. I can only remember having written about Fujitsu F-Cue 96Boards, as well as Renesas GR-PEACH mbed board since I started this blog 7 years ago. Renesas seems to be the only company to have a real community behind with their “Gadget Renesas” pink-colored development boards, and the latest and seventh board is GR-LYCHEE powered by Renesas RZ/A1LU ARM Cortex-A9  processor, and equipped with a WiFi & Bluetooth module, and a camera.

GR-LYCHEE Prototype – Click to Enlarge

Renesas GR-LYCHEE board preliminary specifications:

  • Micro-processor – Renesas RZ / A1LU (R7S721030VCFP 176-pin QFP) ARM Cortex-A9 Processor  @ 384 MHz with 3MB on-chip SRAM
  • Storage – 8 MB flash+ micro SD card
  • Connectivity – 802.11 b/g/n WiFi, Bluetooth 4.1 LE via ESP32 wireless module
  • Audio – 3.5mm audio jack (heaphone + mic)
  • USB – 1x USB host port
  • Camera – 1x camera interface for VGA (640×480) camera
  • Expansion – Arduino UNO headers
  • Debugging & Programming – 1x micro USB port, JTAG interface
  • Misc – 32.768 Hz RTC clock, 2x user buttons, reset button, 4x user LEDs
  • Power Supply – 5V via 1x micro USB port; operating voltage: 3.3 V / 1.18 V

The board is mbed compatible so at launch you’ll be able to use the mbed compiler with the board. The board is still in beta version, documentation is still being worked on, and launch is scheduled for the end of November 2017. While most Gadget Renesas’ users are likely in Japan, Renesas also organized events in India, ASEAN, and Oceania with GR-PEACH board earlier this year as you’ll find out by visiting the community’s English page.

Documentation and more details about GR-LYCHEE board should eventually surface in the product page (in Japanese only for now).

Olimex Launches 22 Euros ESP32-GATEWAY Board with Ethernet, WiFi and Bluetooth LE

June 21st, 2017 13 comments

Olimex has just launched ESP32-GATEWAY board, as cost-down version of their ESP32-EVB board, still with Ethernet, WiFi, and Bleutooth LE, but without any relays, CAN bus, nor IR control, less I/Os, and a smaller footprint.

Olimex ESP32-GATEWAY specifications:

  • Wireless Module – ESP32-WROOM32 module with 802.11 b/g/n WiFi and Bluetooth LE
  • Wired Connectivity – 10/100M Ethernet with RJ45 jack (via LAN8710A)
  • External Storage – micro SD slot
  • Expansion – 20-pin GPIO connector
  • USB – 1x micro USB port for debugging (CH340T) and power
  • Misc – Reset and user buttons
  • Power Supply – 5V via micro USB port
  • Dimensions – 62 x 50 mm

Another change is the lack of a LiPo charger to run the board from batteries. Just like most Olimex boards, ESP32-GATEWAY is open source hardware with KiCAD design files available on Github. The software directory is still empty, but Ethernet demo code using ESP32-IDF has been pushed for for ESP32-EVB board, and is likely to run with minor or even no modifications on ESP32-GATEWAY board.

You’ll save 4 Euros over ESP32-EVB board, as Olimex is selling ESP32-GATEWAY board for 22 Euros.

Olimex ESP32-EVB Board with Ethernet, CAN Bus, and Relays up for Sale for 26 Euros

May 30th, 2017 3 comments

One of the new feature of Espressif ESP32 SoC over ESP8266 is the inclusion of an Ethernet MAC interface, but so far few boards come with an RJ45 jacks. ESP32 Monster board is an option, also including an OLED Display and CAN Bus, and sold on Tindie for $35, but Olimex has now stocked their ESP32-EVB board with Ethernet, CAN Bus, and two relays, and you can purchase it for 26 Euros per unit, and less in larger quantities.

Olimex ESP32-EVB Rev. B specifications:

  • Wireless Module – ESP32-WROOM32 module with 802.11 b/g/n WiFi and Bluetooth LE
  • Wired Connectivity – 10/100M Ethernet with RJ45 jack (via LAN8710A)
  • External Storage – micro SD slot
  • Relays – 2x 10A/250VAC relays with LED status
  • Expansion
    • 40-pin GPIO female header (2.54mm pitch)
    • UEXT connector for sensors and modules
    • CAN Bus
  • USB – 1x micro USB port for debugging (CH340T) and power
  • Misc – Reset and user buttons, IR receiver and transmitter with up to 5 meter range
  • Power Supply
    • 5V via power jack or micro USB port
    • LiPo charger and step up converter allowing ESP32-EVB to run from LiPo battery
  • Dimensions – 75 x 75 mm

The specifications are a little different compared to the Rev. A prototype shown in February, as they added IR transmitter and receiver, a CAN bus, and a micro USB port for debugging, which increases the size of the PCB, and also explains why the price went up from an expected 22 Euros to 26 Euros for the final board.

The board is open source hardware, and you’ll find hardware design files on Github. The software directory is empty for now, but the Tindie page about ESP32 Monster board indicates that “Ether and CAN programming requires ESP-IDF environment and still not by Arduino IDE”, so if you want to use the latter you may have wait a little longer. Olimex is also planning for a color 2.8″ LCD 320×240 pixel display board connected through UEXT header.

Arduino Cinque Combines SiFive RISC-V Freedom E310 MCU with ESP32 WiFi & Bluetooth SoC

May 22nd, 2017 5 comments

SiFive introduced the first Arduino compatible board based on RISC-V processor late last year with HiFive1 development board powered by Freedom E310 MCU, but  the company has been working with Arduino directly on Arduino Cinque board equipped with SiFive Freedom E310 processor, ESP32 for WiFi and Bluetooth, and an STM32 ARM MCU to handle programming.

Click to Enlarge

Few other technical details have been provided for the new board, but since it looks so similar to HiFive1, I’ve come with up with preliminary/tentative Arduino Cinque specifications:

  • MCU – SiFive Freedom E310 (FE310) 32-bit RV32IMAC processor @ up to 320+ MHz (1.61 DMIPS/MHz)
  • WiSoC – Espressif ESP32 for WiFi and Bluetooth 4.2 LE
  • Storage – 32-Mbit SPI flash
  • I/Os
    • 19x Digital I/O Pins
    • 19x external interrupt pins
    • 1x external wakeup pin
    • 9x PWM pins
    • 1/3 SPI Controllers/HW CS Pins
    • I/O Voltages –  3.3V or 5V supported
  • USB – 1x micro USB port for power, programming and debugging
  • Misc – 6-pin ICSP header, 2x buttons
  • Power Supply – 5 V via USB or 7 to 12V via DC Jack; Operating Voltage: 3.3 V and 1.8 V
  • Dimensions – 68 mm x 51 mm

Image Source: Olof Johansson

The board will obviously be programmable with the Arduino IDE, something that’s already possible on HiFive5 possibly with limitations since the platform is still new. Freedom E310 SoC RTL source code is also available via the Freedom SDK.

There’s no availability nor price information, but considering HiFive1 board is now sold for $59, and Arduino Cinque may cost about the same or a little more once it is launched since it comes with an extra ESP32 chip, but a smaller SPI flash. Hopefully, it will take less time than the one year gap experienced between the announcement and the release of Arduino Due.

SHA2017 Conference Badge To Feature ESP32 SoC, e-Paper Display

May 9th, 2017 5 comments

In most conference, you’ll wear a badge showing your name, job description and company, but with the price of electronics going down, it may be time for a conference badge upgrade. SHA2017 is a non-profit outdoor hacker camp taking place in The Netherlands in 2017 on August 4 – 8, and the organizers are planning to use a special badge comprised of Espressif ESP32 processor, and an e-Paper Display.

Click to Enlarge

SHA2017 Badge specifications:

  • Wireless Module – Espressif ESP32 based ESP-WROOM-32 module with WiFi and Bluetooth
  • Display – 2.9″ e-paper display (296×128)
  • Storage – micro SD slot
  • Expansion – 12-pin expansion header with GPIOs, I2C, 3.3V, GND
  • Debugging – micro USB port + USB->TTL chip for programming
  • Misc – Direction keys, select, start, A and B buttons for input; 6x RGB, LEDs; pager motor for notifications
  • Battery – Battery sized to last at least a day

Click to Enlarge

Beside your name and company details, the badge could also be used for weather and timetable information. EAGLE files and firmware can be found on Github with more details also available in the Wiki. The price of the badge is still expected to be around 20 Euros, and they are looking for sponsors. If you’d like that badge and attend the conference, you’ll need a 250 Euros ticket for the 5-day event.

Thanks to Zoobab for the tip.

Getting Started with ESP32-Bit Module and ESP32-T Development Board using Arduino core for ESP32

May 7th, 2017 16 comments

Espressif ESP32 may have launched last year, but prices have only dropped to attractive levels very recently, and Espressif has recently released released ESP-IDF 2.0 SDK with various improvements, so the platform has become  much more interesting than just a few weeks ago. ICStation also sent me ESP32-T development board with ESP32-bit module, so I’ll first see what I got, before trying out Arduino for ESP32 on the board.

ESP32-T development board with ESP-bit Module – Unboxing & Soldering

One thing I missed when I asked for the board is that it was not soldered, and it comes in kit with ESP32-bit module in one package, and ESP32-T breakout board with headers in another package.

Click to Enlarge

The 21.5x15mm module is based on ESP32-DOWNQ6 processor with 32 Mbit (4MB) of flash, a chip antenna, and a u.FL connector.

Click to Enlarge

The module is apparently made by eBox, and also used in Widora board with all information (allegedly) available on eboxmaker.com website, but more on that later.

Click to Enlarge

ESP32-T breakout board comes with a micro USB port for power and programming/debugging via Silabs CP2102 USB to TTL brige, a power LED, a user LED (LED1), a reset button, and a user button named “KEY”. It has two rows of 19-pin headers, and a footprint for ESP32-Bit module.

Click to Enlarge

The back of the board has a footprint for ESP-32S and ESP-WROOM-32 module, which gives the board some more flexibility, as you could try it with various ESP32 modules.

Time to solder the kit. I placed ESP32-Bit on ESP32-T, and kept it in place with some black tape to solder three to four pins on each side first.


I then removed the tape, completed soldering the module, and added the headers.

Click to Enlarge

The final step is to cut the excess pin on the headers, and now we can test the board which I could insert in a breadboard after pushing with some tools…

I connected a micro USB to USB between the board and my computer, and quickly I could see the PWR LED with a solid green, and LED1 blinking.

I could also see a new ESSID on my network: ESP32_eBox, and I could just input the… wait, what is the password? No idea. So I went to the board’s website, and everything is in Chinese with very limited hardware and software information on the ESP32 page. So it was basically useless, and I did not find the password, and other people neither. I asked ICStation who provided the sample, but they were unable to provide an answer before the review.

I could see the serial ouput via /dev/ttyUSB0 (115200 8N1) in Ubuntu 16.04:

Arduino core for ESP32 on ESP32-T (and Other ESP32 Boards)

But nothing really useful. Since the website mentions Arduino, I just decided to go with Arduino core for ESP32 chip released by Espressif, which explains how to use Arduino or PlatformIO IDEs. I opted to go with the Arduino IDE. The first thing is to download and install the latest Arduino IDE.

I’m running Ubuntu on my computer, so I downloaded and installed the Linux 64-bit version:

The next commands install the Arduino ESP32 support and dependencies:

We can now launch the Arduino IDE:

There are several ESP32 to choose from, but nothing about ESP32-T, ESP32-Bit, or Widora. However, I’ve noticed the board’s pinout looks exactly the same as ESP32Dev board shown below.

Click to Enlarge

So I selected ESP32 Dev Module, and set /dev/ttyUSB0 upload speed to 115200.

Click to Enlarge

The next step is to find an easy example to check if everything works, and there are bunch of those in File->Examples, Examples for ESP32 Dev Module section.

Click to Enlarge

I selected GetCHIPID sample, as it just retrieve the Chip ID from the board, and as we’ll see later the Chip ID is actually the MAC Address. I could upload the code, and it indeed returned the Chip ID:

The next sample I tried – WiFi->SimpleWiFiServer – will allow you to test both WiFi connectivity and GPIOs. I modified the sketch to use pin 2 instead of pin 5  in order to control LED1 on the board connected to GPIO2. You’ll also need to set the SSID and password to connect to your WiFi network. Once you’ve compiled and uploaded the sketch to the board, you’ll need to find the board’s IP address. You can do so in your router DHCP list with the board named “espressif” by default, and the MAC address will be the same as the CHIP ID, 24-0A-C4-01-A4-24 in my case. Now you can open the web interface in a web browser to turn on and off LED1 green LED on the board.

You could also use directly http://IP_ADDRESS/H or http://IP_ADDRESS/L to pull the pin high or low. It worked beautifully, but so far, we have not done anything that does not work on the much cheaper ESP8266 boards, and I can see one Bluetooth LE code sample for ESP32 called simpleBLEDevice in Arduino IDE, so let’s try it. It will just broadcast advertise the name of the device, and change it on button press, which could be used to broadcast message to a BLE gateway.

That’s the output from the serial terminal.

The initial name is ESP32 SimpleBLE, and as I press the KEY button on the board, the name will change to “BLE32 at: xxx”. I could detect a Bluetooth ESP32 device with the various names with my Android smartphone.

Since, it’s just advertising the name, there’s no pairing. But that’s a start. To have more insights into Bluetooth, you may also want to check out WiFiBlueToothSwitch.ino sample which shows show to use various mode such as Bluetooth only, Bluetooth + WiFi, WiFi STA, etc… For a more practical use of Bluetooth on ESP32, Experiments with Bluetooth and IBM Watson article may be worth a read. But a faster dual core processor and Bluetooth support are not the only extra features of ESP32 compared to ESP8266, as you also get more GPIOs, hardware PWM, better ADC, a touch interface, a CAN bus, Ethernet, etc…, so there’s more to explore, although I’m not sure all features are fully supported in ESP-IDF SDK and Arduino.

Final Words about ESP32-T and ESP32-Bit

After some initial difficulties, and confusions, I managed to make ESP32-T development kit work, but it’s difficult to recommend it. First, documentation is really poor right now, and while I found out you can use the exact same instructions than for ESP32Dev board, it does not reflect well on the company. Second, the board is sold as a kit that needs to be soldered, which may be a hassle for many, and possibly a fun learning experience for a few. Finally, ESP32-T + ESP32-Bit sells for $15 to $20 on various website, which compares to competitors fully assembled development boards – such as Wemos LoLin32 – now going for less than $10 shipped, and which basically the same features set (ESP32 + 4MB flash) minus the user LED and button, and a u.FL connector for an external antenna.

I’d still like to thank ICStation for giving me the opportunity to test the board. They are now selling it for $14.99 shipped with 15% extra discount possible with Jeanics  coupon (for single order). You’ll also find ESP32-T board on Aliexpress, but pay close attention if you are going to buy there, as it may be sold without ESP32-Bit module. Usually, all prices well below $10 are without the module.