Skip to content

Documentation improvements#3278

Merged
hathach merged 14 commits intohathach:masterfrom
c1570:improved_docs
Nov 11, 2025
Merged

Documentation improvements#3278
hathach merged 14 commits intohathach:masterfrom
c1570:improved_docs

Conversation

@c1570
Copy link
Contributor

@c1570 c1570 commented Oct 4, 2025

Describe the PR
This streamlines documentation quite a bit:

  • first and foremost, this improves "getting started" in many regards.
    • improving text flow (starts with examples rather than setup details)
    • simplifies the example code to a common case rather than the corner tud+tuh case
    • streamlines details that don't really belong in a getting started document, like IAR
    • improves and rearranges headlines so that the TOC becomes more useful
    • links to source where appropriate
  • this adds a couple of pages
    • architecture overview
    • glossary
    • FAQ
    • troubleshooting

Additional context
Note that an LLM has been used for creating this; there has been quite a lot of manual review work of course (I'm a rather new user of TinyUSB though so please check).

I leave this as a Draft for now; I'm down for investing more work into this but want to make sure first that there's general interest @hathach

Copy link
Owner

@hathach hathach left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

brilliant, I would also use LLM to generate majority of documents and do manual touch-up as well. For quick glance, this is indeed greatly improve the documentation. Please keep up your good works, we will merge this for sure.

@c1570
Copy link
Contributor Author

c1570 commented Oct 20, 2025

Great! I added terjr's changes and tested the steps in getting_started, and it seems fine.
I also tested the actual HTML rendering, but it seems some styling is missing locally (also in the original build).
I'm not sure about the FAQ page - while a project should have one, this is mostly generated, and I cannot really verify it. If in doubt we can just delete it for now.
Please review. :)

@c1570 c1570 marked this pull request as ready for review October 20, 2025 19:20
@HiFiPhile
Copy link
Collaborator

Thank you, actually CMake is more used today, either full command:

cmake -DBOARD=stm32f723disco -B build -G Ninja .  # "-G Ninja" is required on Windows
cmake --build build

Or preset:

cmake --preset stm32f723disco
cmake --build --preset stm32f723disco

For esp32 only CMake works since their SDK only support CMake, whole step is:

  1. source esp-idf
  2. Enter example folder
  3. cmake --preset espressif_s3_devkitc
  4. cmake --build --preset espressif_s3_devkitc

@c1570
Copy link
Contributor Author

c1570 commented Oct 20, 2025

Thank you, actually CMake is more used today

Yes I noticed in testing that RP2040 also gives an error on make (similar to ESP32 probably).

Is there an equivalent to make ... all flash?

@HiFiPhile
Copy link
Collaborator

Thank you, actually CMake is more used today

Yes I noticed in testing that RP2040 also gives an error on make (similar to ESP32 probably).

Is there an equivalent to make ... all flash?

You can build all examples at once by cd into example parent folder tinyusb/examples/device then do the step above. For flashing with J-Link cmake --build --preset stm32h7s3nucleo --target audio_test_freertos-jlink

You can find other supported flasher in family_support.cmake

@c1570
Copy link
Contributor Author

c1570 commented Oct 21, 2025

Thanks, I updated the docs to use CMake as default.

Copy link
Owner

@hathach hathach left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

thank you very much for putting efforts to improve the documentation, which is much needed. I make some changes to also add make instruction which is still very popular, and move things around. This will surely help lots of new users

@hathach hathach merged commit 8a094e8 into hathach:master Nov 11, 2025
165 of 169 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants