Arduino STAR - OTTO

The Star Otto is the first Arduino board featuring the STM32F469 processor with WiFi.

The Arduino Star series of boards feature ST Microelectronics processors, and the first of the series is the STAR OTTO.  The Otto combines the power of the STM32F469 processor and an Espressif ESP8266 for WiFi, with several on-board peripherals, such as a micro-SD slot, a connector LCD-Audio-Camera, an USB Host, an headphone and speaker output, and an on-board stereo microphone.
Overview
The new Arduino STAR (STMicroelectronics-ARduino) OTTO is the first Arduino board developed in cooperation with the STMicroelectronics.

This board mounts the powerful STM32F469 microcontroller that allows to use a DSI display interface, guaranteeing high graphics performance. The board can be connected also to WiFi network, via ESP8266 module integrated on the board, permitting to the users to create a connected system with amazing visual and audio experience.

The STM32F469 microcontroller is an ARM Cortex® M4 with 2-Mbyte Flash memory, 384-Kbyte SRAM, 180 MHz of Clock speed and an operating voltage of 3.3 V.

The STAR OTTO board keeps the same pinout of Arduino Mega and DUE and it is compatible with the most of shields designed for these boards.
In particular the board has 70 digital I/0 pins of which 14(D0...D13) provide PWM output, 14 ADC(A0...A13), 2 DAC(DAC0, DAC1), 4UARTs(D0-D1, D14-D15, D16-D17, D18-D19) and 1xI2C.

Moreover the Arduino STAR OTTO has several peripherals on-board, such as a micro-SD slot, an ICSP header, a connector for camera, audio and display, an USB Host, a power jack, an headphone and a speaker output, an on-board stereo microphone.

WiFi Microcontroller

Processor

ESP8266

Architecture

Tensilica Xtensa LX106

Operating Voltage

3.3 V

Flash Memory

4 MB

RAM

8 MB instruction, 12 MB data

Clock Speed

80 MHz

WiFi

802.11 b/g/n 2.4 GHz

Wake up time

< 2ms

Arduino Microcontroller

Microcontroller

STM32F469BI

Architecture

ARM Cortex-M4

Operating Voltage

3.3 V

Flash memory

2 MB

SRAM

384KB + 16MB ext SDRAM + 128KB EEPROM

Clock Speed

180 MHz

Analog I/O Pins

14xADC + 2xDAC

DC Current per I/O Pins

25 mA

Other features

LCD-Audio-Camera connector, headphone, Stereo Mic

General

Input Voltage

5-15 V

Digital I/O Pins

70

PWM Output

14

Power Consumption

140mA

PCB Size

101.6 x 53.3 mm

Weight

36 g

Product Code

A000124

Power
The Arduino OTTO can be powered via the USB connection or with an external power supply. The power source is selected automatically.

External (non-USB) power can come either from an AC-to-DC adapter (wall-wart) or battery. The adapter can be connected by plugging a 2.1mm center-positive plug into the board's power jack. Instead the battery can be inserted in the Gnd and Vin pin headers.

The board can operate on an external supply of 5 to 17 volts, it is recommended to use a lower voltage.
If using more than 17V, the voltage regulator may overheat and damage the board.

The power pins are as follows:

  • VIN. The input voltage to the Arduino board when it's using an external power source (as opposed to 5 volts from the USB connection or other regulated power source). You can supply voltage through this pin.
  • 5V. This pin outputs a regulated 5V from the regulator on the board. The board can be supplied with power either from the DC power jack (5 - 17V), the USB connector (5V), or the VIN pin of the board (5 - 17V). Supplying voltage via the 5V or 3.3V pins bypasses the regulator, and can damage your board. We don't advise it.
  • 3V3. A 3.3 volt supply generated by the on-board regulator.
  • GND. Ground pins.
  • IOREF. This pin on the Arduino board provides the voltage reference with which the microcontroller operates. A properly configured shield can read the IOREF pin voltage and select the appropriate power source or enable voltage translators on the outputs for working with the 3.3 V.
Memory
The Arduino OTTO  has 2 MB of flash memory for storing code, 384 KB of SRAM, 16MB of ext SDRAM and 128 KB of EEPROM.
Input and Output
Each of the 70 digital pins on the OTTO board can be used as an input or output, using pinMode(), digitalWrite(), and digitalRead() functions. They operate at 3.3 V. Each pins can provide or receive a maximum of 25 mA.

