diff --git a/pkg/wakaama/0001-changing-header-location.patch b/pkg/wakaama/0001-changing-header-location.patch
new file mode 100644
index 0000000000000000000000000000000000000000..a89eb516d1acd2dc073c13205d9aff6f0945f003
Binary files /dev/null and b/pkg/wakaama/0001-changing-header-location.patch differ
diff --git a/pkg/wakaama/0002-defined-endianness.patch b/pkg/wakaama/0002-defined-endianness.patch
new file mode 100644
index 0000000000000000000000000000000000000000..c8ab83296176dccc9fe583d8ec0a41ce3ad92d10
Binary files /dev/null and b/pkg/wakaama/0002-defined-endianness.patch differ
diff --git a/pkg/wakaama/0003-fixed-warnings-in-er-coap-13.c.patch b/pkg/wakaama/0003-fixed-warnings-in-er-coap-13.c.patch
new file mode 100644
index 0000000000000000000000000000000000000000..b938d95170471cd8b57ac6a8ecab701c0ff16703
Binary files /dev/null and b/pkg/wakaama/0003-fixed-warnings-in-er-coap-13.c.patch differ
diff --git a/pkg/wakaama/0004-fixed-warnings-in-packet.c.patch b/pkg/wakaama/0004-fixed-warnings-in-packet.c.patch
new file mode 100644
index 0000000000000000000000000000000000000000..624514ce7a40003c8de38e5eec54633d2776241a
Binary files /dev/null and b/pkg/wakaama/0004-fixed-warnings-in-packet.c.patch differ
diff --git a/pkg/wakaama/0005-fixed-warnings-in-tlv.c.patch b/pkg/wakaama/0005-fixed-warnings-in-tlv.c.patch
new file mode 100644
index 0000000000000000000000000000000000000000..22d39453de278ec12b14272e9ace18f037d4528e
Binary files /dev/null and b/pkg/wakaama/0005-fixed-warnings-in-tlv.c.patch differ
diff --git a/pkg/wakaama/0006-fixed-warnings-in-utils.c.patch b/pkg/wakaama/0006-fixed-warnings-in-utils.c.patch
new file mode 100644
index 0000000000000000000000000000000000000000..4b3c504ade98553576551499125ace2ed3c4d7f2
Binary files /dev/null and b/pkg/wakaama/0006-fixed-warnings-in-utils.c.patch differ
diff --git a/pkg/wakaama/Makefile b/pkg/wakaama/Makefile
new file mode 100644
index 0000000000000000000000000000000000000000..9c4b3014177d97b351d53cdc8d0bed1c779def90
--- /dev/null
+++ b/pkg/wakaama/Makefile
@@ -0,0 +1,38 @@
+PKG_NAME=wakaama
+PKG_URL=git://github.com/eclipse/wakaama.git
+PKG_VERSION=69a32cfae39f66fe4eec4cc8d1cd48ced7ad447c
+PKG_DIR=$(CURDIR)/$(PKG_NAME)
+PKG_TEMP_DIR=$(CURDIR)/temp
+
+.PHONY: all clean patch
+
+all: patch
+	"$(MAKE)" -C $(PKG_DIR)
+
+patch: $(PKG_DIR)/Makefile
+
+$(PKG_DIR)/Makefile: $(PKG_TEMP_DIR)/.git/config
+	echo 'include $$(RIOTBASE)/Makefile.base' > $(PKG_DIR)/Makefile
+
+$(PKG_TEMP_DIR)/.git/config:
+	test -d "$(PKG_TEMP_DIR)" || git clone "$(PKG_URL)" "$(PKG_TEMP_DIR)"; \
+		cd "$(PKG_TEMP_DIR)" && git checkout -f "$(PKG_VERSION)"; \
+		cd "$(PKG_TEMP_DIR)" && git am --ignore-whitespace "$(CURDIR)"/*.patch; \
+		mkdir -p "$(PKG_DIR)" ; \
+		cp $(PKG_TEMP_DIR)/core/*.c $(PKG_TEMP_DIR)/core/*.h $(PKG_DIR); \
+		cp $(PKG_TEMP_DIR)/core/er-coap-13/*.c $(PKG_TEMP_DIR)/core/er-coap-13/*.h $(PKG_DIR); \
+		rm -Rf "$(PKG_TEMP_DIR)"
+clean::
+	@echo "Cleaning up $(PKG_NAME) package..."
+	@cd "$(PKG_DIR)" 2> /dev/null > /dev/null && \
+		git clean -x -f && \
+		git am --abort && \
+		git reset --hard "$(PKG_VERSION)" && \
+		$(MAKE) patch || true
+
+
+distclean::
+	rm -rf "$(PKG_DIR)"
+
+Makefile.include:
+	@true
diff --git a/pkg/wakaama/Makefile.include b/pkg/wakaama/Makefile.include
new file mode 100644
index 0000000000000000000000000000000000000000..017dae1841f13d9753d6a86720a33f10c341ac04
--- /dev/null
+++ b/pkg/wakaama/Makefile.include
@@ -0,0 +1 @@
+INCLUDES += -I$(RIOTBASE)/pkg/wakaama/wakaama