Getting Started with Embedded Video Engine (EVE)

What is EVE?

The Embedded Video Engine (EVE) is an innovative graphics controller from Bridgetek, supporting full colour Graphics, Touch and Audio output all in one IC!

Think of it as a Graphics card with Touch Screen and Sound for almost any Microcontroller (MCU). Connect EVE to your preferred MCU via SPI (or Quad SPI) to easily add a full-colour graphical touch screen to your design.

Ideal for updating older designs to a much more modern and user-friendly interface, and for creating great user interfaces for new designs.

  • Graphics – Enhance your product’s user interface by adding a colour graphical display
  • Touch – Create an even more intuitive and user-friendly interface by adding touch screen control
  • Audio – Play a wide range of audio tones with almost no extra work for the MCU

Get started quickly with EVE! Use one of our development modules which have everything on-board.

Find out more here…

Why use EVE?

Traditional user interfaces (such as mechanical push buttons, LED indicators, alphanumeric displays and custom-designed segment displays) can impose a lot of limitations when designing your interface, forcing you to make compromises in terms of layout, appearance, usability and flexibility.

The benefits of using a touch-enabled graphics display are widely recognised, but many engineers see them as just too challenging to add to their design.

With EVE, we make it easy for you to design the user interface exactly the way you want, and to improve the user’s experience and perception of your product at the same time.

Using EVE as a separate graphics controller connected to your MCU brings many advantages compared to MCUs with built-in graphics capability.

The EVE Family

The use of colour graphical touch screens has evolved over the years, and so has EVE! Our 4th Generation EVE (BT817, BT818 and BT817A) have even more features based on evolving market trends (such as larger screens and more complex on-screen user-interfaces) and feedback from our customers.  However our earlier generations are ideal for a wide range of application especially smaller screens and cost sensitive applications.

Features FT800/FT801

(EVE)

BT880/BT881 BT882/BT883 FT810/FT811

(EVE 2)

FT812/FT813

(EVE 2)

BT815/BT816

(EVE 3)

BT817/BT818

(EVE 4)

Target Display Resolution QVGA (320*240)

WQVGA (480*272)

QVGA (320*240)

WQVGA (480*272)

Bar-Type display e.g. 800*160, 1024*12

QVGA (320*240)

WQVGA (480*272)

Bar-Type display e.g. 800*160, 1024*12

HVGA (480*320)

VGA (640*480)

WVGA (800*480)

SVGA (800*600)

HVGA (480*320)

VGA (640*480)

WVGA (800*480)

SVGA (800*600)

HVGA (480*320)

VGA (640*480)

WVGA (800*480)

SVGA (800*600)

HVGA (480*320)

VGA (640*480)

WVGA (800*480)

SVGA (1280*600)

Max Pixels Per Line 512 2048 2048 2048 2048 2048 2048
Display Interface RGB666 RGB666 RGB888 RGB666 RGB888 RGB888 RGB888
Touch Function 800 – Resistive

801 – Capacitive

880 – Resistive

881 – Capacitive

882 – Resistive

883 – Capacitive

810 – Resistive

811 – Capacitive

812 – Resistive

813 – Capacitive

816 – Resistive

815 – Capacitive

818 – Resistive

817 – Capacitive

