Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (Cyborg)
  • No Skin
Collapse
Brand Logo

CIRCLE WITH A DOT

  1. Home
  2. Uncategorized
  3. OpenClaw vs. a 475-page datasheet: let the robot do the transcribing πŸ¦žπŸ€–

OpenClaw vs. a 475-page datasheet: let the robot do the transcribing πŸ¦žπŸ€–

Scheduled Pinned Locked Moved Uncategorized
10 Posts 3 Posters 32 Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • adafruit@fosstodon.orgA This user is from outside of this forum
    adafruit@fosstodon.orgA This user is from outside of this forum
    adafruit@fosstodon.org
    wrote last edited by
    #1

    OpenClaw vs. a 475-page datasheet: let the robot do the transcribing πŸ¦žπŸ€–

    adafruit@fosstodon.orgA 1 Reply Last reply
    1
    0
    • adafruit@fosstodon.orgA adafruit@fosstodon.org

      OpenClaw vs. a 475-page datasheet: let the robot do the transcribing πŸ¦žπŸ€–

      adafruit@fosstodon.orgA This user is from outside of this forum
      adafruit@fosstodon.orgA This user is from outside of this forum
      adafruit@fosstodon.org
      wrote last edited by
      #2

      The u-blox SAM-M8Q has been sitting on my bench for months. This little GPS module has a built-in antenna, coin cell backup, speaks both NMEA and UBX binary protocol over UART or I2C.

      adafruit@fosstodon.orgA 1 Reply Last reply
      0
      • adafruit@fosstodon.orgA adafruit@fosstodon.org

        The u-blox SAM-M8Q has been sitting on my bench for months. This little GPS module has a built-in antenna, coin cell backup, speaks both NMEA and UBX binary protocol over UART or I2C.

        adafruit@fosstodon.orgA This user is from outside of this forum
        adafruit@fosstodon.orgA This user is from outside of this forum
        adafruit@fosstodon.org
        wrote last edited by
        #3

        So why isn't it in the shop already? Well, it's mostly cause of the 475-page interfacing datasheet documenting every command, struct, and config register. Hundreds of message types. I got partway through by hand with some Claude Code Sonnet assistance, but ran out of time - plus it was still tedious when babysitting Sonnet.

        adafruit@fosstodon.orgA 1 Reply Last reply
        0
        • adafruit@fosstodon.orgA This user is from outside of this forum
          adafruit@fosstodon.orgA This user is from outside of this forum
          adafruit@fosstodon.org
          wrote last edited by
          #4

          I review the plan to make sure it prioritizes the most common commands and reports, and flagged some unessential sections like automotive-assist or RTK-specific. Then Codex is assigned each message implementation task as a sub-agent and writes the actual C code for the Arduino library.

          adafruit@fosstodon.orgA 1 Reply Last reply
          0
          • adafruit@fosstodon.orgA adafruit@fosstodon.org

            I review the plan to make sure it prioritizes the most common commands and reports, and flagged some unessential sections like automotive-assist or RTK-specific. Then Codex is assigned each message implementation task as a sub-agent and writes the actual C code for the Arduino library.

            adafruit@fosstodon.orgA This user is from outside of this forum
            adafruit@fosstodon.orgA This user is from outside of this forum
            adafruit@fosstodon.org
            wrote last edited by
            #5

            Opus suggested using struct-based parsing rather than digging through each uint8_t array; we just memcpy the checksummed message raw bytes onto the matching struct and extract the typed bit fields.

            adafruit@fosstodon.orgA 1 Reply Last reply
            0
            • adafruit@fosstodon.orgA adafruit@fosstodon.org

              Opus suggested using struct-based parsing rather than digging through each uint8_t array; we just memcpy the checksummed message raw bytes onto the matching struct and extract the typed bit fields.

              adafruit@fosstodon.orgA This user is from outside of this forum
              adafruit@fosstodon.orgA This user is from outside of this forum
              adafruit@fosstodon.org
              wrote last edited by
              #6

              We've got four message types done so far. After each message is implemented, Codex also writes a test sketch that will exercise / pretty-print the results of each message, great for self-testing as well as regression testing later. Tonight I'm telling it to keep going while I sleep: code, parse, test against live satellite data, fix failures, commit and push on success, then move on to the next.

              adafruit@fosstodon.orgA 1 Reply Last reply
              0
              • adafruit@fosstodon.orgA adafruit@fosstodon.org

                We've got four message types done so far. After each message is implemented, Codex also writes a test sketch that will exercise / pretty-print the results of each message, great for self-testing as well as regression testing later. Tonight I'm telling it to keep going while I sleep: code, parse, test against live satellite data, fix failures, commit and push on success, then move on to the next.

                adafruit@fosstodon.orgA This user is from outside of this forum
                adafruit@fosstodon.orgA This user is from outside of this forum
                adafruit@fosstodon.org
                wrote last edited by
                #7

                To me this is a great usage of "agentic" firmware development: there's no creativity in transcribing 84 different structs from a 475-page datasheet. Once the LLMs are done, I can review the PRs as if it were an everyday contributor and even make revision suggestions.

                pr_ret_lutz@jasette.facil.servicesP 1 Reply Last reply
                0
                • philip@social.simplexity.questP This user is from outside of this forum
                  philip@social.simplexity.questP This user is from outside of this forum
                  philip@social.simplexity.quest
                  wrote last edited by
                  #8

                  @adafruit that repo doesn’t seem to exist?

                  1 Reply Last reply
                  0
                  • adafruit@fosstodon.orgA adafruit@fosstodon.org

                    So why isn't it in the shop already? Well, it's mostly cause of the 475-page interfacing datasheet documenting every command, struct, and config register. Hundreds of message types. I got partway through by hand with some Claude Code Sonnet assistance, but ran out of time - plus it was still tedious when babysitting Sonnet.

                    adafruit@fosstodon.orgA This user is from outside of this forum
                    adafruit@fosstodon.orgA This user is from outside of this forum
                    adafruit@fosstodon.org
                    wrote last edited by
                    #9

                    However, now we're living in an Opus + Codex era! So I pointed my Raspberry Pi OpenClaw at it.

                    Here's the setup: Raspberry Pi 5 running OpenClaw, wired to a QT Py RP2040, which talks to the SAM-M8Q. Opus 4.6 reads the datasheet (converted to markdown first by Sonnet 4.6 with 1M context to minimize re-parsing that PDF every session) and builds the implementation plan.

                    1 Reply Last reply
                    0
                    • adafruit@fosstodon.orgA adafruit@fosstodon.org

                      To me this is a great usage of "agentic" firmware development: there's no creativity in transcribing 84 different structs from a 475-page datasheet. Once the LLMs are done, I can review the PRs as if it were an everyday contributor and even make revision suggestions.

                      pr_ret_lutz@jasette.facil.servicesP This user is from outside of this forum
                      pr_ret_lutz@jasette.facil.servicesP This user is from outside of this forum
                      pr_ret_lutz@jasette.facil.services
                      wrote last edited by
                      #10

                      @adafruit @adafruit Cool! Moreover since you're an expert in the field, you're immune to the documented 'skill decay' phenomenon. And as you say, there were no creativity in the process, apart some design decisions here and there....

                      1 Reply Last reply
                      0
                      • R relay@relay.an.exchange shared this topic
                      Reply
                      • Reply as topic
                      Log in to reply
                      • Oldest to Newest
                      • Newest to Oldest
                      • Most Votes


                      • Login

                      • Login or register to search.
                      • First post
                        Last post
                      0
                      • Categories
                      • Recent
                      • Tags
                      • Popular
                      • World
                      • Users
                      • Groups