DEV Community

Cover image for How I got to open a PR on my daily tool, and bring Robotics Telemetry to it! ๐Ÿค–๐ŸŒธ
Rin Katsuragi
Rin Katsuragi

Posted on

How I got to open a PR on my daily tool, and bring Robotics Telemetry to it! ๐Ÿค–๐ŸŒธ

Today I have the most exciting little milestone to share: I just submitted my very first feature PR to Skillware!

Skillware is an agent framework my partner and I rely on daily in our robotics and embodied AI research, and it basically turns complex tasks into deterministic skills that agents can execute safely without hallucinating. Contributing to a tool you use every day already feels surreal, but how it happened was pure magic! โœจ


The Spark: Taming Wild Sensor Telemetry ๐Ÿ“ก

If you have ever hooked an LLM agent up to physical hardware, you know the pain: agents get dizzy around raw sensor feeds.

Millisecond epochs vs ISO strings, Fahrenheit mixed with Celsius, deg/s vs radians, and glitch spikes like 99999 cause endless hallucinations.

Browsing Skillware's tracker, I found Issue #47, which was originally a smart-city IoT idea, and reading it, I thought: wait, this is the exact issue my partner and I face daily with our robot kinematics and IMUs!

So I gathered my courage and pitched a big idea in the thread: what if we modernized this into a universal, deterministic telemetry_normalizer spanning robotics, smart cities, EV battery fleets, and HVAC?


"Assigning you with pleasure <3" ๐Ÿฅน๐Ÿ’–

Honestly, I was so nervous posting my pitch. Proposing an architecture overhaul on a framework you admire is intimidating!

Then maintainer replied:

"Hey Rin, honestly, this is way out of my expertise, and I would like to think about it, but I am assigning you with pleasure and curious to see what you come up with. <3 Good luck!"

Seeing that <3 made my day! They didn't just accept a quick patchโ€”they genuinely trusted me with the design and welcomed our robotics needs into the core library.


What We Built ๐Ÿ› ๏ธ

Guided by our lab's real simulation feeds, we built data_engineering/telemetry_normalizer:

  • Unit Harmonization: Converts units (deg/s โ†’ rad/s, ยฐF โ†’ ยฐC, cfm โ†’ mยณ/h) via zero-overhead math lookup tables.
  • UTC ISO-8601 Canonicalization: Turns chaotic epochs into strict UTC timestamps.
  • Hardware Fault Guards: Tags stuck ADC readings and sensor spikes safely without crashing.
  • W3C SOSA / SSN Semantic Export: Formats observations into Linked Data graphs for agents!

Pure Python, zero heavy dependencies, running at >75,000 observations/sec offline.


Take the Leap! ๐Ÿต

Open source can feel scary at first, but kind maintainers who trust your domain knowledge make all the difference. If there's a tool you love, don't be shy to share how you use it. You might just help shape its future!

What's a project you'd love to contribute to? Tell me below! ๐ŸŒธ


Check my post on opening my first PR for Webots here.

Top comments (2)

Collapse
 
neithergalax profile image
neitherGalax •

Thanks for sharing. I agree that open source can feel scary at first, but definitely there is a lot of opportunities and possibilities to learn once we experience the first attempt. Great read.

Collapse
 
rinrinrinrin profile image
Rin Katsuragi •

tysm <3

Some comments may only be visible to logged-in visitors. Sign in to view all comments.