diff --git a/.travis.yml b/.travis.yml
index 0b1a6d65f..84c1ddcca 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -2,6 +2,13 @@ language: bash
 os: linux
 dist: trusty
 
+git:
+  depth: 1
+  submodules: false
+
+before_install:
+  - git submodule update --init  # no recursive update
+
 cache:
   directories:
     - $HOME/astyle
diff --git a/package/build_boards_manager_package.sh b/package/build_boards_manager_package.sh
index be0ce0366..8ac60d7a1 100755
--- a/package/build_boards_manager_package.sh
+++ b/package/build_boards_manager_package.sh
@@ -48,15 +48,6 @@ srcdir=$PWD
 rm -rf package/versions/$ver
 mkdir -p $outdir
 
-# Get submodules
-modules=libraries/SoftwareSerial
-for mod in $modules; do
-    echo "refreshing submodule: $mod"
-    git submodule update --init -- $mod
-    (cd $mod && git reset --hard)
-done
-echo "done with submodules"
-
 # Some files should be excluded from the package
 cat << EOF > exclude.txt
 .git