Custom Touch1 No No No No No Yes Yes
Audio Output PWM PWM PWM PWM PWM Sigma-Delta Sigma-Delta
Host Interface SPI/I2C SPI/QSPI SPI/QSPI SPI/QSPI SPI/QSPI SPI/QSPI SPI/QSPI
90o Screen Rotation2 No Yes Yes Yes Yes Yes Yes
Object Memory Size3 256 kB 256 kB 256 kB 1 MB 1 MB 1 MB 1 MB
External Memory Support4 No No No No No Up to 256 kB Up to 256 kB
Adaptive Frame rate5 No No No No No Yes Yes
Adaptive HSYNC6 No No No No No No Yes
Dedicated PCLK PLL7 No No No No No No Yes
2X Pixel Mode8 No No No No No No Yes
Non Square Pixel9 No No No No No No Yes
Co-Processor 32-bit RISC 48MHz 32-bit RISC 60MHz 32-bit RISC 60MHz 32-bit RISC 60MHz 32-bit RISC 60MHz 32-bit RISC 72MHz 32-bit RISC 72MHz
Image Decoder10 DXT1, JPEG DXT1, JPEG, PNG DXT1, JPEG, PNG DXT1, JPEG, PNG DXT1, JPEG, PNG DXT1, JPEG, PNG, ASTC DXT1, JPEG, PNG, ASTC
Hardware Acceleration No JPEG JPEG JPEG JPEG JPEG, ASTC JPEG, ASTC
Video Playback No Motion JPEG Motion JPEG Motion JPEG Motion JPEG Motion JPEG Motion JPEG
Animation Playback No No No No No Yes Yes
GPIOs 3 3 3 3 4 4 4
Package QFN48 QFN48 QFN56 QFN48 QFN56 QFN64 QFN64

Footnotes:
1  For capacitive touch versions only – custom touch code can be loaded into EVE to use I2C touch screen controllers which are not directly supported. Ideal for applications requiring toughened and splash-proof touch displays etc. BRT_AN_090 for more details.
2  Use a single command to rotate the screen image and touch to one of 8 orientations. Use a landscape screen in portrait orientation easily to suit your product’s form-factor.
3  This is RAM_G, used for storing images and fonts so that EVE can display them. For example, a 480×272 image may take 130,560 bytes in RGB332 format or 261,120 bytes in RGB565 format.
4  Directly attach a NOR Flash chip to EVE, and store large images, fonts, videos and animations there instead of on MCU’s flash. EVE has commands to program, update and read the flash.
5  Allows EVE to work with larger screens and in applications with more on-screen content. It pauses PCLK if required to give more time to render graphics. Some displays do not work well with varying PCLK and so this feature can be disabled.
6  Enhanced version of Adaptive Frame Rate added to BT817/8. It allows EVE to work with larger screens and in applications with more on-screen content. Extending the scan-out of pixels into the non-visible area of the display allowing EVE more time to render graphics.

7  This feature allows a greater range of PCLK rates to be generated and so allows support of a wider range of displays.
8  This feature works internally to EVE, to provide a higher transfer of pixel data. This in-turn enables the use of larger displays.
9  Some displays do not have square pixels. Without correction, the image would appear stretched. The Horizontal Scan-out Filter (HSF) feature allows EVE to compensate for this so that display content looks correct and in proportion on these displays.
10  EVE supports compressed image formats in addition to raw images. ASTC is available on the BT81x series which offers better image quality with smaller memory usage and can be displayed from RAM_G or flash.

Our latest EVE devices have many performance features to support larger screens. However, our earlier generations are ideal for a wide range of applications especially smaller screens and cost sensitive applications.

Which Displays can I use?

With EVE, you can use displays in all shapes and sizes. Configure the display settings easily using EVE’s display registers to suit your display.

Here are just some of types of display which you can use:

EVE has RGB outputs but can also driver LVDS screens via an RGB to LVDS conversion IC.

Some displays have a separate serial channel on their ribbon cable which is used for configuration. These displays may need configuration after power-up to set them to RGB input mode. EVE can work well with these displays, but you may need to connect a few additional lines to your MCU to facilitate this mode setting. We recommend checking your display datasheet to confirm if it needs configuration after power-up.

Software Tools and Examples

We have a wide range of software tools and examples to help you get started with EVE. You may prefer to write code in a language such as C or Circuit Python, or you may prefer to use graphical tools to develop your code, or you may prefer a mixture of both.

EVE Software Examples are available on our Github page.  They provide a good starting point for developing your application and also demonstrate some techniques to make your user interface even better.

EVE Screen Designer (ESD) is a comprehensive development environment which enables users to build a GUI application using a visual programming method without needing to know any EVE-specific display list commands.

EVE Screen Editor (ESE) is a user-friendly graphical tool that enables users to create screen designs visually without the need for hardware.  Lay out your user interface easily and experiment to learn about different graphics techniques.

EVE Asset Builder (EAB) is a Windows-based tool that contains a set of useful utilities to convert and generate resources for EVE series devices such as images, fonts, video, audio and animation.

