Avatar²
github.com
What it is
Avatar² is a free Python framework for dynamic analysis of embedded-device firmware. It coordinates targets, memory layouts and execution plans so firmware execution can be divided across multiple targets. Targets communicate through protocols with emulators, analysis frameworks or physical devices. The handbook documents GDB, OpenOCD, J-Link, QEMU and PANDA targets. OpenOCDTarget connects to physical targets over JTAG, while JLinkTarget supports SWD and JTAG. PANDA support includes recording and replaying execution and managing analysis plugins. Memory layouts define regions and rules for forwarding reads and writes between targets. The project documents installation through pip, from source or in Docker, where QEMU and PANDA are the defaults. It lists Linux support and ARM Cortex-M3 and x86-64 architectures. The README provides target build scripts for Ubuntu 20.04; other distributions are not officially supported, though they may work with modifications. The project uses the Apache-2.0 license and is maintained by EURECOM's Software and System Security Group. Maintainers direct users to a public mailing list and an invite-based Slack community.
Spec sheet
- Purpose
- Avatar² is a target orchestration framework for dynamic analysis of embedded-device firmware.Read 7 Oct 2026 · github.com
- Audience
- The project describes its framework as designed for analysts working with dynamic analysis of embedded devices.Read 7 Oct 2026 · github.com
- Support
- The maintainers direct users to a public mailing list and an invite-based Slack community.Read 7 Oct 2026 · github.com
- License
- The repository identifies its license as Apache-2.0.Read 7 Oct 2026 · github.com
- Distribution
- The project README documents installation with pip, from source, or in Docker, with QEMU and PANDA as the Docker defaults.Read 7 Oct 2026 · github.com
- Hardware access
- OpenOCDTarget connects to physical targets over JTAG, and JLinkTarget supports SWD and JTAG.Read 7 Oct 2026 · github.com
- Maintainer
- Avatar² is developed and maintained by EURECOM's Software and System Security Group.Read 7 Oct 2026 · github.com
- Memory forwarding
- The memory layout describes memory regions and rules for forwarding reads and writes between targets.Read 7 Oct 2026 · github.com
- Multi-target analysis
- It coordinates targets, memory layouts, and execution plans to divide firmware execution across targets.Read 7 Oct 2026 · github.com
- PANDA capabilities
- PANDA support includes execution recording and replay and loading, unloading, and listing analysis plugins.Read 7 Oct 2026 · github.com
- Platform limits
- The README provides target build scripts for Ubuntu 20.04 and says other distributions are not officially supported, though they may work with modifications.Read 7 Oct 2026 · github.com
- Supported targets
- The handbook documents GDB, OpenOCD, J-Link, QEMU, and PANDA targets.Read 7 Oct 2026 · github.com
- Target architecture
- Targets communicate with endpoints such as emulators, analysis frameworks, or physical devices through protocols.Read 7 Oct 2026 · github.com
Plans and prices
Strong points and limits
Strong points
- Coordinates multiple targets and memory layouts.
- Documents GDB, OpenOCD, J-Link, QEMU and PANDA.
- PANDA supports execution recording and replay.
- Supports physical JTAG and SWD access.
- Free under the Apache-2.0 license.
Limits
- Ubuntu 20.04 is the documented build-script target.
- Other distributions are not officially supported.
- Slack access is invite-based.
Who it suits
It suits analysts conducting dynamic analysis of embedded-device firmware who need to coordinate execution across targets. Users can install it with pip, from source or in Docker, with Linux listed as supported.
Verdict
Avatar² provides a multi-target framework with documented emulator, analysis and physical-device connections. Its documented build support centers on Ubuntu 20.04; other distributions may require modifications.
Where Specifiction places it
- Reverse Engineering Tools#17 of 737.9
- AI Video Lip Sync Tools#9 of 288.0