• Skip to main content
  • Skip to after header navigation
  • Skip to site footer

Reswitched TECH

Documenting the Nintendo Switch hardware, software, and development.

  • Home

Open Source Software used on the Nintendo Switch

The Nintendo Switch uses a myriad of open source software for its operating system and applications. Sources for many of the OSS components can be found here, separated by System Version. Also mirrored on Github here.

OSS listed under System Setting’s Intellectual Property Notices :

This list and the relevant licenses can be found in the System Settings, under System>Intellectual Property Notices. This list is up to date as of System Version 2.0.0. Non-specific listings such as “Khronos” and “Android related” were excluded, given there is currently no way to know exactly what software is being used.

Name

Description

Use on the Switch

libnfc-nci Linux’s near-field-communication stack. Likely used for communicating with Amiibos.
curl and libcurl Tool and library for client-side URL transfers, supports just about every protocol imaginable.
FreeBSD Kernel The kernel from the FreeBSD operating system. Code from this is likely used for its network stack.
The Switch does not run FreeBSD as its operating system kernel.
libopus Modern audio-compression codec primarily focused on internet-enabled streaming.
libstrophe C library for creating XMPP clients.
libxml2 XML parser and toolkit written in C.
Network Security Services (NSS) Set of libraries developed by Mozilla for secure client-server communications, supports SSL and TLS.
Netscape Portable Runtime (NSPR) Platform agnostic API for OS facilities, used by NSS.
MUSL libc C standard library intended for Linux kernel-based operating systems.
WPA Supplicant Platform agnostic supplicant used to support secured networks. Likely used by to communicate with WiFi networks secured by WEP, WPA, or WPA2.
Unicode Common Locale Data Repository (CLDR) XML-based repository for data and documentation for supporting multiple locales. Likely used to support multiple languages/locales.
Zepto.js JavaScript library for modern web browsers. Likely used by various applications to support JavaScript.
Giflib Library for processing GIF-format images. Likely used by various applications to support GIF images.
LZ4 Library Lossless compression algorithm that supports multi-threading.
VP8 and VP9 Open-source video compression formats developed by Google.
libvorbis Reference implementation of the Ogg Vorbis format for audio.
libwebm Parser for WebM files, an open source video format sponsored by Google.
RapidJSON JSON parser and generator for C++.
WebKit Open source rendering engine for web browsers.
OpenSSL TLS/SSL crypto library
International Components for Unicode (ICU) C, C++, and Java libraries used to support Unicode. Likely used along with CLDR to fully support Unicode.
cairo 2D graphics library with support for multiple output devices.
pixman Low-level library for pixel manipulation.
libzip C library for reading, creating, and modifying ZIP archives.
libjpeg C library for reading and writing JPEG images.
libjpeg-turbo JPEG image codec using SIMD instructions to speed up JPEG (de)compression.
libwebp WebP image codec, a format developed by Google to provide superior quality to JPEG with the same or smaller file size.
nghttp2 C library for supporting HTTP/2.
Kiss FFT Library for doing Fast Fourier Transforms.
STM32L0xx HAL Driver Hardware Abstraction Layer driver for STM32L0xx-based micro-controller units (MCUs).
STM32 USB Device Library

Reswitched

Documenting the Nintendo Switch hardware, software, and development among other gaming products.

Newsletter

This is a demo newsletter sign up form for demo purposes only.

No spam, ever.

Copyright © 2022 · Reswitched TECH · All Rights Reserved ·