Pre-Production — First 100 units shipping Q3 2026. Register your interest →

Adding Content

Loading your own maps, books, media, and AI models

MuleCube comes pre-loaded with essential content, but you can add your own maps, books, media, and documents. This guide shows you how.

Content Overview

Content TypeServiceLocationFormats
Wikipedia/ReferenceKiwix/srv/kiwix/data/.zim
MapsTileserver/srv/maps/data/.mbtiles, .pmtiles
E-BooksCalibre/srv/calibre/library/.epub, .mobi, .pdf
MediaJellyfin/srv/jellyfin/media/.mp4, .mkv, .mp3
DocumentsCryptPad/Files/srv/Documents/Any
AI ModelsOllama/srv/ollama/models/GGUF

Prerequisites

For adding content, you’ll need:

  • USB drive (formatted as exFAT or ext4)
  • Or temporary internet connection
  • Or access via Syncthing

Adding Wikipedia & Reference Content (Kiwix)

Available Content

Download ZIM files from: https://library.kiwix.org

Popular packages:

ContentSizeDescription
Wikipedia (English)95GBFull English Wikipedia with images
Wikipedia (Simple)1.5GBSimplified English, great for kids
Wiktionary5GBDictionary and thesaurus
Wikivoyage700MBTravel guides worldwide
Stack Overflow20GBProgramming Q&A
TED Talks15GBEducational videos
Khan Academy30GBMath & science courses
Medical (WikiMed)800MBMedical encyclopedia

Adding ZIM Files via USB

  1. Download ZIM file on a computer with internet
  2. Copy to USB drive
  3. Connect USB to MuleCube
  4. Copy to Kiwix directory:
# Find your USB drive
lsblk

# Mount if needed
sudo mount /dev/sda1 /mnt

# Copy ZIM file
sudo cp /mnt/wikipedia_en_all.zim /srv/kiwix/data/

# Restart Kiwix to detect new content
cd /srv/kiwix && docker compose restart
  1. Access new content at http://192.168.42.1:8080

Adding ZIM Files via Download

If temporarily connected to internet:

# Download directly (example: Simple English Wikipedia)
cd /srv/kiwix/data/
wget https://download.kiwix.org/zim/wikipedia_en_simple_all.zim

# Restart Kiwix
cd /srv/kiwix && docker compose restart

Adding Offline Maps

Map Sources

SourceDescriptionFormat
OpenMapTilesStreet maps.mbtiles
ProtomapsModern vector tiles.pmtiles
OpenTopoMapTopographic maps.mbtiles

Download from:

Adding Map Tiles

  1. Download map file for your region
  2. Copy to MuleCube:
# Via USB
sudo cp /mnt/netherlands.mbtiles /srv/maps/data/

# Or via SCP from another computer
scp netherlands.mbtiles pi@192.168.42.1:/srv/maps/data/
  1. Update map configuration:
sudo nano /srv/maps/config.json

# Add your new map source
  1. Restart map service:
cd /srv/maps && docker compose restart
RegionFile SizeCoverage
World (basic)5GBAll countries, low detail
Europe15GBDetailed European maps
North America12GBUS, Canada, Mexico
Netherlands500MBDetailed local maps
Custom regionVariesGenerate at openmaptiles.org

Adding E-Books (Calibre)

Supported Formats

  • EPUB (recommended)
  • MOBI / AZW3 (Kindle)
  • PDF
  • TXT, RTF, HTML
  • CBZ, CBR (comics)

Method 1: Web Upload

  1. Go to http://192.168.42.1:8083
  2. Click Upload or drag-and-drop files
  3. Books are automatically added to library

Method 2: USB Transfer

