Skip to content

Conversation

nerdCopter
Copy link
Member

@nerdCopter nerdCopter commented Aug 20, 2025

Summary by CodeRabbit

  • Documentation
    • Added six manufacturers: EMAX, FLHB, FLMO (no contact), GEEL, SDRC, SU25 — names and contact URLs where available.
    • Renamed JHEF to "Shenzhen Jinhang Electronic Co., Ltd" (URL unchanged).
    • Minor content reflow and formatting adjustments; changes are limited to public manufacturer listings and do not alter functionality.

Adds new manufacturers from issue betaflight#873 and sorts the entire list alphabetically.
Copy link
Contributor

coderabbitai bot commented Aug 20, 2025

Warning

Rate limit exceeded

@haslinghuis has exceeded the limit for the number of commits or files that can be reviewed per hour. Please wait 22 minutes and 1 seconds before requesting another review.

⌛ How to resolve this issue?

After the wait time has elapsed, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout.

Please see our FAQ for further information.

📥 Commits

Reviewing files that changed from the base of the PR and between 9cc05ee and 17844c7.

📒 Files selected for processing (1)
  • Manufacturers.md (5 hunks)

Walkthrough

Updated Manufacturers.md: added six new manufacturer entries (EMAX, FLHB, FLMO, GEEL, SDRC, SU25), renamed JHEF from JHE_FPV to "Shenzhen Jinhang Electronic Co., Ltd", and applied minor formatting/reflow; no source code or API changes. (34 words)

Changes

