diff --git a/hal/common/SerialBase.cpp b/hal/common/SerialBase.cpp
index 891c4509751..2f20d8ed5c3 100644
--- a/hal/common/SerialBase.cpp
+++ b/hal/common/SerialBase.cpp
@@ -26,10 +26,11 @@ SerialBase::SerialBase(PinName tx, PinName rx) :
                                                  _thunk_irq(this), _tx_usage(DMA_USAGE_NEVER),
                                                  _rx_usage(DMA_USAGE_NEVER),
 #endif
-                                                _serial(), _baud(9600) {
+                                                _serial(), _baud(MBED_CONF_CORE_STDIO_BAUD_RATE) {
     // No lock needed in the constructor
 
     serial_init(&_serial, tx, rx);
+    serial_baud(&_serial, _baud);
     serial_irq_handler(&_serial, SerialBase::_irq_handler, (uint32_t)this);
 }