{"uid":"cap_WX-K-Adlhtd3AlhI5MutQ","slug":"can-2-0-classic-bit-stuffing-crc15-frame-reconstruction-b0cdd3f2","name":"CAN 2.0 Classic Bit-Stuffing & CRC15 Frame Reconstruction","description":"Reconstruct complete classical CAN base/extended data or remote frames from stuffed bits and exact CRC15.","url":"https://detect.halowerk.com/v1/F-TD2000-DATASTRUCTURES-06/can20-classic-bit-stuff-crc15-frame-and-arbitration-reconstruction?utm_source=zero.xyz","method":"POST","headers":{},"bodySchema":{"type":"object","properties":{"artifact":{"type":"object","required":["can"],"properties":{"can":{"type":"object","required":["data","claim"],"properties":{"data":{"type":"object","required":["frames_bits"],"properties":{"frames_bits":{"type":"array","items":{"type":"string","maxLength":20000},"maxItems":512}},"additionalProperties":false},"claim":{"anyOf":[{"type":"null"},{"type":"object","required":["arbitration_winners","equal_arbitration_payload_conflict","frames"],"properties":{"frames":{"type":"array","items":{"type":"object","required":["acknowledged","arbitration_bits","computed_crc","crc_valid","dlc","extended","identifier","payload_bytes","payload_sha256","received_crc","remote","stuff_bits","wire_bits"],"properties":{"dlc":{"type":"number"},"remote":{"type":"boolean"},"extended":{"type":"boolean"},"crc_valid":{"type":"boolean"},"wire_bits":{"type":"number"},"identifier":{"type":"number"},"stuff_bits":{"type":"number"},"acknowledged":{"type":"boolean"},"computed_crc":{"type":"number"},"received_crc":{"type":"number"},"payload_bytes":{"type":"number"},"payload_sha256":{"type":"string","maxLength":20000},"arbitration_bits":{"type":"string","maxLength":20000}},"additionalProperties":false},"maxItems":512},"arbitration_winners":{"type":"array","items":{"type":"number"},"maxItems":512},"equal_arbitration_payload_conflict":{"type":"boolean"}},"additionalProperties":false}]}},"additionalProperties":false}},"additionalProperties":false}}},"responseSchema":null,"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0.003","displayCostAsset":"USDC","priceDynamic":false,"priceHint":null,"priceStatus":"priced","priceSource":"probe","requiresHandshake":false,"reviewCount":0,"rating":{"score":"0.00","successRate":"0.00","reviews":0,"stars":null,"state":"unrated"},"availabilityStatus":"unknown","priceObserved":null,"sessionDeposit":null,"pricing":{"kind":"static","summary":"$0.003/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.003","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.003","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_iLAR23wPd_K86sEwLMn_U","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.003","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Reconstructs complete classical CAN 2.0 base and extended data or remote frames from stuffed bit streams, computing and validating exact CRC15 and arbitration winners.","exampleAgentPrompt":"I have a batch of raw stuffed bit strings captured from a CAN bus — can you reconstruct the complete CAN 2.0 frames from them, including CRC15 validation, arbitration winners, and whether any frames are remote or extended frames?","exampleUseCases":[{"title":"CAN bus capture frame decoding","prompt":"I captured these raw stuffed bit strings from a CAN 2.0 bus trace: ['01101100110...', '10110011010...']. Reconstruct the full frames for me — I need the identifiers, DLC, payload bytes, CRC15 validity, and which frame won arbitration."},{"title":"Automotive ECU communication audit","prompt":"I need to verify the integrity of CAN frames collected from an ECU test harness. Here are 50 stuffed bit strings from the wire — reconstruct each frame and tell me which ones have valid CRC15 and which were acknowledged."},{"title":"CAN protocol conformance testing","prompt":"I'm running conformance tests on a CAN controller prototype and need to validate that the bit-stuffed output matches expected frame structure. Can you reconstruct the frames from these stuffed bit sequences and report the computed versus received CRC15 values, plus any arbitration conflicts?"}],"resultDescription":"Returns an array of fully reconstructed CAN 2.0 frames, each with: identifier, extended/remote flags, DLC, payload byte count, payload SHA256, wire bit count, stuff bit count, computed CRC15, received CRC15, CRC validity flag, acknowledged flag, and arbitration bits. Also returns the list of arbitration winner frame indices and a flag indicating equal-arbitration payload conflicts.","failureModes":["Malformed or truncated bit strings causing frame parse failure","Bit strings exceeding the 20000-character length limit per frame","More than 512 frames submitted in a single call","Invalid stuffing sequences that cannot be decoded into a valid CAN frame","CRC15 mismatch reported as crc_valid=false (not an API error but a logical failure)","Payload content that cannot produce a valid SHA256 due to malformed DLC"],"whenToPreferThis":"Use this endpoint when you need low-level, bit-exact reconstruction of CAN 2.0 classical frames from raw stuffed bit streams — including CRC15 computation and verification, arbitration resolution, and remote/extended frame detection. Prefer this over higher-level CAN decoders when you need the precise wire-level detail (stuff bit counts, raw arbitration bits, exact CRC values) rather than just payload extraction.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-11-04T06:40:23.246Z","isFirstParty":false,"canonicalSlug":"can-2-0-classic-bit-stuffing-crc15-frame-reconstruction-b0cdd3f2"}