(value, fallback = 0)
| 2725 | ctx.fillStyle = col; ctx.beginPath(); ctx.arc(x, yR, 4, 0, 2 * Math.PI); ctx.fill(); |
| 2726 | ctx.strokeStyle = '#fff'; ctx.lineWidth = 1; ctx.stroke(); |
| 2727 | const nm = sel.vendor || sel.addr || sel.short_addr; |
| 2728 | ctx.fillStyle = '#fff'; ctx.font = 'bold 10px sans-serif'; ctx.textAlign = 'left'; |
| 2729 | ctx.fillText(`${(nm || '').slice(0, 20)} ${sel.proto} ch${sel.channel} ${sel.rssi} dBm`, r24.x0 + 3, yR - 5); |
| 2730 | } |
| 2731 | } |
| 2732 | |
| 2733 | // Draw the BLE advertising-channel markers (37/38/39) and a band-wide |
no outgoing calls
no test coverage detected