In addition, some pins have specialized functions:
  • SerialUSB: available via micro USB connector;
  • Serial: available via D0 (RX) and D1 (TX) pins;
  • Serial1 or SerialWiFi: available via D19 (RX1) and D18 (TX1). This UART is used for the ESP communication and it can’t be used if the WiFi is enabled.
  • Serial2: available via D17 (RX2) and D16 (TX2);
  • Serial3: available via D15 (RX3) and D14 (TX3) and used to receive (RX) and transmit (TX) TTL serial data.
  • External Interrupts: all pins can be used as external interrupts. These pins can be configured to trigger an interrupt on a low value, a rising or falling edge, or a change in value. See the attachInterrupt() function for details.
  • PWM: D0 to D13. Provide 16-bitPWM output with the analogWrite() function and it is possible to change the resolution using analogWriteResolution(int).
  • SPI: ICSP Connector.
  • SPI7: D10 (SS), D11 (MOSI), D12 (MISO), D13 (SCK). These pins support SPI communication using the SPI library.
  • LED13 (LED_BUILTIN). There is a built-in LED connected to digital pin 13. When the pin is HIGH value, the LED is on, when the pin is LOW, it's off.
  • TWI: SDA-SCL and D20 (SDA)-D21 (SCL). Support TWI communication using the Wire library.
  • DAC: DAC0 and DAC1. These pins provides true analog outputs with 12-bits resolution (4096 levels) with the analogWrite()  function.
  • CAN: CANRX and CANTX pins support the CAN communication protocol but they aren’t supported by Arduino APIs yet.
  • Reset. Bring this line LOW to reset the board. Typically used to add a reset button to shields which block the one on the board.
  • A10 and A11 are reserved to the Codec Audio. To use them,it needs to remove the two 0Ohm resistors in the back side of the board.
0 Ohm resistors

The OTTO has 14 analog inputs, each of which provide 12 bits of resolution (i.e. 4096 different values). They measure from ground to 3.3 volts.

It isn’t  possible to change this range using the AREF pin.

There are three different buttons on the board:
  • RESET: it is used to reset the MCU and the WiFi;
  • ESP8266 BOOT: used to enter in DFU mode for programming the ESP module;
  • BOOT: used to enter in DFU mode for programming the MCU.

Reset buttons
Communication
The Arduino OTTO has a number of facilities for communicating with a computer, another Arduino, other microcontrollers and devices.

The basic communication uses the micro-USB connection that it allows the plug-in to PC and the uploading of the sketches.

To check the communication between board and PC,  in the Arduino software, it  is included a serial monitor,  which allows the sending of textual data.

Moreover the STM32F469BI supports I2C (TWI) and SPI communication. The Arduino software includes a Wire library to simplify use of the I2C bus and SPI library for the SPI communication.

Other these channels, it is possible to communicate with other devices using these ways:
  • WiFi, via ESP8266 module;
  • CAN, using the correspondent pins;
  • LCD-Audio-Camera Connector, placed in the back side of board, to communicate with a camera, a display, an audio device.

Block diagram
The WiFi uses the ESP 8266 module with Tensilica Xtensa LX106 architecture and clock speed 80 MHz.The ESP8266 supports the 802.11b/g/n to 2.4 GHz.
It is a self contained SoC with integrated TCP/IP protocol stack that can give access to Wi-Fi network. The device can act also as an access point. One useful feature of OTTO Wi-Fi is the support for OTA (over-the-air) programming, either for transfer of Arduino sketches or Wi-Fi firmware.
The Star OTTO supports the WiFiLink.h library to connect the board to wifi.

Using the LCD-AUDIO-Camera connector is possible to connect a dedicated shield that have a Camera and Display.
It is possible to use also the Arduino STAR LCD, a 3,97" display with a resolution of 480x800 and 16.7M colors.
The board supports the Audio.h library for the Audio and the Arduino Graphics Library for the Display.
Programming
The Arduino OTTO can be programmed with the Arduino IDE 1.8.x or later, downloading the platform "Arduino STM32F4 Boards" from the Board Manager.
Select Arduino Star OTTO from the Tools > Board menu and specify the corresponding port. It is possible to choose between Serial and OTA port.

You can use the SWD header with an external programmer (for example ST-Link) to program directly the board.
Automatic (Software) Reset
Rather than requiring a physical press of two button (reset and BOOT) before an upload, the OTTO is designed to enter in DFU mode by software running on a connected computer.
The DFU procedure is triggered when the OTTO’s virtual (CDC) serial / COM port is opened at 1200 baud and then closed. When this happens, the processor will be put in DFU Mode, breaking the USB connection to the computer (meaning that the virtual serial / COM port will disappear). After the processor enter in DFU Mode, remaining in this status until the board is reset. Note that when the board first powers up, it will jump to the user sketch, if present.
USB Overcurrent Protection
The Arduino STAR OTTO has a resettable polyfuse that protects your computer's USB ports from shorts and overcurrent. Although most computers provide their own internal protection, the fuse provides an extra layer of protection. If more than 500 mA is applied to the USB port, the fuse will automatically break the connection until the short or overload is removed.
Physical Characteristics
The maximum length and width of the Arduino STAR OTTO PCB are 101.6 and 53.3 inches respectively, with the micro-USB connector and the weight is 36g. Four screw holes allow the board to be attached to a surface or case.

Schematic & Reference Design

Getting Started

Start with Arduino  or if you want to start playing right away with your board  Start with Arduino STAR - OTTO


FAQ

If you couldn’t find what you were looking for, please see our Forum Section

You need to use the Arduino IDE 1.8.x software, download the Arduino STM32F4 Boards platform from the Board Manager and follow the Getting Started guide.
Micro USB cable type B, such as that used in the latest generation mobile devices
If you have a board that can't load the sketch then try to follow the rescue guide.