The
STM32 Open Development Environment (STM32 ODE) is an open,
flexible, easy and affordable way to develop innovative devices and
applications based on the STM32 32-bit microcontroller family combined
with other state-of-the-art ST components connected via expansion
boards. It enables fast prototyping with leading-edge components that
can quickly be transformed into final designs.

STM32
Nucleo – open development
hardware supporting Arduino™ connectivity and mBedSTMicroelectronics is following
a new path to support engineers in evaluation of MCUs and prototyping
their applications. STM32 Nucleo boards can
easily be extended with a large number of specialized application
hardware add‑ons (Arduino Uno Rev3 and ST morpho connectors on Nucleo-144-pin and Nucleo-64-pin, ST Zio connectors on Nucleo-144-pin, Arduino Nano connectors on Nucleo-32-pin). The STM official link for NUCLEO board is here.Nucleo boardsincludes an ST-LINK/V2 embedded debug tool interface.After having shortlisted a
microcontroller, the engineer starts an iterative process of
prototyping, which may necessitate exchanging the microcontroller with
a device of different characteristics.See also the X-NUCLEO boards.STM32 Nucleo, ideally addresses
this point, it is an open development tool which, at an RRP in the
range of $10...$20, offers all you need to prototype an
application.

Offering all these features, the STM32 Nucleo is an open environment,
the hardware specification is freely available and the software
libraries follow either a very permissive license scheme or an open
source license scheme.
The STM32 and the STM32 Nucleo are supported by
a number of GCC based free development environments.

The STM32 Nucleo is available in different versions covering different STM32 MCUs.
All these versions will have common elements ensuring portability of add-on hw.
This does not only enable flexible prototyping, but it prepares the ground for exchange in a bigger community:

An Arduino type connector
following the UNO r3 specification with an IOREF pin that allows
compliant Arduino extension boards to adjust the I/O voltage to the
3.3V of the STM32.
Nucleo 32pins are compatible with the Arduino™ nano connectivityThis supports immediate use of Arduino shields and creation of new standardized add-ons for STM32 Nucleo.

A new connector (Morpho), gives access to all the I/Os of the contained STM32 MCU. The pin positions and assignments are physically and electrically the same across all the Nucleo boards, leveraging the pin-out compatibility of the STM32 family.

The upgraded STLINK/V2-1 can be used in a standalone mode to debug or program any STM32 MCU via the SWD connector on the STLINK itself.
It also supports a virtual com port as well as drag-and-drop programming due to its mass storage mode.

The
STM32 Nucleo is enabled for mBed, the online development platform for
ARM based microcontrollers.
You can compile your code online, link in
resources taken from the online community or exchange with other users
in the connected forum.

What is Mbed
Update the FW on NUCLEO -L152 RE
SW examples
Export your programs to KEIL, IAR, etc
A minimum debug using pc.printf
How to use ST Link Utility
How to update KEIL v.5.10.0.2 for supporting STM32L152RE using the Device Family Pack
Update the USB driver for ST-LINK-v2
LINKs