diff --git a/Makefile b/Makefile
index 276f3a629e16334df881f5f43d3b3850232852d8..934cdbdf580db21cf2eedffc80c0f336e302c37f 100644
--- a/Makefile
+++ b/Makefile
@@ -73,6 +73,7 @@ SUBDIR+= 	ompl
 SUBDIR+=	openrobots-idl
 SUBDIR+=	optitrack-genom3
 SUBDIR+=	oro-view
+SUBDIR+=	orocos-bfl
 SUBDIR+=	poisson
 SUBDIR+=	pr2-pick-object
 SUBDIR+= 	py-flann
diff --git a/orocos-bfl/DESCR b/orocos-bfl/DESCR
new file mode 100644
index 0000000000000000000000000000000000000000..8f85892f4cadc0e66518747666800c29760439b4
--- /dev/null
+++ b/orocos-bfl/DESCR
@@ -0,0 +1 @@
+The Bayesian Filtering Library (BFL) provides an application independent framework for inference in Dynamic Bayesian Networks, i.e., recursive information processing and estimation algorithms based on Bayes' rule, such as (Extended) Kalman Filters, Particle Filters (or Sequential Monte Carlo methods), etc.
diff --git a/orocos-bfl/Makefile b/orocos-bfl/Makefile
new file mode 100644
index 0000000000000000000000000000000000000000..a17f9745dc6d3d3df01420e7ddb19153959d45fc
--- /dev/null
+++ b/orocos-bfl/Makefile
@@ -0,0 +1,41 @@
+# robotpkg depend.mk for:	math/orocos-bfl
+# Created:			Charles Lesire on Mon, 6 Jan 2014
+
+# package description
+NAME=			orocos-bfl
+DISTNAME=		${NAME}-${VERSION}
+VERSION=		0.8.0
+CATEGORIES=		math
+MASTER_SITES=		http://people.mech.kuleuven.be/~tdelaet/bfl_tar/
+EXTRACT_SUFX=		-src.tar.bz2
+
+MAINTAINER=		klaas.gadeyne@gmail.com, tinne.delaet@mech.kuleuven.be
+COMMENT=		The Bayesian Filtering Library
+LICENSE=		gnu-lgpl-v2
+
+# options
+#PKG_SUPPORTED_OPTIONS+=	orocos
+#PKG_OPTION_DESCR.orocos?= Install Orocos RTT plugin
+#define PKG_OPTION_SET.orocos
+#  CMAKE_ARGS+=	-DOROCOS_PLUGIN=ON
+#  CMAKE_ARGS+=	-DOROCOS_INSTALL=${PREFIX.orocos-rtt}
+#  include ../../middleware/orocos-rtt/depend.mk
+#endef
+#PKG_OPTION_UNSET.doc= CMAKE_ARGS+=--DOROCOS_PLUGIN=OFF
+
+# dependencies
+CMAKE_ARGS+=		-DBOOST_INCLUDEDIR=${PREFIX.boost-headers}/include
+CMAKE_ARGS+=		-DBOOST_LIBDIR=${PREFIX.boost-libs}/include
+
+DEPEND_ABI.boost-libs=	boost-libs>=1.46.1
+DEPEND_ABI.boost-headers=boost-headers>=1.46.1
+
+include ../../devel/boost-headers/depend.mk
+include ../../devel/boost-libs/depend.mk
+include ../../mk/sysdep/cppunit.mk
+include ../../mk/sysdep/cmake.mk
+include ../../mk/language/c++.mk
+include ../../mk/language/c.mk
+include ../../pkgtools/pkg-config/depend.mk
+include ../../mk/robotpkg.mk
+
diff --git a/orocos-bfl/PLIST b/orocos-bfl/PLIST
new file mode 100644
index 0000000000000000000000000000000000000000..4f52fac195e81a57ed4836f1e5ef580b6236a4be
--- /dev/null
+++ b/orocos-bfl/PLIST
@@ -0,0 +1,76 @@
+@comment Mon Jan 6 11:06:42 CET 2014
+bin/bfl/test_compare_filters
+bin/bfl/test_discrete_filter
+bin/bfl/test_kalman_smoother
+bin/bfl/test_linear_kalman
+bin/bfl/test_nonlinear_kalman
+bin/bfl/test_nonlinear_particle
+include/bfl/bfl_constants.h
+include/bfl/bfl_err.h
+include/bfl/filter/EKparticlefilter.h
+include/bfl/filter/SRiteratedextendedkalmanfilter.h
+include/bfl/filter/asirfilter.cpp
+include/bfl/filter/asirfilter.h
+include/bfl/filter/bootstrapfilter.cpp
+include/bfl/filter/bootstrapfilter.h
+include/bfl/filter/extendedkalmanfilter.h
+include/bfl/filter/filter.cpp
+include/bfl/filter/filter.h
+include/bfl/filter/histogramfilter.cpp
+include/bfl/filter/histogramfilter.h
+include/bfl/filter/innovationCheck.h
+include/bfl/filter/iteratedextendedkalmanfilter.h
+include/bfl/filter/kalmanfilter.h
+include/bfl/filter/mixtureBootstrapFilter.cpp
+include/bfl/filter/mixtureBootstrapFilter.h
+include/bfl/filter/mixtureParticleFilter.cpp
+include/bfl/filter/mixtureParticleFilter.h
+include/bfl/filter/particlefilter.cpp
+include/bfl/filter/particlefilter.h
+include/bfl/model/analyticmeasurementmodel_gaussianuncertainty.h
+include/bfl/model/analyticsystemmodel_gaussianuncertainty.h
+include/bfl/model/discretesystemmodel.h
+include/bfl/model/linearanalyticmeasurementmodel_gaussianuncertainty.h
+include/bfl/model/linearanalyticmeasurementmodel_gaussianuncertainty_implicit.h
+include/bfl/model/linearanalyticsystemmodel_gaussianuncertainty.h
+include/bfl/model/measurementmodel.cpp
+include/bfl/model/measurementmodel.h
+include/bfl/model/systemmodel.cpp
+include/bfl/model/systemmodel.h
+include/bfl/pdf/EKF_proposaldensity.h
+include/bfl/pdf/analyticconditionalgaussian.h
+include/bfl/pdf/analyticconditionalgaussian_additivenoise.h
+include/bfl/pdf/conditionalgaussian.h
+include/bfl/pdf/conditionalgaussian_additivenoise.h
+include/bfl/pdf/conditionalpdf.h
+include/bfl/pdf/discreteconditionalpdf.h
+include/bfl/pdf/discretepdf.h
+include/bfl/pdf/filterproposaldensity.h
+include/bfl/pdf/gaussian.h
+include/bfl/pdf/linearanalyticconditionalgaussian.h
+include/bfl/pdf/mcpdf.cpp
+include/bfl/pdf/mcpdf.h
+include/bfl/pdf/mixture.cpp
+include/bfl/pdf/mixture.h
+include/bfl/pdf/pdf.h
+include/bfl/pdf/uniform.h
+include/bfl/sample/sample.cpp
+include/bfl/sample/sample.h
+include/bfl/sample/weightedsample.h
+include/bfl/smoother/backwardfilter.cpp
+include/bfl/smoother/backwardfilter.h
+include/bfl/smoother/particlesmoother.cpp
+include/bfl/smoother/particlesmoother.h
+include/bfl/smoother/rauchtungstriebel.h
+include/bfl/wrappers/config.h
+include/bfl/wrappers/matrix/matrix_BOOST.h
+include/bfl/wrappers/matrix/matrix_LTI.h
+include/bfl/wrappers/matrix/matrix_NEWMAT.h
+include/bfl/wrappers/matrix/matrix_wrapper.h
+include/bfl/wrappers/matrix/vector_BOOST.h
+include/bfl/wrappers/matrix/vector_LTI.h
+include/bfl/wrappers/matrix/vector_NEWMAT.h
+include/bfl/wrappers/matrix/vector_wrapper.h
+include/bfl/wrappers/rng/rng.h
+lib/liborocos-bfl.so
+lib/pkgconfig/orocos-bfl.pc
diff --git a/orocos-bfl/depend.mk b/orocos-bfl/depend.mk
new file mode 100644
index 0000000000000000000000000000000000000000..8074937289917411d34ae75771c78dbfea10ee50
--- /dev/null
+++ b/orocos-bfl/depend.mk
@@ -0,0 +1,26 @@
+# robotpkg depend.mk for:	math/orocos-bfl
+# Created:			Charles Lesire on Mon, 6 Jan 2014
+#
+
+DEPEND_DEPTH:=		${DEPEND_DEPTH}+
+LIBHTN_DEPEND_MK:=${LIBHTN_DEPEND_MK}+
+
+ifeq (+,$(DEPEND_DEPTH))
+DEPEND_PKG+=		orocos-bfl
+endif
+
+ifeq (+,$(LIBHTN_DEPEND_MK))
+PREFER.orocos-bfl?=	robotpkg
+
+DEPEND_USE+=		orocos-bfl
+
+DEPEND_ABI.orocos-bfl?=	orocos-bfl>=0.8
+DEPEND_DIR.orocos-bfl?=	../../onera/orocos-bfl
+
+SYSTEM_SEARCH.orocos-bfl= \
+	include/bfl/bfl_constants.h \
+	lib/liborocos-bfl.so \
+	lib/pkgconfig/orocos-bfl.pc
+endif
+
+DEPEND_DEPTH:=		${DEPEND_DEPTH:+=}
diff --git a/orocos-bfl/distinfo b/orocos-bfl/distinfo
new file mode 100644
index 0000000000000000000000000000000000000000..8350260c0a51e218c3e1a3c7c9bbc47f9af2d604
--- /dev/null
+++ b/orocos-bfl/distinfo
@@ -0,0 +1,3 @@
+SHA1 (orocos-bfl-0.8.0-src.tar.bz2) = 839e54fe3b35f2f0597277ec543f3d9796c24c36
+RMD160 (orocos-bfl-0.8.0-src.tar.bz2) = 2364410e9523dcf2a6468cbae925c75e771fb702
+Size (orocos-bfl-0.8.0-src.tar.bz2) = 212899 bytes