Skip to content

Module Page Index

Every public Arc header has a generated website page with purpose, fit, CMake feature, source landmarks, zero-start steps, and the closest build or runtime proof path.

Use this page when you know the header name. Use the Module Guide when you only know the problem area.

Buses, Displays, And Data Capture

HeaderPurposePage
arc/adc.hppADC pad descriptors and oneshot reads.Open
arc/any.hppNo-heap type erasure for slow-path GPIO/I2C/SPI/UART-style drivers.Open
arc/can.hppTWAI/CAN ownership, filters, TX/RX, and counters.Open
arc/dvp.hppLCD_CAM DVP camera capture.Open
arc/i2c.hppI2C master bus and device ownership.Open
arc/i2c_slave.hppI2C slave ownership.Open
arc/i2s.hppStandard, TDM, and PDM I2S DMA lanes.Open
arc/i80.hppLCD_CAM Intel 8080 parallel output.Open
arc/otg.hppNative USB OTG PHY ownership.Open
arc/pru.hppPRU-style LCD_CAM/I2S descriptor output and parallel capture.Open
arc/rgb.hppRGB LCD panel output and frame-buffer ownership.Open
arc/scope.hppADC continuous DMA capture.Open
arc/sd.hppSD/MMC FAT mount and raw sector access.Open
arc/sdio_slave.hppSDIO slave coherent queue/finish semantics.Open
arc/spi.hppSPI master bus/device, transfer tickets, and coherent queue/finish.Open
arc/spi_slave.hppSPI slave queue/finish ownership.Open
arc/uart.hppUART ports, pins, framing, buffers, and runtime baud changes.Open
arc/usb.hppUSB Serial/JTAG byte IO.Open
arc/usb_device.hppUSB device descriptors, Chapter 9 state, class-facing FIFO bridges.Open
arc/usb_host.hppUSB host bring-up, polling, and transfer policy hooks.Open

Crypto, Security, VM, And Sandbox

HeaderPurposePage
arc/aes.hppAES block, stream modes, and GCM.Open
arc/blackbox.hppSealed Merkle-linked flight-recorder payloads.Open
arc/cert_bundle.hppCertificate-bundle policy hooks.Open
arc/chaos.hppBounded fault injection and postmortem logging.Open
arc/cloak.hppTiming/power side-channel policy hooks.Open
arc/crypto_dma.hppHardware-to-hardware crypto descriptor job planning.Open
arc/crypto_selftest.hppCaller-owned KAT-style crypto self-test workspaces.Open
arc/hmac.hppeFuse-keyed HMAC and temporary JTAG unlock.Open
arc/hotpatch.hppExecutable payload loading and IRAM detour policy hooks.Open
arc/hotswap.hppSigned native, BPF, and WASM hot-swap staging policy.Open
arc/hypervisor.hppRestricted partition planning and trap decisions.Open
arc/interrupt_matrix.hppDirect interrupt routing contracts.Open
arc/jit.hppBounded BPF-to-executable-word translation hooks.Open
arc/kyber.hppCaller-buffer ML-KEM-shaped polynomial/KEM surfaces.Open
arc/migrator.hppFixed fleet idle-core selection plus WASM snapshot, transport, and resume helpers.Open
arc/mpi.hppMove-only mbedTLS big integers.Open
arc/nvs_crypto.hppEncrypted-NVS policy hooks.Open
arc/paillier.hppModular arithmetic surfaces for encrypted telemetry aggregation.Open
arc/pms.hppESP32-S3 permission-control region facade.Open
arc/provisioning.hppProvisioning-state wrappers.Open
arc/puf.hppEntropy sampling, extraction, and key derivation hooks.Open
arc/secure_boot.hppSecure-boot state and policy hooks.Open
arc/sha.hppAccelerated SHA hashing.Open
arc/sign.hppDigital Signature peripheral operations.Open
arc/tee.hppSecure/non-secure world assignment planning.Open
arc/vm.hppBPF bytecode execution and sandbox helpers.Open
arc/wasm_aot.hppBounded WASM AOT translation policy surface.Open
arc/xts.hppEncrypted flash read/write helpers.Open

