PULSCAR ANALYSIS OF NHTSA PUBLIC DATA - GRINDING THAT HAPPENS UNDER THE BRAKE PEDAL PulsCar analysis of NHTSA public data, September 2026. License: CC BY 4.0. Files: brake-grind-what-owners-name.csv, brake-grind-by-make.csv, brake-grind-top-models.csv, brake-noise-bulletins-by-make.csv. WHY THIS FOLDER EXISTS SEPARATELY FROM /research/car-makes-grinding-noise/ That folder answers "my car grinds" across every system. This one answers a narrower question: what is in the complaints where the grinding is tied to the brake pedal. The grinding set below is built the same way so the two are comparable, and where a figure exists in both folders they agree. SOURCE FILES 1. NHTSA ODI complaint flat file (COMPLAINTS_RECEIVED_*.txt), https://static.nhtsa.gov/odi/ffdd/cmpl/ - field definitions https://static.nhtsa.gov/odi/ffdd/cmpl/CMPL.txt 777,040 complaints received 1 January 2015 - 8 September 2026, de-duplicated by ODINO. Indexed 17 September 2026; queries run 18 September 2026. 2. NHTSA manufacturer communications flat file - 187,827 distinct document ids. 3. NHTSA recall flat file, counted as DISTINCT campaign. 4. NHTSA recalls API (https://api.nhtsa.gov/recalls/campaignNumber) for the three campaigns quoted in the article; all three returned HTTP 200 on 18 September 2026. All loaded into local SQLite with FTS5 indexes on complaint text and bulletin summary. LETTER CASE Complaint narratives are stored in CAPITALS through 2020 and in mixed case from 2021 on: the share of complaints whose first 200 characters are all uppercase is 100.0% for 2015-2020, 42.5% for 2021 and under 2% for 2022-2026. FTS5 matching is case-insensitive, SQLite LIKE is case-insensitive, and every Python regular expression below was compiled with re.IGNORECASE. No uppercase-only pattern and no GLOB was used. A case-sensitive search would have dropped most of the post-2020 half of the file without any error message. QUERY 1 - THE GRINDING SET (denominator 6,236) select c.* from complaints c join complaints_fts f on f.rowid = c.rowid where complaints_fts match 'grind OR grinds OR grinding OR grinded'; 6,248 matches. A complaint was dropped only if EVERY +/-90-character window around every /grind\w*/i occurrence matched the machining-and-idiom pattern (resurfac|re-?surfac|machin|turn(ed|ing)? the rotors?|grind(ing)? (down )?(the )? (rotors?|brake rotors?|discs?)|grind(ing)? to a halt|daily grind|grind(ing)? of traffic). 12 dropped, 6,236 kept. Identical to the construction in /research/car-makes-grinding-noise/method.txt. QUERY 2 - THE PEDAL-GATED SUBSET (the set this article is about: 1,632) Of the 6,236, keep a complaint if ANY of its +/-90-character grinding windows contains brak|\bpedal\b|stopp?ing|come to a stop|slow(ing)? down. Result: 1,632, 26.2% of the grinding set. The companion grinding page reports 1,628 for the same idea; the four-complaint difference is window bookkeeping between two runs of the same rule, not a disagreement, and no claim in either article turns on it. The window, not the whole complaint, is used on purpose: matching the whole text would catch any complaint that mentions braking anywhere. THIS IS A TIMING WORD, NOT A DIAGNOSIS. A complaint is in this set because the owner wrote about grinding near a braking word - which may be the moment the noise occurs, or simply the sentence they wrote it in. SAMPLE READING 25 random complaints from the ABS/automatic-braking subset were read in context (random.seed(9)). All 25 concerned braking; the subset divides into two real stories - an automatic-braking or ABS event that itself grinds, and a hydraulic or ABS fault that produces grinding with warning lights - plus a minority where ABS is named only because a warning light came on alongside ordinary pad wear. That last group is why the article describes the figure as "names ABS or automatic braking", never as "was caused by ABS". The grinding set itself was sample-read in the companion folder: 39 of 40 random matches described a real noise, 1 of 40 was a machining use (2.5%), which is the failure mode the exclusion above targets. WORD FLAGS (brake-grind-what-owners-name.csv) Case-insensitive regex over the FULL complaint text, one flag per family, NON-EXCLUSIVE - a complaint naming both pads and ABS counts in both rows. Each row is reported twice: as a share of the 1,632 pedal-gated complaints and as a share of all 6,236 grinding complaints, so the comparison is the same pattern on both sets. Patterns, verbatim: wheel bearing or hub wheel bearing|hub assembl|\bhub\b|\bbearing pads or rotors \bpads?\b|rotor caliper caliper ABS / automatic braking \babs\b|automatic emergency|forward collision|pre-?collision| \baeb\b|traction control|stability control|vdc\b|stabilitrak warning light warning light|brake light (came|come|comes|illuminat)| \babs light|dash(board)? light soft, low or sinking pedal pedal (went|goes|going|sank|sunk|drop\w*)[^.]{0,30}(floor|down)| soft pedal|spongy|pedal to the floor|low pedal|excessive pedal travel metal-on-metal metal[ -]on[ -]metal|metal to metal|bare metal cold or first drive \bcold\b|first thing in the morning|after sitting|sat overnight| overnight|when it rains|after rain|first (few )?stops? rear brakes \brear\b[^.]{0,30}(brake|pad|rotor|caliper)| (brake|pad|rotor|caliper)[^.]{0,20}\brear\b continued after a repair (replac\w+|new)[^.]{0,40}(pads?|rotors?|brakes?)[^.]{0,220} (still|again|persist|did not (fix|resolve|help)|did ?n.t (fix|help)| came back|returned|no change|continue) shop could not find it the standard phrase list used across our research ("could not duplicate", "unable to duplicate", "could not replicate", "unable to replicate", "could not reproduce", "no problem found", "could not find the", "unable to find the", "nothing was found", "found nothing wrong", "no issue found", "no problems found") dealer called it normal (told|said|says|stated|calls?|called|considers?)[^.]{0,60}\bnormal\b| \bnormal\b[^.]{0,40}(for (this|the) (vehicle|car|model)|characteristic) THE WHEEL-BEARING NUMBER, STATED CAREFULLY. 66 of the 1,632 (4.04%) name a wheel bearing or hub anywhere in the text, against 5.29% of all grinding complaints. This measures what owners WROTE, and owners who discovered a bearing behind a brake complaint often never file at all. It is not an estimate of how often a bearing is the answer, and the article says so where the number appears. It is, however, the reason we removed the unsourced "a third of brake grinding is really a wheel bearing" claim this page used to carry: nothing we can measure supports it. MILEAGE, TOW, CRASH, FIRE Mileage uses the file's own failure-mileage field, 0 < miles < 400,000: usable in 1,000 of the 1,632. Median 62,000, quartiles 21,000 and 110,000; 338 (33.8%) at or under 36,000. Tow, crash, fire and injury counts are the file's own owner-reported fields. Baselines across all 777,040 complaints: towed 5.11%, crash 4.37%, fire 1.82%. MAKES AND MODELS (brake-grind-by-make.csv, brake-grind-top-models.csv) Counts of complaints, not failure rates. This file carries no registration, sales or repair-order denominator, so a nameplate with more vehicles on the road produces more complaints by arithmetic alone. Nothing in these files supports "brand X has worse brakes than brand Y", and the article does not say it. BULLETINS (brake-noise-bulletins-by-make.csv) select distinct t.* from tsbs t join tsbs_fts f on f.rowid = t.rowid where tsbs_fts match 'brake AND (noise OR grinding OR grind OR squeal OR groan)'; 1,300 distinct NHTSA document ids. Flags on the summary text, case-insensitive: "normal or characteristic" = normal|characteristic|inherent|no repair| not a (defect|concern)|does not (indicate|affect)|acceptable -> 108 of 1,300 (8.3%) "software or calibration" = software|reprogram|calibrat|flash|update the|module update -> 33 of 1,300 (2.5%) "pads, rotors, hardware or lubrication" = \bpads?\b|rotor|caliper|shim|hardware|lubricat|greas -> 479 of 1,300 (36.8%) Counted per document, not per vehicle. The flags read the summary field only, so they are floors: a bulletin whose full PDF calls a noise normal without using any of those words in its summary is not counted. Two documents are quoted verbatim in the article from this flat file: GM PIC5981 / PIC5981A (2016-2017, Camaro) and Ford SSM 46388 (20 March 2017, 2017 MKZ and Fusion Energi). RECALLS QUOTED 10V072000 (Nissan, 2 March 2010, 179,383 vehicles), 18V536000 (Volkswagen, 15 August 2018, 8,416 vehicles) and 24V723000 (Volkswagen, 27 September 2024, 1,591 vehicles), each re-read through the NHTSA recalls API on 18 September 2026. LIMITATIONS Complaints are unverified owner reports. They are not a failure rate, not a sample of all cars and not a sample of all brake noises - only of brake noises somebody chose to report to the federal government, usually because something frightening or expensive happened. Word flags measure vocabulary, not causes. Nothing in this folder contains a VIN, a city, a dealer name or free text beyond short snippets. CONTACT: support@pulscar.io