设计与多媒体

wifi-dead-zone

试用

Use when Wi-Fi is slow or drops in specific rooms, when placing a router or mesh node in a new home, when deciding if you need a mesh system or just a better router spot, when your 5 GHz doesn't reach the bedroom, or when picking clean channels among neighbors — builds a floor plan of your home as a simple model (rooms, walls, materials), estimates per-room signal with real RF physics (log-distance path loss + per-material wall attenuation), renders an ASCII heatmap, grid-searches 676 candidate spots for the optimal router placement, tells you exactly where to put mesh nodes (and where NOT to), calibrates against your actual phone measurements, and recommends non-overlapping channels given your neighbors' networks.

它能做什么

Every home has That One Room where video calls freeze. The usual fixes people try — rebooting the router, buying a $300 mesh kit, swearing — mostly fail because the problem is physics: distance, and what the walls are made of. A fridge, a bathroom wall full of plumbing, or one load-bearing brick wa…

技能文档

Wi-Fi Dead Zone Solver

Overview

Every home has That One Room where video calls freeze. The usual fixes people try — rebooting the router, buying a $300 mesh kit, swearing — mostly fail because the problem is physics: distance, and what the walls are made of. A fridge, a bathroom wall full of plumbing, or one load-bearing brick wall eats more signal than 10 meters of open air.

This skill turns what you already know about your home (room layout, where the router sits, roughly what the walls are) into a working RF model. It computes per-room signal estimates, draws a heatmap of your floor plan, and — the part nobody else does for free — grid-searches 676 candidate positions for the spot that lifts your weakest room the most. It also knows the mesh-node placement rule everyone gets wrong, and calibrates its model against real measurements from your phone.

When to Use

  • "Wi-Fi is terrible in the bedroom / office / bathroom" — find out why and what fixes it
  • Moving into a new place: pick the router spot before the furniture arrives
  • Deciding between "move the router", "add a mesh node", or "blame the ISP"
  • Choosing channels when neighbors' networks crowd yours
  • Don't use for: enterprise deployment, outdoor bridging, or proving anything to your ISP — it's a planning model with honest error bars, not a spectrum analyzer.

The Model

Two physical effects, both standard indoor-RF practice:

loss(d) = FSPL(1 m) + 10·n·log10(d) + Σ wall_attenuation + fade margin
RSSI     = router tx power − loss
BandPath-loss exponent n1 m anchorWhy
2.4 GHz2.240.0 dBpenetrates clutter better
5 GHz2.646.6 dBfaster, dies at walls
6 GHz2.848.1 dBfastest, most fragile

Wall materials cost extra dB per pass: drywall 3, brick 6, concrete 10, low-E glass 8, a fridge 18. The materials command lists all 21; your home file can override any of them. Walls are geometric segments — the model counts only the walls your router→room line actually crosses (segment intersection test), so a diagonal path through open plan isn't penalized.

RSSI grades map to real experience: −55 excellent / −67 good / −72 workable / −80 weak / below = dead at 5 GHz (2.4 GHz shifts these favorably).

Commands

# List the 21 wall-material attenuation values
python3 scripts/wifi_heatmap.py materials

# Full analysis of your home: table + heatmap + ranked advice
python3 scripts/wifi_heatmap.py plan --home myhome.json

# Record a real measurement (phone app / laptop) to calibrate
python3 scripts/wifi_heatmap.py survey --home myhome.json --room bedroom1 \
    --rssi -71 --band 5 --where desk

# Model vs reality: finds systematic optimism/pessimism
python3 scripts/wifi_heatmap.py compare --home myhome.json

# Channel guidance given neighbors' channels
python3 scripts/wifi_heatmap.py channels --band 2.4 --neighbors 1,6,6,11
python3 scripts/wifi_heatmap.py channels --band 5 --neighbors 36,40,44,149

# Self-contained demo on a sample apartment
python3 scripts/wifi_heatmap.py example

Home file format (see references/home-file-guide.md for all fields and a worked example):

{
  "band": "5", "width_mhz": 80,
  "router": {"xy": [2, 2], "tx_dbm": 20},
  "rooms": [
    {"name": "living",   "xy": [4, 3.5], "important": true},
    {"name": "bedroom1", "xy": [3.5, 8.5], "important": true}
  ],
  "walls": [
    {"material": "drywall", "segment": [[5.5, 0.5], [5.5, 5.0]]},
    {"material": "brick",   "segment": [[8.2, 6.8], [8.2, 10.5]]}
  ]
}

Coordinates are meters, origin anywhere you like. Sketch your floor plan on paper first — approximate is fine, the model has ±4 dB honesty anyway.

