diff --git a/src/dynamic-graph-py.cc b/src/dynamic-graph-py.cc
index d3bc4e88bfc5209438b78c45d19af2b95b369702..8ec7f59a30feed1caabce0346e4a2885fbfc602e 100644
--- a/src/dynamic-graph-py.cc
+++ b/src/dynamic-graph-py.cc
@@ -91,9 +91,9 @@ namespace dynamicgraph {
    \brief List of python functions
 */
 static PyMethodDef dynamicGraphMethods[] = {
-  {"plug",  dynamicgraph::python::plug, METH_VARARGS,
+  {"w_plug",  dynamicgraph::python::plug, METH_VARARGS,
    "plug an output signal into an input signal"},
-  {"debugtrace",  dynamicgraph::python::enableTrace, METH_VARARGS,
+  {"w_debugtrace",  dynamicgraph::python::enableTrace, METH_VARARGS,
    "Enable or disable tracing debug info in a file"},
   // Signals
   {"create_signal_base", dynamicgraph::python::signalBase::create, METH_VARARGS,
diff --git a/src/dynamic_graph/__init__.py b/src/dynamic_graph/__init__.py
index 9f831c4554c28adce935214c52fbba398748735c..50aff797b6b5a1f57769b909759d471525106bd4 100644
--- a/src/dynamic_graph/__init__.py
+++ b/src/dynamic_graph/__init__.py
@@ -3,5 +3,16 @@ Copyright (c) 2010 CNRS
 Author: Florent Lamiraux
 """
 
-import wrap
+from wrap import *
 import entity, signal_base
+import re
+
+def plug (signalOut, signalIn) :
+    """
+    Plug an output signal into an input signal
+    syntax is plug ("entityOut.signalOut", "entityIn.signalIn")
+    """
+    # get signals and entities
+    [eOut, sOut] = re.split("\.", signalOut)
+    [eIn, sIn] = re.split("\.", signalOut)
+    w_plug(eOut, sOut, eIn, sIn)