GigaDevice Releasing RISC-V MCUs And Development Boards

Probably not too many people have heard of Chinese manufacturer GigaDevice who so far has mostly been known as a NOR Flash memory manufacturer. Their GD32 range of MCUs is however STM32-compatible, making them interesting (cheaper) alternatives to sourcing directly from ST. Now GigaDevice has announced during a presentation that they are releasing a range of RISC-V-based MCUs: the GD32V series.

As GigaDevice has not yet updated their English-language website, the information we do have is based on CNX-Software‘s translations from Chinese. The specs for the GD32VF103 series of MCUs are listed by them as follows:

  • Core – GD32VF103 RISC-V “Bumblebee Core” @ 108 MHz
  • Memory – 8KB to 32KB SRAM
  • Storage  – 16KB to 128KB flash
  • Peripherals – USB OTG and CAN 2.0B
  • I/O – 3.3V, 5V tolerant
  • Supply Voltage – 2.6 to 3.6V
  • Package – QFN36, LQFP48, LQFP64, and LQFP100 packages

Whether they are pin-compatible with the GD32 MCUs is still to be confirmed. If that turns out to be the case, then this might be an interesting drop-in solution for some products. From the specs it seems clear that they are targeting the lower-end ARM-based MCUs such as ST’s Cortex-M3-based STM32F103, which are quite common in a large range of embedded systems.

Seeing a performance comparison between both types of MCU would be interesting to see as lower power usage and higher efficiency compared to the ARM cores is being claimed. Both MCUs and development boards are already available for sale at Tmall, with the basic GD32VF103C-START board going for about $11 and the GD32VF103TBU6 MCU (QFN36, 64 kB Flash) for roughly $1.27.

Documentation and SDKs in English seem to be a bit scarce at this point, but hopefully before long we too will be able to use these MCUs without having to take up Chinese language classes.

Thanks to [Flaviu] for the tip!

Blue Pill Makes Cheap But Powerful Morse Tutor

[W8BH] attended a talk by another ham, [W8TEE] that showed a microcontroller sending and receiving Morse code. He decided to build his own, and documented his results in an 8 part tutorial. He’s using the Blue Pill board and the resulting device sends code with paddles, sends canned text, provides an LCD with a rotary knob menu interface, and even has an SD card for data storage.

All the code is on GitHub. If you are interested in Morse code or in learning how to write a pretty substantial application using the Blue Pill and the Arduino IDE (or any other similar processor), this is a great exposition that is also a practical tool.

Continue reading “Blue Pill Makes Cheap But Powerful Morse Tutor”

Create A Low-Cost, High-Accuracy LCR Meter With An STM32 MCU

Having a good LCR meter was something which [Adil] had wanted for his personal lab, so as any good university student (and former Hackaday contributor) does, he ended up building his own. Using a Nucleo-F446RE board for the MCU side and a custom PCB for the side that does the actual measuring, he created a meter that reportedly comes pretty close to commercial meters, and for the low price of £55.

Running through some of the theory behind the design as well some design choices, the resulting product is then presented. The choice to not using a standard current shunt, but instead a transimpedance amplifier (TIA) is explained as well. Unfortunately there are no schematics or source code, and the text is somewhat unclear on some points, failing to explain some acronyms that’d make it hard for someone who is not active in this field to understand the full design.

We hope that [Adil] can address those points and provide design files and source code, as it does look like a very interesting project!

Building A Development Board For The STM32 G0 Series

When [Andy Brown] recently tripped over ST’s new G0 series of MCUs, he figured after some research that the best way to learn everything there’s to know about the STM32G0xx by making his own development board based around the STM32G081. The result is a Nucleo-style board, breaking out all pins to convenient 2.54 mm headers, and with a number of niceties, such as an on-board coin cell and 32.768 kHz LSE oscillator for RTC use and three different power supplies (3.3 V, 2.5 V, and 1.8 V) for the MCU.

The board is programmed with an external ST-Link programmer that connects to the SWD interface on the MCU, with a 20-pin programming header provided. While by no means small or compact, it makes for very easy breadboarding and prototyping, with all 2.54 mm headers accessible from the bottom and top.