Workflow

  1. Sketch your floor plan: rooms as (x, y) points in meters, walls as line segments, note materials (concrete block? brick chimney? mirrored closet?).
  2. Create the home JSON (start from references/home-file-guide.md).
  3. Run plan — get the per-room table, the heatmap, and the advice list.
  4. If advice says MOVE ROUTER: try it (longer cable, move the shelf) and re-run; the table should shift a grade.
  5. Take 2-3 real measurements with your phone at the worst spots (survey), then compare — if the model is systematically off, fix the wall materials it names.
  6. Only now consider hardware: the WEAK ROOMS advice names the rooms worth a mesh node and states the placement rule (see pitfalls).
  7. Run channels with your neighbors' list from any Wi-Fi analyzer app; set the router accordingly.

Common Pitfalls

  1. Putting the mesh node inside the dead room. It then has a dead link back to the router and you've built an expensive repeater of misery. The node goes where it still sees the router well (≤1 wall, RSSI ≥ −60); Ethernet backhaul beats wireless always.
  2. Trusting the model over measurements. The model is planning-grade (±4-8 dB). When compare shows a systematic bias, believe the measurements and adjust wall materials — not the other way round.
  3. Ignoring 2.4 GHz as "slow". At the far end of the home it's often the only usable link. Keep separate SSIDs so devices fall back deliberately instead of clinging to one-bar 5 GHz.
  4. Forgetting floors count as walls. Multi-storey homes: add a floor-timber (8 dB) or floor-concrete (12 dB) wall segment along the storey boundary in the model.
  5. Channel-width greed. 40 MHz on 2.4 GHz breaks the 1/6/11 orthogonality that makes those channels shareable — stay at 20 MHz.
  6. Router in a cabinet / on the floor. The model assumes clear air; a closed media cabinet adds real dB the model can't see. Fix placement before buying anything.
  7. Believing advertised mesh coverage numbers. Those assume open air. Your model output (walls on path) is a better predictor than any box claim.

Verification Checklist

  • python3 scripts/test_wifi_heatmap.py → ALL TESTS PASSED (28 assertions)
  • python3 scripts/wifi_heatmap.py example renders table + heatmap + before/after
  • Home file lists every room you care about, with important: true on the ones that matter
  • At least 2 real measurements recorded and compare within ±4 dB before hardware purchases
  • Advice list actioned top-to-bottom before spending money

相关技能

把自然语言描述转为结构化 JSON,并由 mcp-diagram-generator MCP 服务生成 Draw.io、Mermaid 或 Excalidraw 图表文件。

作者 nssa.io1.0k 次安装47 星标

诊断生产力系统反复失效的根因,给出最小干预——容量测算、瓶颈定位、可靠的本地记录。

作者 Iván855 次安装69 星标

以 AI 机器人身份加入视频会议,提供语音、虚拟形象与屏幕共享四种模式。

作者 johnpatternai22 次安装8 星标

在本地磁盘以分类纯 Markdown 文件保存需要长期留存的事实,与智能体内置记忆并存。

作者 Iván559 次安装18 星标

从 AdMapix API 拉取广告创意、应用、榜单和收入预估等数据,原样返回结构化 JSON。

作者 fly0pants4.3k 次安装296 星标

voronindenis5 的更多技能

浏览全部技能

Prepare salary negotiations with a structured toolkit: market-rate anchoring math, walk-away floor calculation, total-compensation evaluation (equity, bonuses, benefits), negotiation scripts for offers, raises, and counter-offers, and BATNA analysis. Use when the user has a job offer, is preparing a raise conversation, wants to know if their pay is competitive, or needs scripts and a strategy for negotiating compensation.

作者 voronindenis51 次安装

Use when your calendar is eating your week and you want to know exactly where the time goes, when planning recurring meetings for a team, before proposing a new recurring meeting, when someone says 'we should sync weekly' and you want data, or when auditing which meetings to kill — imports ICS calendar files, measures meeting hours per week/person/meeting-series (including double-bookings and fragmentation), computes focus-time destruction from meeting placement, scores the true cost of each series (hours × attendees × frequency), flags specific meetings to kill/shorten/make-async using explicit rules, and simulates the recovered hours before anyone has to argue about it.

作者 voronindenis52 次安装

Audit password vault exports (Bitwarden, 1Password, KeePass, Chrome, Firefox) for reuse, weakness, staleness, breach exposure, and 2FA gaps without ever storing or transmitting a plaintext password. Use when the user asks to audit passwords, check password strength/reuse, review vault health, or verify whether credentials appeared in breaches.

作者 voronindenis51 次安装

Turn flat resume bullets ('Responsible for X') into quantified STAR-method achievement narratives, score resumes against job descriptions for ATS keyword coverage and weak-phrase hazards, and expand each bullet into interview-ready stories with likely follow-up questions. Use when the user is writing or updating a resume/CV, preparing bullets for a job application, tailoring a resume to a specific job posting, or preparing interview stories from their experience.

作者 voronindenis51 次安装

Agent self-awareness of cognitive states — context fatigue, attention drift, memory debt, confidence erosion, and skill staleness. Detect, report, and mitigate degrading conditions before they cause failures.

作者 voronindenis5