# Copy from USB
sudo cp -r /mnt/ebooks/* /srv/calibre/library/

# Rescan library
cd /srv/calibre && docker compose exec calibre calibredb add /library/

Method 3: Calibre Desktop Sync

On your computer with Calibre:

  1. Install Calibre desktop
  2. Connect to MuleCube via network
  3. Use “Connect/Share” → “Connect to server”
  4. Transfer books directly

Organizing Books

  • Tags: Add tags for easy filtering
  • Shelves: Create custom collections
  • Metadata: Edit title, author, description
  • Covers: Upload custom cover images

Free E-Book Sources

SourceContent
Project Gutenberg60,000+ classic books
Standard EbooksBeautifully formatted classics
Open LibraryMillions of books
ManyBooksFree EPUB downloads

Adding Media (Jellyfin)

Supported Formats

Video: MP4, MKV, AVI, MOV, WebM Audio: MP3, FLAC, AAC, OGG, WAV Images: JPG, PNG, GIF

Directory Structure

/srv/jellyfin/media/
├── movies/
│   └── Movie Name (2024)/
│       └── Movie Name (2024).mp4
├── tv/
│   └── Show Name/
│       └── Season 01/
│           └── Show Name - S01E01 - Episode Title.mp4
├── music/
│   └── Artist Name/
│       └── Album Name/
│           └── 01 - Track Name.mp3
└── photos/
    └── Event Name/
        └── photo001.jpg

Adding Media

# Create directories
sudo mkdir -p /srv/jellyfin/media/{movies,tv,music,photos}

# Copy from USB
sudo cp -r /mnt/movies/* /srv/jellyfin/media/movies/

# Set permissions
sudo chown -R 1000:1000 /srv/jellyfin/media/

# Scan library in Jellyfin web UI
# Go to Dashboard → Libraries → Scan All Libraries

Optimizing for MuleCube

For smooth playback on Pi 5:

  • Resolution: 1080p recommended (4K may stutter)
  • Codec: H.264 preferred (hardware decoding)
  • Bitrate: Under 20Mbps for reliable streaming
  • Audio: AAC or MP3 for compatibility

Media Preparation

Use HandBrake to optimize videos:

  1. Output: MP4 (H.264)
  2. Resolution: 1080p or 720p
  3. Quality: RF 20-23
  4. Audio: AAC 192kbps

Adding AI Models (Ollama)

Available Models

ModelSizeStrengths
phi3:mini2.3GBFast, general purpose
llama2:7b4GBGood reasoning
mistral:7b4.1GBCoding, analysis
deepseek-r1:7b4.7GBComplex reasoning
qwen2.5:7b4.4GBMultilingual

Adding New Models

# Enter Ollama container
docker exec -it ollama ollama pull mistral:7b

# Or via API
curl http://192.168.42.1:11434/api/pull -d '{"name": "mistral:7b"}'

Removing Models

docker exec -it ollama ollama rm model_name

Model Recommendations

Use CaseRecommended Model
Quick questionsphi3:mini
Writing/creativeqwen2.5:7b
Codingdeepseek-coder
Analysisdeepseek-r1:7b
Multilingualqwen2.5:7b

Adding Custom Documents

Shared Documents Folder

For general file storage:

# Location
/srv/Documents/

# Copy files
sudo cp -r /mnt/important-docs/* /srv/Documents/

# Access via File Browser
# http://192.168.42.1:8085

Syncthing Folders

For continuous sync between devices:

  1. Go to http://192.168.42.1:8384
  2. Add folder to sync
  3. Share with your other devices
  4. Files stay synchronized

Content via Syncthing

Syncthing enables continuous synchronization:

Setup

  1. On MuleCube: http://192.168.42.1:8384
  2. On your computer: Install Syncthing
  3. Exchange device IDs
  4. Create shared folder
  5. Content syncs automatically

Use Cases

  • Sync ebook library from main computer
  • Continuous backup of expedition notes
  • Share maps with team members
  • Keep documents updated across devices

Storage Management

Check Available Space

# On dashboard stats bar
# Or via terminal:
df -h /srv

Pre-installed Content Size

ContentSize
Wikipedia EN~95GB
Offline maps~10GB
AI models~15GB
System & services~20GB
Typical used:~140GB
Available (256GB):~100GB

Cleanup Tips

# Remove unused Docker images
docker image prune -a

# Clear old logs
sudo journalctl --vacuum-time=7d

# Remove unused Kiwix content
rm /srv/kiwix/data/old_file.zim

Content Backup

Before making major changes:

# Backup critical content
sudo tar -czvf /backup/content-$(date +%Y%m%d).tar.gz \
    /srv/calibre/library/ \
    /srv/Documents/ \
    /srv/cryptpad/data/

Troubleshooting

Content Not Appearing

  1. Check file permissions:
ls -la /srv/service/data/
sudo chown -R 1000:1000 /srv/service/data/
  1. Restart the service:
cd /srv/service && docker compose restart
  1. Check service logs:
docker logs service_name

USB Drive Not Detected

# List all drives
lsblk

# Check for drive
sudo fdisk -l

# Mount manually
sudo mount /dev/sda1 /mnt

Out of Storage

# Find large files
du -sh /srv/* | sort -h

# Consider removing:
# - Unused ZIM files
# - Old media
# - Unused AI models

Quick Reference

Content TypeLocationAdd Method
Wikipedia/srv/kiwix/data/Copy .zim files
Maps/srv/maps/data/Copy .mbtiles
Books/srv/calibre/library/Web upload or copy
Media/srv/jellyfin/media/Copy to subfolders
Documents/srv/Documents/File Browser or copy
AI ModelsOllama containerollama pull command
MuleCube — Knowledge that travels with you ✓ 2-Year Warranty ✓ 30-Day Returns
Find Your MuleCube