As for the STM32G0 series itself, the jury is still out on its performance compared to the F0. The former swaps the Cortex-M0 core for an M0+, with a reduced pipeline length (3 stages in the G0) but increased frequency (64 MHz versus 48 MHz). The G0 has a little bit more SRAM, but so far less Flash storage. According to ARM, this MCU range is designed to remove any need to still use an 8-bit MCU. Big claims, indeed.

The biggest issue which [Andy] had while developing this board was probably with the CH340 USB-UART chip. Ordering them from AliExpress as is common, the CH340G ICs he got just wouldn’t work on the first board revision, forcing him to switch to the CH340E and requiring a board respin. This version has an internal oscillator and as a bonus even came in the original tape packaging when it arrived, instead of in a plastic baggy like with the CH340G parts.

See a video of [Andy] going through the design after the break.

Continue reading “Building A Development Board For The STM32 G0 Series”

Motorized Lens Controller Techs Up Your Webcam

If you’re familiar with the DSLR camera market, you’d know that modern lenses are works of technological art. Crammed full of motors and delicate electronic assemblies, they’re bursting with features such as autofocus, optical stabilization and zoom. [Saulius Lukse] has been experimenting with motorized lenses for webcam applications, and has built a controller to make working with them a snap.

The controller is capable of controlling up to 3 stepper motors, as well as a voice coil, which should be enough for the vast majority of lenses out there. Microstepping is supported, which is key for optical systems in which tiny adjustments can make a big difference. The controller speaks USB and I2C, and is now based on an STM32 chip, having been upgraded from an earlier version which used the venerable ATmega328. The board is designed to be as compact as possible, to enable it to neatly fit inside camera and lens assemblies.

The board has been used to successfully control an 18x zoom lens, among others. Combining such a lens with a webcam and a good pan and tilt mechanism would create a highly capable surveillance package, or an excellent vision system for a robot.

It’s not the first time we’ve seen work from [Kurokesu] in these parts – they’ve done work on pedestrian detection before, too.

MIDI Grid Can Glow Up With The Best Of Them

Traditional musical instruments have a variety of interfaces, some simple, some complex. The piano is a fairly intuitive machine with a key for every note and a couple of pedals you can ignore if you like. The saxophone is a little more complex, with its many interoperable keys used to produce varying pitches. However, modern electronic instruments are not constrained by physicalities, and there has been an explosion in such devices that simply present a MIDI interface and a big pile of glowing addressable buttons. [Gediminas]’s MIDI Grid build is a great example of the type.

The build relies on an STM32 to do the heavy lifting, talking to an 8×8 array of buttons, each with addressable RGB LEDs. These are combined with silicone pads for a wonderfully tactile feel. There are then a further 17 buttons on the side for various purposes, along with two rotary encoders – useful for implementing smooth fades and intoxicating filter sweeps. Unusually for this type of instrument, in addition to USB there’s also a hardware serial MIDI interface. Finally, a Nokia 5110 LCD is implemented to display relevant data.

There are precious few details on the case, but it appears to be made from lasercut wood pieces, with a nice stain giving it a rich color. Buttons also have printed labels for a more professional look.

The build has functionality most similar to Novation’s Launchpad line. [Gediminas] currently has it working primarily with Ableton Live, however there is scope for further work to integrate the device with other DAWs or MIDI hardware.

With electronic instruments such as these, it’s possible to make musical life more accessible through smart design choices – and the Kord Kontroller is another great example.

Quadcopter Uses Bare Metal STM32

[Tim Schumacher] got a Crazepony Mini quadcopter and has been reprogramming it “bare metal” — that is to say he’s programming the STM32 without using an operating system or do-it-all environment. His post on the subject is a good reference for working with the STM32 and the quadcopter, too.

If you haven’t seen the quadcopter, it is basically a PC board with props. The firmware is open source but uses the Keil IDE. The CPU is an STM32 with 64K of program memory. In addition, the drone sports a wireless module, a digital compass, an altimeter, and a gyro with an accelerometer.

Although the post is really about the quadcopter, [Tim] also gives information about the Blue Pill which could be applied to other STM32 boards, as well. On the hardware side, he’s using a common USB serial port and a Python-based loader.

On the software side, he shows how to set up the linker and, using gcc, control output ports. Of course, there’s more to go to work the other peripherals, and Tim’s planning to investigate CMSIS to make that work easier. Our earlier post on STM32 prompted [Wassim] over on Hackaday.io to review a bunch of IDEs. That could be helpful, too.