DSP, Control, ML, And Vision

HeaderPurposePage
arc/acoustic_slam.hppFMCW chirp, TDoA, range, and acoustic swarm helpers.Open
arc/cnc.hppKinematics and no-allocation G-code parsing.Open
arc/covert.hppPWM/Sigma-Delta FSK symbol planning for experimental air-gap channels.Open
arc/digital_twin.hppHIL plant stepping, fixed-horizon forecasting, and encoder-output policy hooks.Open
arc/dsp.hppDot/scale/mix/MAC, FIR, PID, biquad, SOS, and state-space kernels.Open
arc/ecs.hppStructure-of-arrays style entity/control data helpers.Open
arc/foc.hppBLDC field-oriented control and motor-control helpers.Open
arc/hil.hppHIL-facing helper types and evidence surfaces.Open
arc/hls.hppHLS-shaped fixed-loop kernels and silicon-plan metadata.Open
arc/hyper_matrix.hppFixed probability tensor fusion for swarm observations.Open
arc/isp.hppCaller-buffer camera ISP kernels.Open
arc/kalman.hppDeterministic Kalman correction helpers.Open
arc/lifi.hppManchester optical symbol generation.Open
arc/maglev.hppUnstable state-space control surfaces.Open
arc/matrix.hppFixed-size matrix math and adaptive LQR identification.Open
arc/ml.hppFixed-shape tensor, dense, quantized dense, conv, pool, and inference surfaces.Open
arc/motion.hppBounded synchronized motion plans.Open
arc/nav.hppESKF and quaternion navigation helpers.Open
arc/sdr.hppLCD_CAM pulse-stream preparation for SDR experiments.Open
arc/simd.hppExplicit S3-focused vector and image/math kernels.Open
arc/snn.hppSpike-driven inference primitives.Open
arc/star_tracker.hppStar centroid and catalog matching helpers.Open
arc/vision.hppSobel, optical flow, visual servo, and related vision kernels.Open
arc/vision_accel.hppPPA/JPEG/H264 frame and bitstream plan validation.Open
arc/vslam.hppVisual SLAM correction hooks.Open
arc/wavefront.hppMultichannel acoustic phase planning and synthesis.Open

Detail Headers

HeaderPurposePage
arc/detail/cold.hppInternal cold-path annotations.Open
arc/detail/owner.hppInternal move-only ownership helpers.Open
arc/detail/quant.hppInternal quantized rounding helpers.Open
arc/detail/scoped_result.hppInternal scoped-callback return-shape helpers.Open

GPIO, Timing, And Power

HeaderPurposePage
arc/bridge.hppComplementary MCPWM pairs with dead-time and optional brake input.Open
arc/burst.hppRMT symbol output.Open
arc/capture.hppMCPWM capture timestamps.Open
arc/clock.hppCycle counter and timing conversions.Open
arc/count.hppPCNT pulse and quadrature counting.Open
arc/drive.hppDedicated GPIO output.Open
arc/etm.hppEvent Task Matrix event/task/channel routing.Open
arc/flexroute.hppGPIO matrix routing and policy-based spare-route repair.Open
arc/fuse.hppeFuse, MAC, package, and secure-version reads.Open
arc/gpio.hppGeneral GPIO ownership.Open
arc/mask.hppTiny Xtensa interrupt masking guards.Open
arc/pm.hppCPU/APB/no-light-sleep PM locks.Open
arc/power_governor.hppSlack-based boost/release policy hooks.Open
arc/power_profiler.hppCurrent and instruction-counter profiling hooks.Open
arc/probe.hppCycle, jitter, deadline, and stall statistics.Open
arc/pulse.hppMCPWM waveform generation.Open
arc/pwm.hppLEDC hardware PWM.Open
arc/rng.hppHardware random bytes and values.Open
arc/rtc.hppRTC GPIO and retained RTC helpers.Open
arc/sense.hppDedicated GPIO input.Open
arc/sigma.hppSigma-Delta pulse-density output.Open
arc/sleep.hppLight/deep sleep entry and wake-source policy.Open
arc/tdma.hppDeterministic radio transmit windows.Open
arc/temp.hppInternal die-temperature sensor.Open
arc/time.hppGlobal SYSTIMER-backed microsecond time.Open
arc/timer.hppGPTimer timebase and alarm hooks.Open
arc/timesync.hppPeer clock discipline over fixed timestamp samples.Open
arc/touch.hppCapacitive touch controller and channel ownership.Open
arc/trace.hppRMT symbol capture.Open
arc/wave.hppCPU-owned square-wave generation with explicit timing-source policy.Open
arc/wdt.hppTask watchdog setup, users, and feeds.Open

