{"slug": "groundsignal-the-sidewalk-told-on-itself", "title": "GroundSignal — The Sidewalk Told on Itself", "summary": "A developer built GroundSignal, an open-source, local-first field tool that uses phone motion sensors and the TabPFN tabular model to generate private, uncertainty-aware reports on how a sidewalk or path physically feels underfoot or under wheels. Raw motion data stays in the browser, with personal calibration replacing universal thresholds, and the project ships a transparent synthetic demo walk plus a deterministic local fallback when the hosted model is unreachable. It was submitted to the Hacktoberfest 2026 Week 1 \"Touch Grass\" challenge and is released under the MIT License.", "body_md": "*This is a submission for the [Hacktoberfest Open-Source AI Challenge Week 1: Touch Grass](https://dev.to/challenges/hacktoberfest-week1-2026-10-05)*\n\nGroundSignal started with one question: **can the motion already happening in your pocket become useful evidence without becoming surveillance?**\n\nI built it from scratch during the Week 1 challenge window. It turns a short walk, wheelchair journey, or stroller trip into a private, inspectable surface report. The AI core is **TabPFN**, which is well suited to the small, personal calibration sets this problem creates—and gives me probability evidence instead of a mystery label.\n\nA sidewalk already communicates through motion. Smooth pavement, rough patches, unstable sections, and transitions all feel different, but they also change with the person, mobility mode, device, phone placement, pace, and conditions. So GroundSignal does not pretend that one universal threshold can describe every path. It learns from surfaces the user already knows.\n\nThat is the **Touch Grass** idea at the center of the project: the useful data is collected while someone is actually moving through the world. Screen time is reserved for setup, review, and export.\n\n*The deployed starting screen: no account, no map, and no location collection.*\n\nThe workflow is deliberately designed to keep the screen as the shortest part of the experience:\n\nDuring recording, **Pocket Mode** becomes intentionally quiet and minimal. The product should encourage the user to experience the outside world instead of staring at another dashboard.\n\nGroundSignal is intended for walkers, wheelchair users, mobility-scooter users, parents using strollers, and anyone interested in documenting how a path physically feels.\n\nGroundSignal is a field-observation tool—not a route-safety guarantee, navigation product, or universal accessibility rating.\n\n[Open the GroundSignal live demo](https://groundsignal-rlmh.onrender.com)\n\n*This self-playing walkthrough was captured from the deployed application. The demo motion is synthetic and visibly labeled; it is not presented as field evidence.*\n\nThe application includes a **Run transparent demo walk** option. It creates clearly labeled synthetic motion data, allowing judges to evaluate the complete workflow without granting sensor permission or physically carrying a phone.\n\nThe transparent demo covers:\n\n*The report keeps the model name, confidence, evidence-quality warning, route signature, and human-review controls visible together.*\n\nThe production API health endpoint is also public:\n\nThe API response identifies the active model provider as `tabpfn`.\n\nBecause the API currently uses Render's free compute plan, the first request after an idle period may need a short cold start. The installed PWA still has a deterministic local fallback when the hosted model cannot be reached.\n\nThe complete project is open source under the MIT License:\n\n**The sidewalk told on itself.** Turn a short outdoor walk into a private, inspectable, uncertainty-aware surface report.\n\nGroundSignal is a local-first pocket field instrument for the Hacktoberfest 2026 Week 1 **Touch Grass** challenge. It uses phone motion sensors, personal calibration, transparent signal features, and an open tabular model to describe how a path felt underfoot or under wheels—without collecting location or identity.\n\nThe project is built for two challenge categories:\n\nGroundSignal is a field-observation aid. It is not a safety guarantee, navigation service, or universal accessibility rating.\n\nTraditional path data is usually static, generic, or tied to a map. But a surface feels different depending on a person's mobility mode, phone hardware, placement, weather, and…\n\nRepository: [github.com/abhijeetnardele24-hash/groundsignal](https://github.com/abhijeetnardele24-hash/groundsignal)\n\nThe repository contains:\n\nGroundSignal is separated by a strict privacy boundary: **raw motion belongs to the browser**.\n\n*Raw motion stays on the device. Only bounded derived features and personal calibration labels cross the explicit analysis boundary; probabilities return for local human review.*\n\nGroundSignal listens to browser `DeviceMotionEvent` readings after an explicit user action. It records acceleration and rotation locally, then divides the recording into overlapping three-second windows.\n\nEach window becomes a bounded feature vector containing interpretable measurements such as acceleration RMS and standard deviation, peak-to-peak acceleration, jerk RMS, gyroscope RMS, dominant frequency, spectral entropy, vertical and horizontal energy, and sample coverage.\n\nRaw sensor samples are never included in an analysis request. GroundSignal also does not request or collect GPS coordinates, precise location, identity, accounts, camera data, or microphone data.\n\nA surface signal depends heavily on the user's device, mobility mode, phone placement, and pace. That makes this a small, session-specific tabular learning problem.\n\nBefore analysis, GroundSignal requires at least eight usable calibration windows covering at least two known surface classes.\n\nThe production backend sends only derived features and user-provided calibration labels to the TabPFN provider. The model returns predictions for:\n\n`smooth`` rough``unstable`` transition`\nEach prediction contains the complete probability distribution, not only the winning label. A prediction below the documented `0.58` confidence threshold is marked as **abstained** and placed into human review. GroundSignal does not silently turn uncertainty into truth.\n\nA user can confirm a prediction, correct its surface label, discard an unusable window, or promote reviewed evidence into later local calibration. The correction remains visible in the exported evidence, making model output inspectable instead of presenting it as unquestionable truth.\n\nReports, derived features, calibration evidence, and reviews are stored in IndexedDB. The local ledger has bounded retention and allows recent audits to be reopened.\n\nThe PWA includes a manifest and service worker. If the hosted API is unavailable, the frontend switches to an explicitly named `offline-transparent-baseline`.\n\nThe fallback is a deterministic nearest-centroid classifier. It is not disguised as TabPFN, and every exported report identifies which provider produced it.\n\nThe FastAPI service applies strict schemas that reject unknown fields, request-size limits, rate limiting, model concurrency limits, an inference timeout, restricted CORS origins, and defensive browser headers.\n\nThe production service has no user accounts, file uploads, location storage, or database. The frontend and API are deployed together using a Render Blueprint, while the TabPFN token remains a private Render environment variable.\n\nI tested the project locally and on its deployed Render environment.\n\nCurrent automated verification:\n\nThe deployed flow was also tested through the browser:\n\nI kept the synthetic demo visibly labeled as simulation. I do not present generated motion as real field evidence, and GroundSignal documents physical phone testing as a separate validation step.\n\nGroundSignal handles motion that may indirectly reflect a person's mobility and environment. That made an inspectable, replaceable, and privacy-conscious architecture more important than hiding everything behind one opaque prediction endpoint.\n\nOpen innovation made four important design decisions possible:\n\nThe project is available under the MIT License so others can audit its privacy assumptions, test alternative models, improve the feature pipeline, or adapt the instrument for different mobility experiences.\n\nTwo community perspectives reinforced these choices:\n\nI used an AI coding agent as a pair programmer during implementation, testing, security review, documentation, and Render deployment.\n\nAI assistance helped with reviewing architecture decisions, refining implementation code, expanding automated tests, diagnosing deployment and CORS issues, testing the local and deployed applications, and improving documentation.\n\nI reviewed the resulting work, kept the repository history visible, ran the complete test suites, and manually verified the deployed user journey.\n\nThe project does not include API keys or secrets in the repository. Any agent-session transcript will be reviewed for sensitive setup information before being made public.\n\nGroundSignal uses TabPFN for a small, personal, tabular classification problem.\n\nEach session begins with a limited calibration set representing the current user, device, placement, mobility mode, and conditions. TabPFN converts those calibration examples and derived motion features into a probability distribution across four surface-signal classes.\n\nThe project makes the result inspectable through probabilities, confidence, abstention, evidence-quality reporting, and human correction.\n\nRender hosts the complete public application:\n\nBoth services are defined in a single `render.yaml` Blueprint, making deployment reproducible directly from the public repository.\n\nGroundSignal uses Render as more than a place to host a landing page: Render runs the bounded inference API connecting personal calibration evidence to TabPFN.\n\nGroundSignal asks people to look at the path, not the screen.\n\nThe phone becomes a small field instrument. The model stays uncertain when it should. And the sidewalk gets a chance to tell its own story.", "url": "https://wpnews.pro/news/groundsignal-the-sidewalk-told-on-itself", "canonical_source": "https://dev.to/abhiisalright/groundsignal-the-sidewalk-told-on-itself-25k3", "published_at": "2026-10-08 20:10:14+00:00", "updated_at": "2026-10-08 20:19:39.073611+00:00", "lang": "en", "topics": ["machine-learning", "ai-tools", "developer-tools", "ai-products"], "entities": ["GroundSignal", "TabPFN", "Hacktoberfest", "Render", "abhijeetnardele24-hash"], "also_reported_by": [], "alternates": {"html": "https://wpnews.pro/news/groundsignal-the-sidewalk-told-on-itself", "markdown": "https://wpnews.pro/news/groundsignal-the-sidewalk-told-on-itself.md", "text": "https://wpnews.pro/news/groundsignal-the-sidewalk-told-on-itself.txt", "jsonld": "https://wpnews.pro/news/groundsignal-the-sidewalk-told-on-itself.jsonld"}}