If you’ve worked with embedded Linux long enough, you’ve probably spent a fair amount of time navigating Device Trees.
Following phandle references, figuring out which clocks or regulators a peripheral depends on, tracing pinctrl configurations, understanding address cells, or simply trying to make sense of an unfamiliar board description.
I’ve certainly spent enough time doing that.
So I started working on DTSee, a free, browser-based Device Tree explorer.
What it does
DTSee accepts both DTS (Device Tree Source) and compiled DTB (Device Tree Blob) files.
It provides an interactive hardware hierarchy, graphical relationships between nodes, phandle analysis, and a hardware-aware inspector.
Select a peripheral and you can explore its properties, decoded register ranges, interrupt controllers, clocks, GPIOs, regulators, pin configurations, and other recognized dependencies.
The goal is to make navigating and understanding a Device Tree a little less tedious, particularly when working with unfamiliar hardware.
One detail I’m particularly happy with is native DTB support. You can drop a compiled Device Tree directly into the browser without manually running dtc first.
Everything is processed locally. No board descriptions are uploaded to a server.
Of course, a reconstructed DTS cannot recover comments, original include files, or source-level override history from a compiled blob.
Example of an i2c node declared within ‘soc’ bus:


Still a work in progress
DTSee is currently in beta.
I’ve been testing it against real board descriptions and different platforms.
There’s still plenty to improve, especially around binding-specific relationships and the interpretation of complex hardware configurations. DTSee isn’t intended to replace dtc, dt-schema, or the kernel’s existing validation tools.
I’m also exploring a few directions for future versions:
- Comparing Device Trees and highlighting meaningful hardware changes.
- Deeper dependency analysis for individual peripherals.
- Tracking property definitions and overrides across DTS/DTSI source files.
- Better integration with existing Device Tree validation workflows.
Nothing set in stone yet.
Give it a try
If you work with embedded Linux and have a DTS or DTB lying around, I’d be interested in hearing what you think.
Incorrect interpretations, missing relationships, usability problems, or ideas for features that could make the tool genuinely useful during board bring-up and debugging, all feedback is welcome.
DTSee: https://dt.kernelnoise.com
Built as part of Kernel Noise Labs.