Lock-Free Lanes

HeaderPurposePage
arc/fanin.hppOne SPSC lane per producer with round-robin draining.Open
arc/log.hppBinary event lane for realtime logs drained later by Core 0.Open
arc/mpsc.hppMany-producer/one-consumer fan-in with cache-line isolated or dense cells.Open
arc/postmortem.hppRTC no-init reboot-surviving diagnostic ring.Open
arc/rcu.hppDual-buffer latest configuration handoff.Open
arc/reg.hppSingle-word latest-wins values.Open
arc/rpc.hppTyped request/reply lanes over fixed queues.Open
arc/rtc_ring.hppRTC-memory SPSC lane for ULP/main-core handoff.Open
arc/seq.hppSeqlock-style latest snapshots for larger trivially copyable payloads.Open
arc/spsc.hppOne-producer/one-consumer queues, batch push/pop, and role endpoints.Open

Memory, DMA, And Placement

HeaderPurposePage
arc/axi_graph.hppCompile-time hardware graph planning over DMA endpoints and board trigger policy.Open
arc/cache.hppExplicit CPU-to-device and device-to-CPU cache ownership.Open
arc/cache_lock.hppPolicy facade for cache-locked hot code or data regions.Open
arc/caps.hppCapability-tagged buffers such as dmabuf, simdbuf, rtbuf, and allocators.Open
arc/copy.hppAsync DMA memcpy, exact tickets, and coherent copy leases.Open
arc/distributed_mmu.hppRemote span fault planning and deterministic cache-line fetch policy.Open
arc/dma_chain.hppStatic DMA descriptor rings and owned DMA-chain buffers.Open
arc/fram.hppExternal FRAM/MRAM offset allocation and typed persistence hooks.Open
arc/mmu_span.hppTyped read-only spans over mapped flash or PSRAM data.Open
arc/pipeline.hppDescriptor endpoint composition and 2D row binding.Open
arc/place.hppSection-placement aliases such as ARC_HOT, ARC_DMA, and ARC_RTC.Open
arc/pmr.hppCapability-aware polymorphic memory-resource hooks.Open
arc/prefetch.hppExplicit read/write prefetch hints for long memory walks.Open
arc/scrub.hppCRC sealing and background scan state for fixed memory regions.Open

Network, Radio, And Wire Protocols

