# Summary - [Preparations](./preparations.md) - [Checking the Hardware](./hardware.md) - [Installation Instructions](./installation.md) - [Tooling check](./tooling-check.md) - [Beginner Workbook](./beginner-workbook.md) - [Parts of an Embedded Program](./parts-embedded-program.md) - [Building an Embedded Program](./building-program.md) - [Binary Size](./binary-size.md) - [Running the Program](./running-from-vsc.md) - [Panicking](./panicking.md) - [Using a Hardware Abstraction Layer](./using-hal.md) - [Timers and Time](./time.md) - [nRF52840 Dongle](./dongle.md) - [Radio Out](./radio-out.md) - [Radio Setup](./radio-setup.md) - [Messages](./messages.md) - [Link Quality Indicator (LQI)](./link-quality.md) - [Radio In ](./radio-in.md) - [Radio Puzzle](./radio-puzzle.md) - [Radio Puzzle Help](./radio-puzzle-help.md) - [Next Steps](./beginner-next-steps.md) - [Collision avoidance](./collision-avoidance.md) - [Interrupt handling](./interrupt-handling.md) - [Starting a Project from Scratch](./from-scratch.md) - [Advanced Workbook](./advanced-workbook.md) - [Code Organization](./code-organisation.md) - [Listing USB Devices](./listing-usb-devices.md) - [Hello, world!](./hello-world.md) - [Checking the API documentation](./api-documentation.md) - [RTIC hello](./rtic-hello.md) - [Dealing with Registers](./dealing-with-registers.md) - [Event Handling](./event-handling.md) - [Task State](./task-state.md) - [USB Enumeration](./usb-enumeration.md) - [USB-1: Dealing with USB Events](./usb-events.md) - [USB Endpoints](./usb-endpoints.md) - [Control Transfers](./control-transfers.md) - [USB-2: SETUP Stage](./setup-stage.md) - [Device Descriptor](./device-descriptor.md) - [USB-3: DATA Stage](./data-stage.md) - [DMA](./dma.md) - [USB-4: Supporting more Standard Requests](./supporting-standard-requests.md) - [Error Handling](./error-handling.md) - [Updating Device State](./updating-device-state.md) - [Dealing with Unknown Requests](./unknown-requests.md) - [SET_ADDRESS](./set-address.md) - [Handling GET_DESCRIPTOR Configuration Requests](./get-descriptor-config.md) - [Configuration descriptor](./configuration-descriptor.md) - [Interfaces](./interfaces.md) - [Interface descriptor](./interface-descriptor.md) - [Endpoint descriptor](./endpoint-descriptor.md) - [Response](./get-descriptor-config-response.md) - [SET_CONFIGURATION (Linux & Mac OS)](./set-config.md) - [Idle State](./idle-state.md) - [Inspecting the Descriptors](./inspecting-descriptors.md) - [Getting it Configured](./getting-device-configured.md) - [Next Steps](./advanced-next-steps.md) - [Stack Overflow Protection](./stack-overflow-protection.md) - [References and Resources](./references-resources.md) - [Tooltips](./tooltips.md) - [Troubleshooting](./troubleshooting.md) - [`cargo-size` is not working](./troubleshoot-cargo-size.md) - [`cargo-flash` is not working](./troubleshoot-cargo-flash.md) - [Rust analyzer is not working](./troubleshoot-rust-analyzer.md) - [`cargo-build` fails to link](./troubleshoot-cargo-build.md) - [`dongle-flash` is not working](./troubleshoot-dongle-flash.md) - [Dongle USB functionality is not working](./troubleshoot-usb-dongle.md) - [`cargo run` errors](./troubleshoot-cargo-run-error.md) - [`no probe was found` error](./troubleshoot-probe-not-found.md) - [`location info is incomplete` error](./troubleshoot-location-info.md) - [DEPRECATED - `nrfutil` setup](DEPRECATED-nrfutil-setup.md) - [Appendix](./appendix.md) - [Using GDB](./gdb.md)