Summer break is here and I'm already kicking the ball off down the hill. Three kids on the Summer Learning program at home β 8, 6, and 4 β each with an iPad. Each iPad has one job: 2 hours of structured learning a day. Their choice when, but it locks down at bedtime.
Here's the stack we set up and how I made it stick.
π§ The kids + their apps β’ 8yo β MiaCademy. Full K-12 curriculum, ~$15/mo, no ads, daily lessons unlock on a streak β’ 6yo β ABCmouse + LingoKids. Phonics, basic math, second-language exposure β’ 4yo β same: ABCmouse + LingoKids. ~10 days in and counting to 20 unprompted
The iPad itself will only open those apps. Nothing else.
π The infrastructure Each iPad has an Apple Configuration Profile that: β’ Locks the device to a separate WiFi (DizyDiz_Kids) β’ Forces SafeSearch on Google, disables iCloud Private Relay + DNS-over-HTTPS β’ Installs my CA so the firewall can see hostnames β’ Device only works on the kids' wifi β no sneaking iPads out, they're learning tools, not toys
That WiFi is on its own VLAN (KIDS, 10.7.21.0/24) on home pfSense. The DNS server for that VLAN: 1) Blocks ~683,000 ad/tracker/malware/adult/VPN domains by default 2) Allowlists ONLY the edu app hostnames β MiaCademy, ABCmouse, LingoKids 3) Rewrites google.com + youtube.com to force SafeSearch + YouTube Restricted
β° Bedtime At 8 PM the entire VLAN's internet drops via a pfSense schedule. Even if they sneak the iPad under the pillow β without internet, none of the apps work past cached lessons.
π Accountability Every Saturday at 6 PM the firewall renders a per-iPad weekly report (top hostnames, blocked queries, daily totals) to a private URL only April and I have. If a kid's device hits a blocked category like "vpn", Discord pings me in real time. Already a handful of "interesting" queries flagged in week one β defense in depth pays off.
π Result so far Three weeks in, the 8yo asks for the iPad in the morning because MiaCademy unlocks a new lesson daily. The 6yo loves the LingoKids songs. The 4yo is now the household's resident counting champion.
Two hours a day of brain-on, with the rest of the distraction surface just⦠not there. No daily yelling match about "one more video."
Full pfSense config (allowlist, DNSBL, bedtime schedule, weekly-report cron) + the Apple Configuration Profile build script on the blog π
#ParentingTech #SummerLearning #pfSense #FamilyTech #ScreenTime
β Continue reading at https://dizydiz.com/blog/kids-ipads-summer-learning.html