Activity

akhil

Multiple changes to improve alignment, memory use, and SLIP handling:

  • Added ETH_PAD_SIZE=1 (lwipopts.h) and updated HAL/docs so BNEP zero-copy path yields 4-byte-aligned payloads, avoiding DMA bounce logic.
  • Default TX queue size reduced to 3 (tinypan_config.h) and docstrings updated to clarify usable capacity and tuning guidance.
  • BNEP: send a Multicast Filter SET request on NAP connect and handle filter responses (tinypan_bnep.c).
  • Transport/netif: account for ETH_PAD_SIZE when removing/adding headers and when allocating/copying pbufs (tinypan_bnep_transport.c, tinypan_lwip_netif.c). Netif init and slip wiring adjusted for SLIP mode.
  • SLIP transport rewritten to streaming FSM: incoming BLE bytes build pbuf chains incrementally and outgoing frames are streamed/escaped in chunks (tinypan_slip_transport.c). Removed static RX ring buffer and old sio stubs.
  • Mock HAL: record a small ring history of recent TX buffers, add input validation, and expose history accessors for tests (hal/mock/tinypan_hal_mock.c).
  • Supervisor: use transport flush callback and set link down on transitions to ensure consistent behavior (tinypan_supervisor.c).
  • Tests updated to validate multicast filter request and to use the new mock TX history API; DHCP test plumbing adjusted to iterate recent TX history.

These changes reduce RAM usage, improve DMA alignment guarantees, prevent multicast broadcast storms, and make SLIP operation more stream-oriented and memory friendly.

Attachment
0
akhil

An Android app for writing, scheduling, and executing Python and JavaScript scripts on-device. Scripts run locally on the phone – no server, no cloud, no registration.

What It Does

  • Users write Python or JavaScript scripts in a built-in code editor
  • Scripts can be scheduled to run automatically (interval, daily, weekly)
  • Scripts execute on the device using real interpreters (Chaquopy for Python, Rhino for JavaScript)
  • Execution output and errors are captured in per-script logs
  • Users can add data files alongside their scripts via file manager
Attachment
0
akhil

Refactor background, add base CSS & utils

Major refactor: improve service worker reliability, storage handling, and UI styling.

  • background.js: rewritten for robustness and performance — added DEBUG flag, storage schema versioning, storage hydration barrier, abbreviated badge util, LRU asset size cache (MAX_ASSET_MEMORY=3000), improved size estimation heuristics, extraction of flush logic, flush on onSuspend, periodic flush daemon, safer DNR dynamic-rule diffing, per-site rule allocator cleanup, more defensive webRequest handling (skip non-page-initiated requests), and stronger message validation/handlers (purgeAll now removes dynamic DNR rules and cleans allocator/site prefs).
  • manifest.json: bumped extension version to 2.1, removed declarativeNetRequestFeedback permission, added content_security_policy for extension pages.
  • UI: added base.css (shared styles) and switched options.html to use it; multiple markup/style cleanups for popup/options.
  • Added shared/utils.js and updated popup/options assets (popup.html/.js/.css, rules.json, README) to reflect behavior and architecture changes.

Why: reduce I/O thrashing, make in-memory state reliable across SW lifecycle events, improve bandwidth accounting and UX, and centralize shared styles/utilities.

Attachment
0
akhil

Do you visit websites that are heavy on images or use the same JavaScript libraries on every page? Every time you navigate, your browser might be redownloading these same assets, consuming your bandwidth and slowing down page loads.

Attachment
0