EVE Development Workflow

This flowchart with interactive links should help you choose the correct tools when designing with EVE.

Choosing a development module

IDM 2040-7A ME817EV VM816C50A-D VM816C50A-N VM816CU50A-D VM816CU50A-N IDM2040-43A VM880C VM810C50A-D VM810C50A-N VM800C43-D VM800C43-N VM800B35A-BK VM800B43A-BK VM800B50A-BK
EVE Generation EVE 4 EVE 4 EVE 3 EVE 3 EVE 2 EVE 2 EVE 2 EVE 1 EVE 1
EVE Device BT817 BT817 BT816 BT816 BT883 BT880 FT810 FT800 FT800
Host MCU Onboard SPI/DSPI/QSPI+USB SPI/DSPI/QSPI USB MCU Onboard (RP2040) SPI SPI SPI SPI
Display Included Yes No Yes (-D) No (-N) Yes (-D) No (-N) Yes No Yes (-D) No (-N) Yes (-D) No (-N) Yes
Display 7″ (800 x 480) Up to 1280 x 800 5” (800 x 480) (-D)
Up to 800 x 600 (-N)
5” (800 x 480) (-D)
Up to 800 x 600 (-N)
4.3” (480 x 272) Up to 480 x 272 5” (800 x 480) (-D)
Up to 800 x 600 (-N)
4.3” (480 x 272) (-D)
Up to 480 x 272 (-N)
3.5” (320 x 240) (35A)
4.3” (480 x 272) (43A)
5” (480 x 272) (50A)
Display Connector RGB (50-pin) RGB (50-pin)
LVDS (40-pin)
RGB (40-pin) RGB (40-pin) RGB (40-pin) RGB (40-pin) RGB (40-pin) RGB (40-pin) RGB (54-pin) (35A)
RGB (40-pin) (43A)
RGB (40-oin) (50A)
Touch Capacitive Capacitive Resistive Resistive Capacitive Resistive Resistive Resistive Resistive
Bezel No No No No Plastic Bezel No No No Plastic Bezel
Speaker External (via 4-pin JST connector) External (via 4-pin JST connector) External (via 4-pin JST connector) External (via 4-pin JST connector) External (via 4-pin JST connector) On-board Speaker On-board Speaker On-board Speaker On-board Speaker

Types of Host Connections:

EVE Display Features

Create attractive and intuitive user interfaces with EVE’s extensive graphics features:

  • Full colour graphics up to 1280×800 resolution (depending on model)
  • Efficient Display Lists define what EVE will draw on the screen
  • Use built-in widgets and create custom widgets such as arc gauges
  • Text using built-in and custom fonts, ASCII and Unicode (BT81x) support
  • Extensive image format support for backgrounds, logos, icons and more…
  • Graphic techniques such as alpha blending create unique effects

EVE Touch Features

A touch screen makes the ideal companion to a colour graphical touch screen. Implementing touch is easy with EVE:

  • Use Resistive and Capacitive touch panels with minimal external hardware
  • Innovative touch system makes adding touch as simple as reading a register
    –     Tagging: Reports which tagged item is being touched
    –     Tracking: Reports the relative touch position within a specified area (linear or radial)
  • Capacitive touch models support up to 5 touches simultaneously
  • Built-in calibration command to help make touch calibration easy
  • Custom Touch (BT81x) enables support of a wider range of capacitive touch panels

EVE Audio Features

Adding Audio is another ideal way to enhance user interface, and EVE makes it very easy! Sound can be used to acknowledge user touch, to get the users attention and for many other purposes. With EVE, a simple register write allows you to play a wide range of sound effects and EVE will play the sound via the Audio Out pin. You can also play back audio files converted using the EVE Asset Builder tool.

Overcome the many challenges in generating sounds from an MCU:

  • Save the time and effort to program and fine-tune sounds with EVE’s library of built-in sounds
  • Give users a good impression with more pleasing sounding tones and sounds
  • Avoid issues where changes in your MCU code affect the PWM/timer generated audio tones or loading your MCU with sound generation.