diff --git a/ippisite/ippidb/utils.py b/ippisite/ippidb/utils.py
index 3927f82438f28ea7823236b58c81418cf2e55be9..ec26172da08006064b4cd744c99aecc250879db0 100644
--- a/ippisite/ippidb/utils.py
+++ b/ippisite/ippidb/utils.py
@@ -9,6 +9,11 @@ def mol2smi(mol_string):
 
 def smi2mol(smi_string):
     m = pybel.readstring('smi', smi_string)
+    # generate 2D coordinates for MarvinJS layout
+    #NB: the line below should be replaced as soon as the new version of openbabel
+    # is out (>2.4.1), by a call to m.make2D()
+    # (see https://github.com/openbabel/openbabel/blob/06e233e2ca0c6d9f86f74bafe74ffcb75e9d76cd/scripts/python/pybel.py#L577)
+    pybel._operations['gen2D'].Do(m.OBMol)
     return m.write(format='mol')
 
 class FingerPrinter(object):