   {
     UNUSED(type);
     Echo* echo = (Echo*) fsm;
-    trace.print(PSTR("init "));
-    trace.print(echo->m_name);
-    trace.println();
+    trace << PSTR("init ") << echo->m_name << endl;
     fsm->set_state(listenState);
     return (true);
   }

  {
    UNUSED(type);
    Echo* echo = (Echo*) fsm;
    trace.print(echo->m_name);
    trace.printf(PSTR("(count = %d)\n"), echo->m_count++);
    fsm->set_state(echoState);
    fsm->set_timer(512);
    return (true);
  }


    m_port = fsm;
  }

private:
  str_P m_name;
  uint16_t m_count;
  FSM* m_port;

  /**
   * The states; init, listen and echo.
   * init -> listen: print init message