HeaderPurposePage
arc/bft.hppBounded BFT vote collection and quorum certificates for fleet decisions.Open
arc/ble.hppNimBLE lifecycle, GAP, advertising, and scanning bridge.Open
arc/ble_mesh.hppBLE Mesh payload validation and policy hooks.Open
arc/coap.hppCoAP datagram codec.Open
arc/crdt.hppHeapless CRDT counters, registers, and fixed replicated-state frames.Open
arc/csi.hppWi-Fi CSI capture and feature extraction.Open
arc/eap.hppWPA2/WPA3 Enterprise setup for the shared STA radio.Open
arc/espnow.hppReusable ESP-NOW transport plane.Open
arc/ethernet.hppRaw Ethernet frame ring for policy-owned MAC/PHY paths.Open
arc/fabric.hppStatic TDMA mesh routing over ESP-NOW-style slots.Open
arc/ftm.hppWi-Fi FTM ranging and multilateration helpers.Open
arc/http.hppESP-IDF HTTP/HTTPS client RAII wrapper.Open
arc/http_server.hppSmall no-heap HTTP request parser, router, and response builder.Open
arc/ip.hppIP readiness and address-family helpers.Open
arc/mdns.hppmDNS host and service advertisement.Open
arc/mqtt.hppMQTT 3.1.1 codec and session helper.Open
arc/net.hppShared Wi-Fi radio base.Open
arc/netrpc.hppStruct-codec commands over radio or transport payloads.Open
arc/pack.hppFixed binary record schemas and struct codecs.Open
arc/pbuf.hppRAII lwIP packet-buffer ownership.Open
arc/poll.hppHeapless select() wrapper for caller-owned sockets.Open
arc/rdma.hppAligned raw Wi-Fi write-frame planning.Open
arc/stream.hppExact byte streams, length-prefixed frames, and small stream erasure.Open
arc/swarm.hppDistributed snapshots, schedules, and swarm helper types.Open
arc/tcp.hppDirect TCP client sockets.Open
arc/thread.hppThread/OpenThread policy bridge.Open
arc/tls.hppDirect ESP-TLS client sessions.Open
arc/tsn.hppTime-aware Ethernet gate schedule checks for deterministic transmit windows.Open
arc/udp.hppReusable Core 0 UDP transport plane.Open
arc/uri.hppHeapless URI parsing and percent encode/decode.Open
arc/w5500.hppPolicy-driven W5500 raw Ethernet path.Open
arc/ws.hppWebSocket handshake and frame codec.Open
arc/xrce.hppFixed-buffer DDS-XRCE message and submessage framing.Open

Observability And Trace

HeaderPurposePage
arc/mcap.hppFixed-buffer MCAP telemetry records.Open
arc/perfetto.hppCompact binary Perfetto trace records.Open
arc/trace_event.hppTrace-event JSON fragments from binary log events.Open
arc/trace_live.hppHalf-full trace chunk handoff to policy-owned sinks.Open
arc/trace_stream.hppDraining binary logs to UDP, WebSocket, file, or custom sinks.Open
arc/trax.hppXtensa TRAX instruction trace memory control.Open

Profile Modules

HeaderPurposePage
arc.hppCompatibility umbrella that exposes SDK-backed feature headers only when their ESP-IDF headers are visible.Open
arc/core.hppCore task shape, topology, init, GPIO, timing, queues, text, and basic storage-neutral substrate pieces.Open
arc/crypto.hppAES, SHA, HMAC, signatures, MPI, XTS, Kyber, Paillier, PUF, secure boot, and related security helpers.Open
arc/math.hppDSP, SIMD, fixed matrices, Kalman, motion, ML, and control math surfaces.Open
arc/memory.hppCapability buffers, cache ownership, DMA copy, descriptor chains, AXI graphs, pipelines, scrubbing, and placement helpers.Open
arc/net_codecs.hppURI, streams, fixed records, CRDTs, BFT votes, MQTT, WebSocket, CoAP, XRCE, and small HTTP server helpers without owning Wi-Fi.Open
arc/robotics.hppMotor control, CNC, motion, sensors, vision, DVP/LCD, digital twin, and robotics-oriented hardware paths.Open
arc/sandbox.hppVM, JIT, WASM AOT, hypervisor, PMS/TEE planning, hotpatch, chaos, and sandbox policy hooks.Open

Program Shape And Ownership