Cohort / File(s) Summary of edits
Manufacturer data
Manufacturers.md
Added manufacturer rows: EMAX (https://emaxmodel.com/), FLHB (https://flashhobby.com/), FLMO (no contact), GEEL (https://geelang.com/), SDRC (https://www.sdmodel.com.tw/), SU25 (https://sub250.com/). Renamed JHEF from JHE_FPV to "Shenzhen Jinhang Electronic Co., Ltd" (URL unchanged). Minor formatting/reflow; no functional code changes.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Possibly related PRs

Suggested labels

New manufacturer, Housekeeping

Suggested reviewers

  • ot0tot
✨ Finishing Touches
🧪 Generate unit tests
  • Create PR with unit tests
  • Post copyable unit tests in a comment

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share
🪧 Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>, please review it.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.

Support

Need help? Create a ticket on our support page for assistance with any issues or questions.

CodeRabbit Commands (Invoked using PR/Issue comments)

Type @coderabbitai help to get the list of available commands.

Other keywords and placeholders

  • Add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.
  • Add @coderabbitai summary or `` to generate the high-level summary at a specific location in the PR description.
  • Add @coderabbitai anywhere in the PR title to generate the title automatically.

Status, Documentation and Community

  • Visit our Status Page to check the current availability of CodeRabbit.
  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.

@nerdCopter
Copy link
Member Author

see #873 (comment) -- will update JMI based upon feedback.

@nerdCopter nerdCopter marked this pull request as ready for review August 20, 2025 15:08
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 1

🧹 Nitpick comments (6)
Manufacturers.md (6)

24-25: BKRC/BLDY placement looks fine; clarify BKRC contact and note AI summary inconsistency.

  • BKRC currently has an empty contact. If you have an official site or repo, please add it for consistency.
  • The AI summary mentions duplicate reintroductions of BKRC/BLDY elsewhere, but in the final file they appear only here.

If you can provide a URL for BKRC, I can prep a patch.


51-51: Two IDs map to “Flash Hobby” (FHRC and FLHB) — confirm intent.

Both rows point to the same brand and URL. If both IDs are truly used in the ecosystem, consider adding a short clarifier in Name (e.g., legacy vs. current) or confirm one isn’t redundant.

Also applies to: 56-56


59-59: FLMO has no contact URL — please add if available.

Empty contact fields reduce usefulness of this directory.


128-128: SSAK has no contact URL — please add if available.


1-7: Bare URLs are consistent with this file’s convention; ensure markdownlint MD034 is waived.

Per prior repo convention (learnings), this table intentionally uses bare URLs. If markdownlint runs in CI, MD034 should be disabled for this file or overridden globally to avoid false positives.

Would you like a small PR to add a file-level markdownlint disable directive or adjust the linter config?


6-7: Optional: Clean up and validate Manufacturers.md

Summary of script findings:

  • No duplicate Manufacturer Ids.
  • Empty contact fields for: CUST, FOSS, COMM, LEGA, BKRC, FLMO, SSAK, VWIN, YYRC.
  • Malformed URL for NGUA (“httpshttps://ng.uavp.ch/Shop”).
  • Rows are not sorted by Manufacturer Id.

Recommendations:

  • Fill in or remove empty contact entries.
  • Correct the NGUA link to https://ng.uavp.ch/Shop.
  • Sort the table rows alphabetically by the first column (Manufacturer Id).
📜 Review details

Configuration used: .coderabbit.yaml
Review profile: CHILL
Plan: Pro

💡 Knowledge Base configuration:

  • MCP integration is disabled by default for public repositories
  • Jira integration is disabled by default for public repositories
  • Linear integration is disabled by default for public repositories

You can enable these sources in your CodeRabbit configuration.

📥 Commits

Reviewing files that changed from the base of the PR and between dc5308b and 47aee37.

📒 Files selected for processing (1)
  • Manufacturers.md (5 hunks)
🧰 Additional context used
🧠 Learnings (2)
📓 Common learnings
Learnt from: haslinghuis
PR: betaflight/config#863
File: Manufacturers.md:116-116
Timestamp: 2025-08-14T17:46:20.018Z
Learning: In Betaflight's Manufacturers.md file, all URLs are formatted as bare URLs without angle brackets. This is the consistent pattern used throughout the entire table with 92 bare URLs and 0 wrapped URLs.
📚 Learning: 2025-08-14T17:46:20.018Z
Learnt from: haslinghuis
PR: betaflight/config#863
File: Manufacturers.md:116-116
Timestamp: 2025-08-14T17:46:20.018Z
Learning: In Betaflight's Manufacturers.md file, all URLs are formatted as bare URLs without angle brackets. This is the consistent pattern used throughout the entire table with 92 bare URLs and 0 wrapped URLs.

Applied to files:

  • Manufacturers.md
🪛 markdownlint-cli2 (0.17.2)
Manufacturers.md

25-25: Bare URL used

(MD034, no-bare-urls)


47-47: Bare URL used

(MD034, no-bare-urls)


48-48: Bare URL used

(MD034, no-bare-urls)


49-49: Bare URL used

(MD034, no-bare-urls)


50-50: Bare URL used

(MD034, no-bare-urls)


51-51: Bare URL used

(MD034, no-bare-urls)


52-52: Bare URL used

(MD034, no-bare-urls)


53-53: Bare URL used

(MD034, no-bare-urls)


54-54: Bare URL used

(MD034, no-bare-urls)


55-55: Bare URL used

(MD034, no-bare-urls)


56-56: Bare URL used

(MD034, no-bare-urls)


57-57: Bare URL used

(MD034, no-bare-urls)


58-58: Bare URL used

(MD034, no-bare-urls)


60-60: Bare URL used

(MD034, no-bare-urls)


61-61: Bare URL used

(MD034, no-bare-urls)


62-62: Bare URL used

(MD034, no-bare-urls)


63-63: Bare URL used

(MD034, no-bare-urls)


64-64: Bare URL used

(MD034, no-bare-urls)


65-65: Bare URL used

(MD034, no-bare-urls)


66-66: Bare URL used

(MD034, no-bare-urls)


67-67: Bare URL used

(MD034, no-bare-urls)


85-85: Bare URL used

(MD034, no-bare-urls)


117-117: Bare URL used

(MD034, no-bare-urls)


118-118: Bare URL used

(MD034, no-bare-urls)


119-119: Bare URL used

(MD034, no-bare-urls)


120-120: Bare URL used

(MD034, no-bare-urls)


121-121: Bare URL used

(MD034, no-bare-urls)


122-122: Bare URL used

(MD034, no-bare-urls)


123-123: Bare URL used

(MD034, no-bare-urls)


124-124: Bare URL used

(MD034, no-bare-urls)


125-125: Bare URL used

(MD034, no-bare-urls)


126-126: Bare URL used

(MD034, no-bare-urls)


127-127: Bare URL used

(MD034, no-bare-urls)


129-129: Bare URL used

(MD034, no-bare-urls)


130-130: Bare URL used

(MD034, no-bare-urls)


131-131: Bare URL used

(MD034, no-bare-urls)

🔇 Additional comments (5)
Manufacturers.md (5)

47-47: Add EMAX entry — looks good.


67-67: Add GEEL (Geelang) — looks correct.


85-85: JMI points to JHEMCU — verify the ID/name per issue feedback.

There’s already JHEF (JHE_FPV) for the same domain. You noted you’ll update “JMI” based on feedback; please confirm:

  • Whether “JMI” is the intended manufacturer_id
  • Whether Name should remain “JHEMCU,” or if this is a different entity
  • That adding a second ID for the same brand is intentional

117-117: Add SDRC (Siangda Model) — looks correct.


131-131: Confirm manufacturer_id character policy for “SU25”.

Most IDs are 4 uppercase letters. If non-letter characters are allowed, no action needed. If not, consider a 4-letter alternative for Sub250. Please confirm against configurator/loader expectations.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 1

🧹 Nitpick comments (3)
Manufacturers.md (3)

24-25: Fill missing contact for BKRC; BLDY entry looks fine. Also, AI summary’s “duplicate BKRC/BLDY” claim doesn’t match this file.

  • BKRC currently lacks a Contact URL. Please add an official page if available.
  • BLDY’s entry/URL looks correct.
  • Note: The AI summary mentions duplicate BKRC/BLDY entries, but only one of each exists in this file.

If you have a URL for BKRC, apply:

-|BKRC|BAYCK RC||
+|BKRC|BAYCK RC|https://<official-site>|

59-59: Missing Contact for FLMO.

Consider adding an official URL for discoverability and consistency.

-|FLMO|FLMO||
+|FLMO|FLMO|https://<official-site>|

128-128: Missing Contact for SSAK.

Please add an official URL if available.

-|SSAK|Dezhou Yingfei Intelligent Technology Co., Ltd||
+|SSAK|Dezhou Yingfei Intelligent Technology Co., Ltd|https://<official-site>|
📜 Review details

Configuration used: .coderabbit.yaml
Review profile: CHILL
Plan: Pro

💡 Knowledge Base configuration:

  • MCP integration is disabled by default for public repositories
  • Jira integration is disabled by default for public repositories
  • Linear integration is disabled by default for public repositories

You can enable these sources in your CodeRabbit configuration.

📥 Commits

Reviewing files that changed from the base of the PR and between 47aee37 and b96a45e.

📒 Files selected for processing (1)
  • Manufacturers.md (4 hunks)
🧰 Additional context used
🪛 markdownlint-cli2 (0.17.2)
Manufacturers.md

25-25: Bare URL used

(MD034, no-bare-urls)


47-47: Bare URL used

(MD034, no-bare-urls)


48-48: Bare URL used

(MD034, no-bare-urls)


49-49: Bare URL used

(MD034, no-bare-urls)


50-50: Bare URL used

(MD034, no-bare-urls)


51-51: Bare URL used

(MD034, no-bare-urls)


52-52: Bare URL used

(MD034, no-bare-urls)


53-53: Bare URL used

(MD034, no-bare-urls)


54-54: Bare URL used

(MD034, no-bare-urls)


55-55: Bare URL used

(MD034, no-bare-urls)


56-56: Bare URL used

(MD034, no-bare-urls)


57-57: Bare URL used

(MD034, no-bare-urls)


58-58: Bare URL used

(MD034, no-bare-urls)


60-60: Bare URL used

(MD034, no-bare-urls)


61-61: Bare URL used

(MD034, no-bare-urls)


62-62: Bare URL used

(MD034, no-bare-urls)


63-63: Bare URL used

(MD034, no-bare-urls)


64-64: Bare URL used

(MD034, no-bare-urls)


65-65: Bare URL used

(MD034, no-bare-urls)


66-66: Bare URL used

(MD034, no-bare-urls)


67-67: Bare URL used

(MD034, no-bare-urls)


85-85: Bare URL used

(MD034, no-bare-urls)


117-117: Bare URL used

(MD034, no-bare-urls)


118-118: Bare URL used

(MD034, no-bare-urls)


119-119: Bare URL used

(MD034, no-bare-urls)


120-120: Bare URL used

(MD034, no-bare-urls)


121-121: Bare URL used

(MD034, no-bare-urls)


122-122: Bare URL used

(MD034, no-bare-urls)


123-123: Bare URL used

(MD034, no-bare-urls)


124-124: Bare URL used

(MD034, no-bare-urls)


125-125: Bare URL used

(MD034, no-bare-urls)


126-126: Bare URL used

(MD034, no-bare-urls)


127-127: Bare URL used

(MD034, no-bare-urls)


129-129: Bare URL used

(MD034, no-bare-urls)


130-130: Bare URL used

(MD034, no-bare-urls)


131-131: Bare URL used

(MD034, no-bare-urls)

🔇 Additional comments (6)
Manufacturers.md (6)

52-52: Confirm manufacturer_id “FISH” for SwellPro.

“FISH” seems unrelated to the brand name “SwellPro”. Please confirm ID choice with maintainers or issue #873; consider a mnemonic closer to the brand if there isn’t historical precedent.

Would you like me to open a follow-up to align the ID with project conventions after confirmation?


67-67: GEEL (Geelang) addition — LGTM.

Entry looks correct and ordering by manufacturer_id is preserved.


47-47: EMAX addition — LGTM.

Correctly inserted in sorted order by manufacturer_id.


85-85: JMI appears to duplicate JHEMCU (same URL as JHEF). Please confirm intent.

If JMI is an alias for the same vendor as JHEF/JHEMCU, a second manufacturer_id may be unnecessary and could cause confusion. If a new ID is required (per community consensus), document the distinction in the Name field.

Provisional removal until resolved:

-|JMI|JHEMCU|https://www.jhemcu.com/|

If the ID needs to stay, consider a Name that distinguishes it from JHEF (e.g., specific product line or legal entity).


117-117: SDRC addition — LGTM.

Looks valid and maintains sort order.


131-131: SU25 (Sub250) addition — LGTM.

Entry and ordering look good.

@nerdCopter
Copy link
Member Author

@coderabbitai, you used the word reintroduced, but the idea was to sort. verify.

Copy link
Contributor

coderabbitai bot commented Aug 20, 2025

Tip

For best results, initiate chat on the files or code changes.

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
# First, let's look at the current Manufacturers.md file to understand its structure
echo "=== Current Manufacturers.md file content ==="
cat Manufacturers.md

echo -e "\n=== Checking for BKRC occurrences ==="
grep -n "BKRC" Manufacturers.md

echo -e "\n=== Checking for BLDY occurrences ==="
grep -n "BLDY" Manufacturers.md

echo -e "\n=== Checking if the list is sorted alphabetically ==="
# Extract just the manufacturer IDs (first column) and check sorting
grep "^|" Manufacturers.md | grep -v "^| ID" | grep -v "^|--" | cut -d'|' -f2 | tr -d ' ' | sort -c 2>/dev/null && echo "List is sorted" || echo "List is NOT sorted"

Length of output: 7829


@nerdCopter You're absolutely correct, and I apologize for the inaccuracy in my summary. After examining the actual file:

BKRC and BLDY each appear only once in the file:

  • BKRC|BAYCK RC|| (line 24)
  • BLDY|BotLab Dynamics|https://www.botlabdynamics.store (line 25)

They are positioned alphabetically between BKMN and BROT, which is correct sorting order. There is no duplication - my use of "reintroduced" and "duplicating their presence" was incorrect.

The changes were indeed about sorting the manufacturers list alphabetically as intended, not about reintroducing or duplicating existing entries. Thank you for the correction!

nerdCopter and others added 2 commits August 20, 2025 15:15
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 1

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
Manufacturers.md (1)

6-148: Automated Validation Failed – Fix Table Ordering in Manufacturers.md

Your validation script uncovered that the Manufacturers.md table is not in strict ascending order by Manufacturer Id. Please correct the following rows:

  • “COMM” at line 10 should appear before “FOSS” at line 9
  • “AEDR” at line 12 should appear before “LEGA” at line 11

Once reordered, re-run the validation script to confirm that:

  • Every Manufacturer Id is exactly 4 uppercase alphanumeric characters
  • No duplicate Names or URLs exist
  • The table is fully alphabetized by Id
  • Config references align with the updated Id list
🧹 Nitpick comments (2)
Manufacturers.md (2)

58-58: FLMO is incomplete (missing Name/Contact).

An entry with Name identical to the ID and no URL reduces catalog quality and can confuse downstream users. Either fill in the official name and contact, or temporarily drop the row until details are known.

Apply this minimal, reversible diff if you prefer to omit it for now:

-|FLMO|FLMO||

127-127: Consider adding a Contact URL for SSAK.

Optional, but adding a URL improves discoverability and parity with adjacent entries. If no official site exists, leaving it blank is acceptable.

📜 Review details

Configuration used: .coderabbit.yaml
Review profile: CHILL
Plan: Pro

💡 Knowledge Base configuration:

  • MCP integration is disabled by default for public repositories
  • Jira integration is disabled by default for public repositories
  • Linear integration is disabled by default for public repositories

You can enable these sources in your CodeRabbit configuration.

📥 Commits

Reviewing files that changed from the base of the PR and between b96a45e and 0da9fc1.

📒 Files selected for processing (1)
  • Manufacturers.md (4 hunks)
🧰 Additional context used
🧠 Learnings (1)
📚 Learning: 2025-07-14T15:47:16.394Z
Learnt from: ot0tot
PR: betaflight/config#681
File: configs/NYX405V1/config.h:26-28
Timestamp: 2025-07-14T15:47:16.394Z
Learning: In Betaflight configuration files, MANUFACTURER_ID values must be exactly 4 ASCII characters long, not 3 characters. All manufacturer IDs in the codebase consistently use 4-character identifiers like AIRB, FOSS, SPBE, MTKS, NERC, etc.

Applied to files:

  • Manufacturers.md
🪛 markdownlint-cli2 (0.17.2)
Manufacturers.md

25-25: Bare URL used

(MD034, no-bare-urls)


47-47: Bare URL used

(MD034, no-bare-urls)


48-48: Bare URL used

(MD034, no-bare-urls)


49-49: Bare URL used

(MD034, no-bare-urls)


50-50: Bare URL used

(MD034, no-bare-urls)


51-51: Bare URL used

(MD034, no-bare-urls)


52-52: Bare URL used

(MD034, no-bare-urls)


53-53: Bare URL used

(MD034, no-bare-urls)


54-54: Bare URL used

(MD034, no-bare-urls)


55-55: Bare URL used

(MD034, no-bare-urls)


56-56: Bare URL used

(MD034, no-bare-urls)


57-57: Bare URL used

(MD034, no-bare-urls)


59-59: Bare URL used

(MD034, no-bare-urls)


60-60: Bare URL used

(MD034, no-bare-urls)


61-61: Bare URL used

(MD034, no-bare-urls)


62-62: Bare URL used

(MD034, no-bare-urls)


63-63: Bare URL used

(MD034, no-bare-urls)


64-64: Bare URL used

(MD034, no-bare-urls)


65-65: Bare URL used

(MD034, no-bare-urls)


66-66: Bare URL used

(MD034, no-bare-urls)


83-83: Bare URL used

(MD034, no-bare-urls)


84-84: Bare URL used

(MD034, no-bare-urls)


116-116: Bare URL used

(MD034, no-bare-urls)


117-117: Bare URL used

(MD034, no-bare-urls)


118-118: Bare URL used

(MD034, no-bare-urls)


119-119: Bare URL used

(MD034, no-bare-urls)


120-120: Bare URL used

(MD034, no-bare-urls)


121-121: Bare URL used

(MD034, no-bare-urls)


122-122: Bare URL used

(MD034, no-bare-urls)


123-123: Bare URL used

(MD034, no-bare-urls)


124-124: Bare URL used

(MD034, no-bare-urls)


125-125: Bare URL used

(MD034, no-bare-urls)


126-126: Bare URL used

(MD034, no-bare-urls)


128-128: Bare URL used

(MD034, no-bare-urls)


129-129: Bare URL used

(MD034, no-bare-urls)


130-130: Bare URL used

(MD034, no-bare-urls)

🔇 Additional comments (7)
Manufacturers.md (7)

24-25: BKRC/BLDY ordering looks correct.

IDs remain 4 ASCII chars and the sort by Manufacturer Id is preserved here (BKRC before BLDY). No issues spotted.


47-47: EMAX entry added — OK.

Canonical brand and URL look good; conforms to 4-char ID policy.


51-51: Confirm mapping: FISH → SwellPro.

The ID “FISH” for “SwellPro” is non-obvious and could be confused with other brands. Please confirm this mapping is intentional and community-approved, otherwise consider a mnemonic 4-char ID aligned with the brand.


55-55: Canonicalized Flash Hobby under FLHB — looks good.

Thanks for removing the ambiguity with the prior FHRC vs FLHB discussion and keeping FLHB as the canonical ID.


66-66: GEEL added — OK.

Matches brand and URL; conforms to 4-char policy.


116-116: SDRC addition — OK.

Looks consistent (name and URL present, 4-char ID).


130-130: SU25 (Sub250) addition — OK.

Valid 4-char ID (digits allowed), proper URL.

@haslinghuis haslinghuis requested a review from ot0tot August 20, 2025 20:25
@haslinghuis haslinghuis linked an issue Aug 20, 2025 that may be closed by this pull request
8 tasks
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 3

🧹 Nitpick comments (2)
Manufacturers.md (2)

58-58: FLMO has no contact URL — confirm this isn’t a placeholder.

If FLMO represents an active manufacturer, consider adding a contact URL (consistent with the table’s pattern). If it’s a reserved/placeholder ID, consider omitting until needed to avoid ecosystem churn.

Would you like a quick check script to flag rows with empty Contact cells for follow-up?


126-126: SSAK has empty contact — optional improvement.

If a public site exists, add it for consistency and discoverability. Otherwise, leaving blank is acceptable per current table conventions.

📜 Review details

Configuration used: .coderabbit.yaml
Review profile: CHILL
Plan: Pro

💡 Knowledge Base configuration:

  • MCP integration is disabled by default for public repositories
  • Jira integration is disabled by default for public repositories
  • Linear integration is disabled by default for public repositories

You can enable these sources in your CodeRabbit configuration.

📥 Commits

Reviewing files that changed from the base of the PR and between 0da9fc1 and faa5401.

📒 Files selected for processing (1)
  • Manufacturers.md (4 hunks)
🧰 Additional context used
🧠 Learnings (1)
📚 Learning: 2025-07-14T15:47:16.394Z
Learnt from: ot0tot
PR: betaflight/config#681
File: configs/NYX405V1/config.h:26-28
Timestamp: 2025-07-14T15:47:16.394Z
Learning: In Betaflight configuration files, MANUFACTURER_ID values must be exactly 4 ASCII characters long, not 3 characters. All manufacturer IDs in the codebase consistently use 4-character identifiers like AIRB, FOSS, SPBE, MTKS, NERC, etc.

Applied to files:

  • Manufacturers.md
🪛 markdownlint-cli2 (0.17.2)
Manufacturers.md

25-25: Bare URL used

(MD034, no-bare-urls)


47-47: Bare URL used

(MD034, no-bare-urls)


48-48: Bare URL used

(MD034, no-bare-urls)


49-49: Bare URL used

(MD034, no-bare-urls)


50-50: Bare URL used

(MD034, no-bare-urls)


51-51: Bare URL used

(MD034, no-bare-urls)


52-52: Bare URL used

(MD034, no-bare-urls)


53-53: Bare URL used

(MD034, no-bare-urls)


54-54: Bare URL used

(MD034, no-bare-urls)


55-55: Bare URL used

(MD034, no-bare-urls)


56-56: Bare URL used

(MD034, no-bare-urls)


57-57: Bare URL used

(MD034, no-bare-urls)


59-59: Bare URL used

(MD034, no-bare-urls)


60-60: Bare URL used

(MD034, no-bare-urls)


61-61: Bare URL used

(MD034, no-bare-urls)


62-62: Bare URL used

(MD034, no-bare-urls)


63-63: Bare URL used

(MD034, no-bare-urls)


64-64: Bare URL used

(MD034, no-bare-urls)


65-65: Bare URL used

(MD034, no-bare-urls)


66-66: Bare URL used

(MD034, no-bare-urls)


83-83: Bare URL used

(MD034, no-bare-urls)


115-115: Bare URL used

(MD034, no-bare-urls)


116-116: Bare URL used

(MD034, no-bare-urls)


117-117: Bare URL used

(MD034, no-bare-urls)


118-118: Bare URL used

(MD034, no-bare-urls)


119-119: Bare URL used

(MD034, no-bare-urls)


120-120: Bare URL used

(MD034, no-bare-urls)


121-121: Bare URL used

(MD034, no-bare-urls)


122-122: Bare URL used

(MD034, no-bare-urls)


123-123: Bare URL used

(MD034, no-bare-urls)


124-124: Bare URL used

(MD034, no-bare-urls)


125-125: Bare URL used

(MD034, no-bare-urls)


127-127: Bare URL used

(MD034, no-bare-urls)


128-128: Bare URL used

(MD034, no-bare-urls)


129-129: Bare URL used

(MD034, no-bare-urls)

🔇 Additional comments (6)
Manufacturers.md (6)

24-25: BKRC/BLDY positions look correct and alphabetically ordered.

No duplication here and the sort by Manufacturer Id is preserved.


47-47: EMAX entry: OK.

4-character ID, uppercase, valid-looking URL, and correct sort position.


66-66: GEEL entry: OK.

Meets 4-char ID rule and sorting; URL looks correct.


115-115: SDRC entry: OK.

Valid 4-char ID, sorted correctly, URL present.


129-129: SU25 entry: OK.

Valid 4-character ID (alphanumeric allowed per project convention), sorted correctly, URL present.


47-47: New/updated IDs comply with the 4-character rule.

All newly added/modified manufacturer_ids are exactly 4 ASCII characters, aligning with the project’s requirement remembered from prior PRs.

Also applies to: 51-51, 55-55, 58-58, 66-66, 115-115, 129-129

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 1

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
Manufacturers.md (1)

6-147: Manufacturers.md: Fix missing contacts and sort order

Please address the following issues in Manufacturers.md (lines 6–147):

  • Missing contact URLs for the following IDs (all other rows include a link in column 4):
    • BKRC (BAYCK RC)
    • FLMO (FLMO)
    • SSAK (Dezhou Yingfei Intelligent Technology Co., Ltd)
    • VWIN (Huizhou Xinmumu Technology Co., Ltd)
    • YYRC (JLDZ)

  • Incorrect alphabetical ordering between adjacent rows:
    • Swap FOSS and COMM so that COMM comes before FOSS.
    • Move LEGA below all “A…” IDs (e.g. after AZZZ if present—or at least after AEDR).

Once the contact information is filled in (or explicitly marked as “n/a” if appropriate) and the rows are reordered to strict ASCII sort by Manufacturer Id, rerun the validation script to confirm:

awk -F'|' '' Manufacturers.md
♻️ Duplicate comments (2)
Manufacturers.md (2)

55-55: Flash Hobby canonicalized to FLHB — ensure legacy FHRC is fully removed.

Good consolidation. Please double-check there are no remaining FHRC references elsewhere (configs, docs).

Use:

#!/bin/bash
set -euo pipefail
rg -n --hidden -S '\bFHRC\b' -g '!Manufacturers.md' || echo "No FHRC references found."

51-51: Update SwellPro Manufacturer ID to Avoid Conflict

TheMANUFACTURER_ID “FISH” is already defined in configs/FISHERMANF405/config.h:27, causing a collision. Please choose a new, unique 4-character ASCII ID for SwellPro and re-sort the entry in Manufacturers.md.

• configs/FISHERMANF405/config.h:27 — #define MANUFACTURER_ID FISH
• Manufacturers.md:51 — current row uses |FISH|SwellPro|…|

Proposed change:

-|FISH|SwellPro|https://swellpro.com/|
+|SWPR|SwellPro|https://swellpro.com/|

Ensure the new ID is not used elsewhere and update the table ordering accordingly.

🧹 Nitpick comments (3)
Manufacturers.md (3)

24-25: BKRC/BLDY ordering looks correct; consider adding BKRC contact URL.

Alphabetical position by Manufacturer Id is good. If you have a public site for BAYCK RC, adding it would improve completeness and consistency with nearby rows that already include contacts.


58-58: FLMO lacks a descriptive Name/Contact.

If FLMO is a placeholder brand, consider providing the public-facing name and a contact URL. Leaving both as ID-only may reduce usefulness of the table.


126-126: SSAK has no contact URL.

Optional but recommended: add a website/contact to align with most rows and aid users.

📜 Review details

Configuration used: .coderabbit.yaml
Review profile: CHILL
Plan: Pro

💡 Knowledge Base configuration:

  • MCP integration is disabled by default for public repositories
  • Jira integration is disabled by default for public repositories
  • Linear integration is disabled by default for public repositories

You can enable these sources in your CodeRabbit configuration.

📥 Commits

Reviewing files that changed from the base of the PR and between faa5401 and fee8a7d.

📒 Files selected for processing (1)
  • Manufacturers.md (4 hunks)
🧰 Additional context used
🧠 Learnings (1)
📚 Learning: 2025-07-14T15:47:16.394Z
Learnt from: ot0tot
PR: betaflight/config#681
File: configs/NYX405V1/config.h:26-28
Timestamp: 2025-07-14T15:47:16.394Z
Learning: In Betaflight configuration files, MANUFACTURER_ID values must be exactly 4 ASCII characters long, not 3 characters. All manufacturer IDs in the codebase consistently use 4-character identifiers like AIRB, FOSS, SPBE, MTKS, NERC, etc.

Applied to files:

  • Manufacturers.md
🪛 markdownlint-cli2 (0.17.2)
Manufacturers.md

25-25: Bare URL used

(MD034, no-bare-urls)


47-47: Bare URL used

(MD034, no-bare-urls)


48-48: Bare URL used

(MD034, no-bare-urls)


49-49: Bare URL used

(MD034, no-bare-urls)


50-50: Bare URL used

(MD034, no-bare-urls)


51-51: Bare URL used

(MD034, no-bare-urls)


52-52: Bare URL used

(MD034, no-bare-urls)


53-53: Bare URL used

(MD034, no-bare-urls)


54-54: Bare URL used

(MD034, no-bare-urls)


55-55: Bare URL used

(MD034, no-bare-urls)


56-56: Bare URL used

(MD034, no-bare-urls)


57-57: Bare URL used

(MD034, no-bare-urls)


59-59: Bare URL used

(MD034, no-bare-urls)


60-60: Bare URL used

(MD034, no-bare-urls)


61-61: Bare URL used

(MD034, no-bare-urls)


62-62: Bare URL used

(MD034, no-bare-urls)


63-63: Bare URL used

(MD034, no-bare-urls)


64-64: Bare URL used

(MD034, no-bare-urls)


65-65: Bare URL used

(MD034, no-bare-urls)


66-66: Bare URL used

(MD034, no-bare-urls)


83-83: Bare URL used

(MD034, no-bare-urls)


115-115: Bare URL used

(MD034, no-bare-urls)


116-116: Bare URL used

(MD034, no-bare-urls)


117-117: Bare URL used

(MD034, no-bare-urls)


118-118: Bare URL used

(MD034, no-bare-urls)


119-119: Bare URL used

(MD034, no-bare-urls)


120-120: Bare URL used

(MD034, no-bare-urls)


121-121: Bare URL used

(MD034, no-bare-urls)


122-122: Bare URL used

(MD034, no-bare-urls)


123-123: Bare URL used

(MD034, no-bare-urls)


124-124: Bare URL used

(MD034, no-bare-urls)


125-125: Bare URL used

(MD034, no-bare-urls)


127-127: Bare URL used

(MD034, no-bare-urls)


128-128: Bare URL used

(MD034, no-bare-urls)


129-129: Bare URL used

(MD034, no-bare-urls)

🔇 Additional comments (4)
Manufacturers.md (4)

47-47: EMAX entry looks good.

Valid 4-character ID, sorted correctly, and contact provided.


66-66: GEEL entry looks correct.

Unique 4-char ID, proper sort position, and contact provided.


115-115: SDRC entry looks correct.

Meets 4-char ID requirement and includes a contact URL.


129-129: SU25 entry looks correct.

Valid 4-character alphanumeric ID, sorted correctly, with contact URL.

@nerdCopter
Copy link
Member Author

transferring ownership to @haslinghuis , modify at will 😹

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 0

♻️ Duplicate comments (2)
Manufacturers.md (2)

55-55: Minor naming consistency: “Co.,Limited” → “Co., Ltd”; also ensure FHRC is fully deprecated.

Most entries use “Co., Ltd”. Consider aligning for consistency. Separately, since FLHB is canonical now, sweep for any legacy FHRC references in configs.

Suggested name tweak:

-|FLHB|Flash Hobby Technology Co.,Limited|https://flashhobby.com/|
+|FLHB|Flash Hobby Technology Co., Ltd|https://flashhobby.com/|

Sweep for FHRC:

#!/bin/bash
rg -n --hidden -S '\bFHRC\b' -g '!Manufacturers.md' || echo "No FHRC references found."

51-51: Manufacturer ID Conflict – Action Required

It’s been confirmed that FISH is already in use by configs/FISHERMANF405/config.h:27, so assigning it to SwellPro would collide with the existing target. Please update SwellPro’s entry to a new, unique 4-character ASCII ID (for example, SWPR), then re-run the global uniqueness and sort-order checks.

• Locations to update:

  • Manufacturers.md (line 51)
  • Any SwellPro-specific board configs you’ve added that reference MANUFACTURER_ID FISH

• Example patch:

- |FISH|SwellPro|https://swellpro.com/|
+ |SWPR|SwellPro|https://swellpro.com/|

• Next steps:

  1. Choose and apply a unique 4-char ID (e.g. SWPR).
  2. Re-sort Manufacturers.md to maintain ASCII ordering by ID.
  3. Run the global grep check to ensure no duplicate IDs:
    rg -n '^\|SWPR\|' Manufacturers.md
    rg -n 'MANUFACTURER_ID\s\+SWPR' configs/
    rg -n 'MANUFACTURER_ID\s\+FISH' configs/  # confirm no unintended references
  4. Verify all builds still pass with the new ID.
🧹 Nitpick comments (3)
Manufacturers.md (3)

24-25: BKRC/BLDY sorted correctly; consider adding BKRC contact URL.

Ordering looks good. BKRC has an empty contact — add a URL when available to keep parity with neighboring entries. Also double-check the “BAYCK RC” spelling.


58-58: FLMO lacks a proper Name/Contact — confirm before merging.

Using the ID as the Name and leaving Contact empty makes the row less useful. Please provide the official company/brand name and a URL, or defer adding this row until details are confirmed.


126-126: SSAK missing contact — optional improvement.

If a website is available, add it to help users identify the vendor.

📜 Review details

Configuration used: .coderabbit.yaml
Review profile: CHILL
Plan: Pro

💡 Knowledge Base configuration:

  • MCP integration is disabled by default for public repositories
  • Jira integration is disabled by default for public repositories
  • Linear integration is disabled by default for public repositories

You can enable these sources in your CodeRabbit configuration.

📥 Commits

Reviewing files that changed from the base of the PR and between fee8a7d and f2c578e.

📒 Files selected for processing (1)
  • Manufacturers.md (4 hunks)
🧰 Additional context used
🧠 Learnings (1)
📚 Learning: 2025-07-14T15:47:16.394Z
Learnt from: ot0tot
PR: betaflight/config#681
File: configs/NYX405V1/config.h:26-28
Timestamp: 2025-07-14T15:47:16.394Z
Learning: In Betaflight configuration files, MANUFACTURER_ID values must be exactly 4 ASCII characters long, not 3 characters. All manufacturer IDs in the codebase consistently use 4-character identifiers like AIRB, FOSS, SPBE, MTKS, NERC, etc.

Applied to files:

  • Manufacturers.md
🪛 markdownlint-cli2 (0.17.2)
Manufacturers.md

25-25: Bare URL used

(MD034, no-bare-urls)


47-47: Bare URL used

(MD034, no-bare-urls)


48-48: Bare URL used

(MD034, no-bare-urls)


49-49: Bare URL used

(MD034, no-bare-urls)


50-50: Bare URL used

(MD034, no-bare-urls)


51-51: Bare URL used

(MD034, no-bare-urls)


52-52: Bare URL used

(MD034, no-bare-urls)


53-53: Bare URL used

(MD034, no-bare-urls)


54-54: Bare URL used

(MD034, no-bare-urls)


55-55: Bare URL used

(MD034, no-bare-urls)


56-56: Bare URL used

(MD034, no-bare-urls)


57-57: Bare URL used

(MD034, no-bare-urls)


59-59: Bare URL used

(MD034, no-bare-urls)


60-60: Bare URL used

(MD034, no-bare-urls)


61-61: Bare URL used

(MD034, no-bare-urls)


62-62: Bare URL used

(MD034, no-bare-urls)


63-63: Bare URL used

(MD034, no-bare-urls)


64-64: Bare URL used

(MD034, no-bare-urls)


65-65: Bare URL used

(MD034, no-bare-urls)


66-66: Bare URL used

(MD034, no-bare-urls)


83-83: Bare URL used

(MD034, no-bare-urls)


115-115: Bare URL used

(MD034, no-bare-urls)


116-116: Bare URL used

(MD034, no-bare-urls)


117-117: Bare URL used

(MD034, no-bare-urls)


118-118: Bare URL used

(MD034, no-bare-urls)


119-119: Bare URL used

(MD034, no-bare-urls)


120-120: Bare URL used

(MD034, no-bare-urls)


121-121: Bare URL used

(MD034, no-bare-urls)


122-122: Bare URL used

(MD034, no-bare-urls)


123-123: Bare URL used

(MD034, no-bare-urls)


124-124: Bare URL used

(MD034, no-bare-urls)


125-125: Bare URL used

(MD034, no-bare-urls)


127-127: Bare URL used

(MD034, no-bare-urls)


128-128: Bare URL used

(MD034, no-bare-urls)


129-129: Bare URL used

(MD034, no-bare-urls)

🔇 Additional comments (5)
Manufacturers.md (5)

66-66: GEEL entry looks good.


83-83: JHEF correction to “Shenzhen Jinhang Electronic Co., Ltd” — LGTM.

This aligns with earlier discussions and resolves the prior typo/duplication concerns.


115-115: SDRC addition — LGTM.

ID format and placement are correct; URL provided.


129-129: SU25 (Sub250) — LGTM.

4-char ASCII ID with digits is acceptable; order is correct.


47-47: Confirmed: EMAX manufacturer ID is unique and consistent

I’ve verified that EMAX appears only in the four EMAX-branded configs and nowhere else, and the entry in Manufacturers.md matches their 4-character ID exactly:

  • configs/EMAX_TINYHAWK_F411RX/config.h
  • configs/EMAX_TINYHAWKF4SX1280/config.h
  • configs/EMAX_BABYHAWK_II_HD/config.h
  • configs/EMAX_F405_ELRS_AIO/config.h

No other targets use or conflict with EMAX. The addition to Manufacturers.md is correct.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 1

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
Manufacturers.md (1)

6-146: Fix alphabetical sort of Manufacturer IDs

The sanity-check script confirms there are no ID format violations or duplicates, but it uncovered two ordering issues in Manufacturers.md:

• “FOSS” appears after “COMM” – it should precede it.
• “LEGA” appears before “AEDR” – it should follow it.

Please reorder those rows so that all 4-char IDs appear in strict ascending order. After making the swaps, rerun the provided script to ensure “Order OK” is reported.

♻️ Duplicate comments (1)
Manufacturers.md (1)

54-54: Flash Hobby canonicalized to FLHB — LGTM

Thanks for eliminating FHRC/FHRC ambiguity. The follow-up deprecation in PR #875 addresses downstream references.

🧹 Nitpick comments (1)
Manufacturers.md (1)

125-125: SSAK contact omitted — add if available

If an official website exists, add it for completeness; otherwise leaving blank is acceptable per current table conventions.

📜 Review details

Configuration used: .coderabbit.yaml
Review profile: CHILL
Plan: Pro

💡 Knowledge Base configuration:

  • MCP integration is disabled by default for public repositories
  • Jira integration is disabled by default for public repositories
  • Linear integration is disabled by default for public repositories

You can enable these sources in your CodeRabbit configuration.

📥 Commits

Reviewing files that changed from the base of the PR and between f2c578e and 9cc05ee.

📒 Files selected for processing (1)
  • Manufacturers.md (4 hunks)
🧰 Additional context used
🧠 Learnings (1)
📚 Learning: 2025-07-14T15:47:16.394Z
Learnt from: ot0tot
PR: betaflight/config#681
File: configs/NYX405V1/config.h:26-28
Timestamp: 2025-07-14T15:47:16.394Z
Learning: In Betaflight configuration files, MANUFACTURER_ID values must be exactly 4 ASCII characters long, not 3 characters. All manufacturer IDs in the codebase consistently use 4-character identifiers like AIRB, FOSS, SPBE, MTKS, NERC, etc.

Applied to files:

  • Manufacturers.md
🪛 markdownlint-cli2 (0.17.2)
Manufacturers.md

25-25: Bare URL used

(MD034, no-bare-urls)


47-47: Bare URL used

(MD034, no-bare-urls)


48-48: Bare URL used

(MD034, no-bare-urls)


49-49: Bare URL used

(MD034, no-bare-urls)


50-50: Bare URL used

(MD034, no-bare-urls)


51-51: Bare URL used

(MD034, no-bare-urls)


52-52: Bare URL used

(MD034, no-bare-urls)


53-53: Bare URL used

(MD034, no-bare-urls)


54-54: Bare URL used

(MD034, no-bare-urls)


55-55: Bare URL used

(MD034, no-bare-urls)


56-56: Bare URL used

(MD034, no-bare-urls)


58-58: Bare URL used

(MD034, no-bare-urls)


59-59: Bare URL used

(MD034, no-bare-urls)


60-60: Bare URL used

(MD034, no-bare-urls)


61-61: Bare URL used

(MD034, no-bare-urls)


62-62: Bare URL used

(MD034, no-bare-urls)


63-63: Bare URL used

(MD034, no-bare-urls)


64-64: Bare URL used

(MD034, no-bare-urls)


65-65: Bare URL used

(MD034, no-bare-urls)


82-82: Bare URL used

(MD034, no-bare-urls)


114-114: Bare URL used

(MD034, no-bare-urls)


115-115: Bare URL used

(MD034, no-bare-urls)


116-116: Bare URL used

(MD034, no-bare-urls)


117-117: Bare URL used

(MD034, no-bare-urls)


118-118: Bare URL used

(MD034, no-bare-urls)


119-119: Bare URL used

(MD034, no-bare-urls)


120-120: Bare URL used

(MD034, no-bare-urls)


121-121: Bare URL used

(MD034, no-bare-urls)


122-122: Bare URL used

(MD034, no-bare-urls)


123-123: Bare URL used

(MD034, no-bare-urls)


124-124: Bare URL used

(MD034, no-bare-urls)


126-126: Bare URL used

(MD034, no-bare-urls)


127-127: Bare URL used

(MD034, no-bare-urls)


128-128: Bare URL used

(MD034, no-bare-urls)

🔇 Additional comments (6)
Manufacturers.md (6)

24-25: BKRC/BLDY positions look correct and alphabetically ordered

Entries are singletons and correctly sorted within the B* block. No action needed.


57-57: FLMO entry lacks details — confirm placeholder vs. complete info

Currently “Name=FLMO” and no contact. If FLMO is an acronym, consider expanding the full company/brand name and adding a URL; otherwise confirm this is intentionally minimal.


65-65: GEEL (Geelang) entry — LGTM

ID format, name, and URL look consistent with the table’s conventions.


82-82: JHEF rename to “Shenzhen Jinhang Electronic Co., Ltd” — LGTM

Spelling and URL look correct; 4-char ID rule satisfied. Acknowledging the JMI follow-up will be handled separately as discussed.


114-114: SDRC (Siangda Model Co., Ltd) — verify official site

Entry reads well; please confirm https://www.sdmodel.com.tw/ is the official manufacturer site for this ID.


47-47: Confirm EMAX canonical URL – emaxmodel.com is correct

Based on the official support information, EMAX USA (emax-usa.com) serves only United States and Canada, while EMAX Model (emaxmodel.com) provides international sales and support for all other regions (emax-usa.com). A ripgrep search in configs/ shows only the manufacturer ID EMAX (no EMAXUSA entries), so we don’t need a separate EMAXUSA entry (emax-usa.com). The existing entry

|EMAX|EMAX|https://emaxmodel.com/|

is therefore correct and requires no changes.

@haslinghuis
Copy link
Member

haslinghuis commented Aug 20, 2025

@ot0tot should be ready - we need more data for JMI

@haslinghuis haslinghuis mentioned this pull request Aug 20, 2025
8 tasks
@haslinghuis haslinghuis merged commit 0162b3f into betaflight:master Aug 22, 2025
2 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.

Add missing manufacturers
3 participants