The ST Microelectronics Discovery series are designed to show off the capabilities of the STM32 series. They come with numerous peripherals, and large amounts of I/O lines. The philosophy is to show the user what the device is capable of immediately, without the need to add any peripherals. The device that I am testing is the STM32F429I-Discovery.
The STM32F429I-Disco is based on the ST Microelectronics STM32F429ZIT6, containing 2MB of flash, and 256KB of RAM. It is based on the ARM Cortex-M4, with FPU. ST Microelectronics puts this device in the “high-performance” category, and with reason. The CPU is clocked at 168MHz, the fastest clock speed I’ve seen on a microcontroller. It comes in an LQFP144 package, taking up a significant portion of the board itself. A package that large means that there are a lot of peripherals inside that device. It has up to 17 timers, 3 ADCs, 2 D/A converters, and advanced clock/calendar functions. More advanced features include a true random number generator, CRC calculation unit, an excellent LCD-TFT controller, an equally impressive camera interface, and even a 10/100 Ethernet MAC. It includes one USB 2.0 connector, for device, host or OTG configurations. It has an impressive amount of serial communication interfaces; 21 in total. It also has up to 168 fast I/O lines. Just when you thought it couldn’t get any better, this device also has an external memory controller, for adding just about any type of memory. SRAM and SDRAM, NAND and NOR flash, as well as Compact Flash are all supported.
While it isn’t huge, the STM32F429I-Discovery isn’t a very small device, and for good reason. Let me ask you a question – what is the most I/O you can fit on an evaluation board? We’ve all seen evaluation boards with connectors, either for extension boards, or simply to play about with GPIOs. Have a look at the Arduino, with the shield headers. That already provides a lot, but if you want more, then you can always go with the Arduino Mega 2560, which has even more. Well, the STM32F429I-Disco has an incredible amount of I/O pins. On the sides of the board, a total of 128 connectors can be found. Of course, some of those are power and ground; two 3.3V, two 5V, five GND and one VDD. Oh, and one NC. One, and only one. All the others are connected, and clearly listed on the underneath of the device. They can be connected from above and below, and use standard 2.54mm width, so you can use easy to produce ribbon cable if needed.
There are a lot of evaluation boards out there, and almost as many philosophies to go with them. Some designers only leave headers on the board, without including even a single LED, and let the engineers connect whatever they please. Others try to fit on as many different components as possible, letting the engineer try out everything, even a few that he probably would never use. So how does this board fare compared to others? The STM32F429I-Disco doesn’t have a large amount of different user components, but again, this is a good choice. There are two push buttons; a reset button, and a user button. They are clearly marked, well placed, and have caps making them easy to push without touching any components. There are a total of six LEDs, two of them are user LEDs, and the others are for power and USB communications. On the top of the device is the USB port for programming and for power, and on the bottom, there is a user micro-USB connector. While I don’t normally talk much about silicon components, there is one worth noting. Underneath the board, there is something I’ve already seen lots of times, but never with a microcontroller. RAM. Microcontrollers have historically had very little RAM, but “enough”. They aren’t designed to have full-blown operating systems, and some applications don’t use any operating system at all, instead use a bare metal approach. In these cases, 8KB of RAM is sometimes enough to get the job done. More advanced devices might need 512KB, and I’ve rarely seen more than 1MB. The STM32F429ZIT6 itself comes with 256KB of RAM. That chip under the board is an SDRAM chip, bit a total of 64MBits. That begs the question, why would you possibly want that much RAM on a microcontroller? Well, the final component on the board, and the most obvious, is an LCD screen.
This device deserves its own paragraph. This isn’t the first board that I have received that includes an LCD screen, but it is by far the best one I have. It is a 2.4” QVGA TFT LCD, QVGA being quarter VGA, or 320×240 pixels. It is nice and bright, and while I can’t give a professional opinion on the colours due to colour-blindness, it does look nice. There is no flickering, and no bleeding, something I’ve seen a few times. Smaller LCDs often have hidden problems, one of them being speed. When connected to a slow I2C bus, you can’t expect screens to be fast, but this one is. And when I say, fast I mean fast. The board comes with a default application proposing a speed test. So how do you select the test with only a single user button? Well, the screen is also touch-sensitive. I didn’t know that. Just touch the screen, and the benchmark runs. The screen displays coloured rectangles so fast it looks like you put a Disney animation into a blender. A few seconds later, the results are shown. 63944000. Pixels. Every second. Close to 64 million pixels a second, for a resolution of 76800 pixels. This thing is crazy fast, and a beautiful addition to an already great board.
When a device like this can be used immediately, the default program is often impressive. This board is no exception. When you power on the system, and complete and interactive program is displayed, allowing for calendar operations, system information, a benchmark program, and with the help of an OTG connector, you can even display pictures and videos. If that isn’t enough, then you can even play games, but that part hasn’t been tested in this review.
The pictures and videos application just goes to show how good the screen is, and just how easy it is to use the USB interface. The board does not come with an OTG connector, but for embedded engineers, this is a must, and should already be part of your equipment anyway.
Pricing and availability
ST Microelectronics has been very aggressive on the Maker scene, both in terms of boards, and the price that goes with them. With all the hardware I’ve listed, you might be getting worried, but don’t. This board has a ridiculous price tag; Mouser currently has them listed at just over 23€. I mean the screen alone… I’ve bought LCD screens that were more expensive than this entire board, and still not as good. I really don’t know how they do it…
As with another ST Microelectronics product that I’ve reviewed, do not confuse low-cost for low quality. The board looks and feels solid, and sits firmly on the I/O connectors. It has already survived being played with by my four year old daughter who thought that it was a tablet, which just goes to show how well built it is.