HeaderPurposePage
arc/audit.hppOpt-in misuse assertions for queues and topology-sensitive lanes.Open
arc/bare_core.hppTrue-AMP Core 1 boot contracts for board policies outside FreeRTOS.Open
arc/borrow.hppStatic-lifetime loans, one-writer edit packs, and loan-pack alias checks with core-owner access gates.Open
arc/bus.hppCompatibility naming for shared event/control buses.Open
arc/claim.hppRuntime hardware ownership claims.Open
arc/cli.hppFixed command parsing from caller-owned byte spans.Open
arc/coro.hppHeapless coroutine state machines using explicit arenas.Open
arc/fence.hppSmall memory-ordering helpers used by lock-free paths.Open
arc/flow.hppStatic source-lane-sink data path composition.Open
arc/fsm.hppCompile-time automata and transition-table checks.Open
arc/init.hppBoot-once and shared-reference init state machines.Open
arc/ipc.hppEmergency and cross-partition IPC policy surface.Open
arc/lockstep.hppDual-output comparison and policy hooks for lockstep safety checks.Open
arc/plane.hppStateful pinned workloads with explicit shared state.Open
arc/proof.hppCompile-time proof facts and cycle-budget packs for evidence-carrying workloads.Open
arc/roles.hppProducer/consumer endpoint exposure without exposing root queue mutation.Open
arc/rtos.hppSafe chrono-to-FreeRTOS tick conversion helpers.Open
arc/sim.hppHost simulator FIFO, SPI byte lane, trace log, harness ticks, and pin drive/sense facades for app logic tests.Open
arc/sketch.hppCompatibility alias for small app-style programs.Open
arc/stack.hppCompile-time stack budget helpers and task stack floors.Open
arc/task.hppStatic FreeRTOS task memory and pinned task bring-up.Open
arc/text.hppFixed-buffer text, JSON escaping, integer formatting, and format_to.Open
arc/tight.hppMasked deterministic step loops for the rare very-low-jitter path.Open
arc/topology.hppOne-file board pin topology checks through arc::Pins.Open
arc/watch.hppLightweight watch/check helpers for policy code.Open

Storage And Update

HeaderPurposePage
arc/file.hppRAII FILE* ownership for mounted VFS paths.Open
arc/flash_log.hppFixed-record queue flushed through a storage sink.Open
arc/flash_off.hppPolicy guard for flash/cache-off critical sections.Open
arc/fs.hppSPIFFS and FAT-on-flash VFS mounts.Open
arc/ota.hppStaged OTA write, slot state, confirm, and rollback.Open
arc/secure_update.hppDecrypt/verify/write policy composition for encrypted OTA streams.Open
arc/space.hppFlash, partition, image, and heap capacity reporting.Open
arc/store.hppTyped NVS blobs and fixed text config.Open

Target And Naming Contract

HeaderPurposePage
arc/arch/riscv.hppRISC-V architecture facts for experimental/ULP paths.Open
arc/arch/xtensa.hppXtensa-specific core and interrupt facts.Open
arc/assume.hppOptimizer and unreachable-code hints where a contract has already been checked.Open
arc/cfg.hppKconfig-backed Arc defaults used by examples and the root app.Open
arc/concepts.hppSmall compile-time contracts for payloads, digital IO, buses, waves, and control results.Open
arc/result.hpparc::Result<T>, arc::Status, ARC_TRY, and ARC_CHECK.Open
arc/sdk.hppSDK-facing compatibility helpers.Open
arc/soc.hppCompile-time ESP32 target capability map.Open
arc/soc/esp32p4.hppESP32-P4 target facts.Open
arc/soc/esp32s3.hppESP32-S3 target facts.Open
arc/soc/esp32s31.hppExperimental ESP32-S31 target facts.Open
arc/soc/target.hppShort target-selection constants.Open

ULP And Low-Power Coprocessor

HeaderPurposePage
arc/intermittent.hppRTC no-init checkpoints for brownout/intermittent execution.Open
arc/lp_core.hppESP32-P4 LP-core entry tags, image metadata, and shared handoff lanes.Open
arc/ulp.hppULP RISC-V/FSM load, run, interrupt, and shared memory controls.Open
arc/ulp_asm.hppCompile-time ULP RISC-V program assembly.Open
arc/ulp_cxx.hppTiny C++ builder, GPIO/I2C/ADC, and SleepFsm-style ULP building blocks.Open
arc/ulp_ml.hppULP-side int8 dense inference and semantic/audio wake helpers.Open

ESP32-S3 first. ESP-IDF native. Static ownership by default.