PHRYKTOR / LIVE WORKSPACE
Operations overview
Your radio, reports, and services at a glance.
Latest inbound
View inbox ↗Most recent message from each radio channel (private messages excluded).
Source health
FEEDSFeed timestamps reflect each source’s collection schedule.
Recent radio activity
Requests ↗Radio acceptance confirms local submission, not remote reception.
Latest Wire release
Archive ↗Docker at a glance
Explore fleet ↗Containers
CPU and memory are sampled every 30 seconds. Network and disk I/O are cumulative counters.
| Container / image | State | CPU | Memory | Network I/O | Started | Restarts |
|---|
Storage
WORKSTATIONLoading your mesh…
Glow: advertisement timestamp within 5 minutes
Map controls
All nodes come from contacts stored on this radio. Positions and timestamps are from advertisements, which may be old or relayed. The sampled RF packet view records reception at this radio; it does not provide statewide coverage or prove direct links.
Radio statistics
Dedicated USB observer health updates approximately every 30 seconds. The reporting radio operates separately. Counters are cumulative since the observer restarted.
Known radio contacts
Saved radio contacts, not a list of currently online devices. Routes describe the radio’s stored outgoing path; they do not prove direct reception.
| Contact | Type | Last advertisement | Stored route |
|---|
This legacy sample list may contain older observations. Use Packet explorer for the current 30-day archive. Private message contents are never displayed.
| Received | Packet type | RSSI | SNR | Bytes | Path |
|---|
People requesting reports
Request history
LATEST 150| Requester | Command | Time | Request | Response |
|---|
Source: messages dequeued from this radio by Phryktor’s local listener. No Discord, external mesh website or MQTT inbox feed is used. Public view excludes DMs.
Recent inbox
Open room messages →Latest 200 received events. Use Room messages for the full 30-day public archive.
Latest report by topic
Latest archived content for each topic. Original timestamps show how recently a report was recorded. Public snapshots refresh every minute.
WEATHER DESK / COLORADO · FRONT RANGE & MOUNTAINS
Forecast & radar
Plan with the forecast. Track precipitation with observed radar. Check official warnings for affected areas.
Loading observed radar history…
Radar choices save to this browser profile.
The ten-minute loop starts automatically over the Colorado / Front Range AOR, using genuine frames ending at the latest NOAA observation. Matching saved NOAA images supply the default regional loop when available, using their exact original observation times. Pause or select a longer window. Reduced-motion settings start paused. Observed precipitation echoes from NOAA/NWS MRMS. Coverage and reporting delays vary; a blank map does not prove clear weather. Current mode checks every minute and follows the latest actual NOAA observation. Replay keeps your chosen frame. High quality uses larger images with categorical colors preserved; it does not increase the source’s physical resolution. Longer loops use saved Colorado frames, retaining up to 24 hours and building history over time.
Aurora forecast outlook
Compare all five cities for the week →Rainfall, dry spells & flood context
Loading observations…
Use official flood outlooks and river forecasts, U.S. Drought Monitor Colorado, and burn-scar flood guidance alongside these observations.
Join #phryktor · scan the QR code
Join #phryktor
Connect your companion radio, then scan this code with the MeshCore app to add the room.
On the same phone? Tap Add room in MeshCore. If your camera does not open the app, use its channel QR scanner. You can also add the hashtag #phryktor manually.
This is a public hashtag room. Adding it does not change your radio settings or share your location.
OPERATIONS / FRONT RANGE
Connecting to published conditions…
Your local picture
Choose a city, ZIP area, or point on the map. Saved places and routes stay in this browser.
Loading local sources…
Map: warnings · road incidents · cameras · air monitors · fires · reported storm impacts · official emergency areas. Click any point to focus there.
Next 12 hours
Nearby conditions & incidents
Official emergency notices
Transit disruptions
Local incident timeline
Updates are grouped by source and incident ID. Collection disappearance and alert expiry do not confirm resolution.
Read public radio observations → Radio conversations remain separately attributed; they are not treated as official incident confirmations.
Weather & air
Radar ↗Roads & wildfire
Map layers ↗Active weather alerts · Colorado
What changed?
Timeline ↗Data freshness
Network history ↗Storage & backups
SITUATIONAL AWARENESS / COLORADO
Your situation map
Choose your area, turn individual layers on or off, and select a basemap. Your choices are saved in this browser.
Map symbols & interpretation
Mesh positions are approximate; markers do not show coverage or guaranteed connectivity. Radar shows observed echoes. Smoke is model guidance, not a ground measurement. Fire markers show reported incident locations, not evacuation boundaries. Weather markers show warnings and urgent severe threats; watches and advisories remain in the full alert list. Icons label official alert areas, not exact tornado or lightning locations. No individual lightning-strike feed is connected. Alerts without polygons remain in the alert list.
Air quality monitors · Colorado
EPA AirNow preliminary AQI for ozone and particles, whichever is highest at each monitor. PM2.5 concentration is in µg/m³. Readings vary by location and can be revised.
How to read these charts
Samples are recorded every five minutes. Gaps mean no observation; they are not counted as healthy or failed. Packet counts are differences between continuous radio samples and are unknown after counter resets. Signal values describe the last received sample, not every node. Recently heard means reported within 15 minutes, not a guaranteed reachable node.
View recent samples
Get started with Phryktor
Phryktor combines local radio observations with attributed public sources. Use the master overview for your chosen city, monitoring for data freshness, and source links for official details.
Phryktor: reports and general commands. Wire: Wire reports. #weather: standalone concise NWS forecasts (wx or wx ZIP), weather full and point-specific alerts; separate from Phryktor reports. #bot: ping, test, sig, path, version, hello, joke, dadjoke, dice, roll, coin and magic8. Public, #emergency and other community rooms are observation-only. Direct messages support reports and bot utilities.
- Use your MeshCore radio or its companion app to join the Phryktor channel. Ask the operator for channel setup; channel keys are never published here.
- Send
helpin a supported channel, or sendhelpdirectly to Phryktor. - Try
wx 80018,roads I-70, orsitrep brief. Wait for the radio response before repeating a request.
This website only displays information. The commands below must be sent from your radio app.
Wire reports
The #wirereports channel supports wire, latest, since 3w, and wire YYYY-MM-DD. Requests are limited to one full report with a five-minute cooldown.
Map & status guide
- Recently heard
- An advertisement timestamp saved on your radio falls within the selected time window; it may have arrived through relays.
- Saved contact
- A radio contact with a stored advertisement; it may be old or offline.
- Cluster
- Nearby markers grouped together. Select a cluster to zoom in.
- RSSI / SNR
- Received signal strength / signal relative to noise. These describe reception at the monitoring radio.
- Stale / unavailable
- The last known value may be outdated, or no current observation exists.
Use official alerts and local instructions for emergency decisions. This dashboard is a supplemental community information service.
Supported command reference
Your viewing preferences
Saved only in this browser. No account and no changes to the radio or server.
Choose a viewing mode
Lightweight mobile view
Essential conditions, alerts, road summaries and network status. No map tiles, radar images, or large archives.
Open lightweight view ↗Wall display
Rotate Right now, Situation map, Radar, and Network history with your clock selection.
Situation report
Download a timestamped HTML briefing to save, share, or open and print to PDF. It includes the information currently available, with source ages.
PHRYKTOR / OPEN SOURCE INTELLIGENCE
OSINT desk
Official releases, world reporting, investigations, and public social posts. Follow each item to its original source.
Loading source feeds…
Official statements describe the issuing organization’s position; social posts and news claims are not independently verified by Phryktor. Region tags use headline keywords. Repeated links do not count as independent confirmation.
Free public feeds · checked every 10 minutes · original publication times preserved · source links open externally. Daily briefs are automatically selected headlines, not analyst assessments. No private messages or account credentials are published.
LOCAL RF / 1090 MHz
Air traffic
Aircraft heard by Phryktor’s own antenna, with live positions and recorded flight trails. This map can be used on its own; choose which aircraft types and colors to display.
Live aircraft
Aircraft icons & colors: customize by type above— Recent trail · 15 minFaded: last heard over 30 sec ago
AIRCRAFT DETAILS
Select an aircraft
Choose a marker or a row below to inspect its received flight data.
Aircraft in reception
| Aircraft | Type | Altitude | Speed | Heading | Last heard | Position |
|---|
FLIGHT HISTORY / 90 DAYS
Explore recorded traffic
Five-second samples, saved on the external drive. Choose a UTC hour to explore its flight trails. History starts when this receiver was connected.
Loading archive index…
Source: local RTL-SDR Blog V4, decoded with readsb. Aircraft models and military flags use a locally installed tar1090-db / Mictronics identity reference; it supplies no live flight positions. Categories and operator hints are identified in aircraft details. Signals are collected locally. Only aircraft signals received here appear; reception depends on antenna placement and radio coverage. This receiver listens on 1090 MHz, not 978 MHz UAT. Altitudes are transmitted barometric feet unless unavailable; tracks are degrees true and speed is knots. Gaps in trails indicate missing reception. This display is for situational awareness, not aviation navigation.
FRONT RANGE / SEVEN-DAY OUTLOOK
Seven-day outlook
Choose a city for morning, afternoon and evening/night forecasts. Icons show every supplied condition change, alongside the original forecast text.
Loading weekly forecasts…
NWS forecast for each city center. The current day may be partial. Rain/snow chance is the highest supplied period probability for that day. Morning is 6 AM–noon, afternoon noon–6 PM, and evening/night 6 PM–6 AM in Denver time. Hourly temperature ranges and condition changes use supplied NWS forecasts; missing hours are not filled in. Broader day/night fallback periods are labeled. Forecast values are not live measurements.
Official NWS forecast →Route readiness
Loading source data…
Reception compared with normal activity
Loading source data…
Recovery and verified backup timeline
Loading source data…
Cameras
Public COtrip cameras across Colorado, with saved favorites and available live streams.
Mountains
Cameras along Colorado mountain corridors, with available live streams.
Rivers & water
Streamflow, gauge heights, and observed changes.
Smoke & air
Particle pollution trends, regional model guidance, and official smoke outlooks.
Both radios & all services
Reporting and passive reception use separate radios. Confirmation means the collector recently checked the equipment; it does not prove coverage everywhere.
All Docker containers
Every collector and data source
Collection health and source freshness are different. A working collector can receive old data or encounter an unavailable upstream service.
Independent recovery checks
Failure and restart history
Recorded from installation onward. Repair completed means the command finished; verified means the health check passed. Root reboot count appears above.
Source checks and original observations
Official intelligence briefing
Observed airport weather, regional earthquakes, and space-weather context. Each item keeps its source timestamp and link.
Road conditions & traffic incidents
COtrip operator road reports, route weather guidance, closures and incidents. Live traffic speeds and congestion estimates are not supplied by the connected feeds.
Reported traffic incidents
Local intelligence desk
Incident briefings, cameras, source updates, assistance and reviewed community observations in one place.
Priority incidents
Select an incident to see its briefing.
Follow your areas
Updates cover your selected area, saved places and followed road routes. Browser notifications work while this site is open; they do not provide closed-browser push or replace official alert subscriptions.
Outages, shelters & official help
Official finders remain authoritative. Operator-entered entries include a source, observation time and expiry; they do not imply complete coverage.
Community observations
Approved reports are reviewed for publication, not independently verified. Send neighborhood-level observations; avoid names, exact home addresses and private information. This form does not contact emergency services.
Recorded incident timelines
Each timeline follows versions of the same agency/source record. Nearby reports are context, not automatically the same incident. A record disappearing or expiring does not prove resolution.
Source freshness
Current means the collector recently succeeded; it does not guarantee every measurement is recent or complete. Original observation times remain visible. Delayed or unavailable data is not an all-clear.
Camera wall
Pin cameras for a 2, 4, 9 or 16 view display. Select which pinned cameras run live video. Preferences and clock settings stay in this browser. Live feeds use this viewing device’s bandwidth; some cameras offer snapshots only.
Layout and fullscreen clocks
Official COtrip imagery · streams have independent delays; shared refresh does not synchronize source capture times · snapshot timestamps are shown when supplied. Fullscreen applies to this display; Escape exits.
Live mesh rooms
Public messages actually heard or accepted by your local radios. This view reads the archive; it does not send messages or expose private conversations.
Open #emergency · Open #cm-reach · MECP decoder & code reference
MECP messages are translated below their original text. Reports are unverified; tests and drills are labeled. No emergency acknowledgements are sent.
Colorado Mesh channel guide · all eight listed topics available
Checked against Colorado Mesh’s published common-channel directory on October 4, 2026. These channels are already included in Phryktor’s monitored room list; a room may have no locally received messages.
- #testing — Device and connection tests
- #emergency — Emergency and urgent community messages
- #weather — Weather discussion and reports
- #sports — Sports discussion
- #bot — Bot commands and replies
- #jokes — Jokes and casual humor
- #hamradio — Amateur radio discussion
- #cm-reach — Reach-check test session codes
Official community channel guide · Public is the general channel; Phryktor and Wire are additional existing local rooms.
What do #cm-reach codes mean? · Read a code
MHC means Mesh Health Check. A message such as MHC- followed by six hexadecimal digits identifies a reach-test session. People send it to find out which participating receivers hear their message. The digits are random; they do not translate into an emergency, location, route or signal strength.
Below each recorded code, this reader explains its purpose and shows matching local chat entries. Broader results require the test service’s actual observer receipts; they are not embedded in the code. This reader uses only Phryktor’s locally collected public messages.
Protocol / reach-check project documentation · Official Colorado Mesh Range Check · opens separately. Phryktor does not load its API, observer feed or session results.
Loading locally heard messages…
New messages appear at the bottom · source reception time shown.
Camera timelapses
Actual recorded snapshots, starting when recording is enabled. Up to 48 hours within a shared 256 MiB limit. Source gaps remain gaps; past video cannot be reconstructed.
Custom route watch
Follow any road in the statewide camera catalog. Narrow it to a corridor using map points, then see nearby cameras, reported conditions, weather and dated hazard context. Drawn corridors are planning references, not turn-by-turn directions or verified open roads.
TV rotation
Cycle between the situation map, pinned camera wall, incident desk, tagged mesh room and route watch. Configure those views first; saved preferences are used. Start rotation is a user action, and Escape stops it.
Mountain hazard assessments
Dated USGS post-fire debris-flow assessments under specified rainfall scenarios. These are model assessments—not current warnings, active debris flows, evacuation areas or assurances of safe travel.
Incident camera recordings
Actual snapshots preserved near new or changed official weather, fire and closure notices. Notices may describe scheduled work; nearby images do not establish that an incident is visible. Recording starts when a notice is detected, with existing pre-trigger frames only when already recorded.
Observed coverage & data gaps
Coarse cells show collected route activity and available source records. This is not an RF range prediction or proof of message delivery. Receiver and Phryktor positions remain hidden. Gray cells indicate no collected record—not no signal, no station or safe conditions.
Cell sizes are 0.25°; counts use approximate public positions. Mesh counts associate received route metadata with uniquely matched advertised nodes. No circles or connecting paths are inferred around receivers.
Briefing PDF
Download a PDF with your configured situation map, chosen collected notices, actual camera snapshots and their source timestamps. The PDF is generated in this browser. Visible planning notes can appear in the map image.
Configure the situation map and pin cameras first, or choose cameras below. Select up to 10 notices and 6 snapshots. Historical map replay and current camera/report sections are labeled separately.
Collected notices in your Intel desk area
Camera snapshots
Missing images, map layers or source data are listed in the PDF; no replacements are fabricated. Generation may briefly show the situation map. Map tiles retain provider attribution.
Colorado news reader
Local headlines and official updates collected by FreshRSS. Reporting is not independently verified; open the publisher for the complete story.
Choose your feeds · saved on this browser
Select sources below. National and world news are optional. Your selections and bookmarks stay on this browser; no account is needed.
Loading collected headlines…
Feeds checked every 15 minutes; this reader refreshes every 5 minutes. Empty official-alert feeds can mean no active notices. Publication times come from each publisher. Powered by FreshRSS · open source
PHRYKTOR · USER HANDBOOK
The complete app & site guide
Set up PhryktorCore, read radio conversations, customize your local picture and build a useful TV display. Each section explains what to do, what the controls mean and how to check the result.
First visit: a useful view in five minutes
- Open Home. Read any current orange official-alert banner and the source time.
- Choose Weather alert area. Select ZIP + distance, enter a supported Colorado-area ZIP, then choose the miles around it. Keep alerts with unclear areas included unless you deliberately want to hide them.
- Open Layers & map settings. Turn on the information you need: roads, cameras, radar, warnings, aircraft, mesh observations or lightning. Choose a light or dark basemap.
- Select a camera marker. Read its capture time; click Play live video when a live stream is available.
- Use Reading & theme in the header for five themes and four text sizes. Changes are saved in this browser.
The website is a public monitoring view. You can customize your display and submit approved contributor formats; radio sending and server administration use separate controls. The phone app connects to your own companion radio.
PhryktorCore: install, update and connect
What you need
An ARM64 Android phone or tablet running Android 7.0 or newer, a supported MeshCore companion radio, its antenna and power. Bluetooth Companion firmware provides the usual phone connection. Grow the mesh explains beginner hardware, firmware, repeaters and solar options.
- Download the APK from the button above. The file is hosted directly on PhryktorNET. Compare its SHA-256 with the displayed hash or open the hash record for version, build and file size.
- Open the downloaded file on Android. If prompted, allow this browser or file manager to install apps, then complete installation. You can turn that source permission off afterward.
- For an update, install over the current app. The current release retains the preceding APK’s package and signing identity. Keep app data rather than uninstalling when you want to retain your history and settings.
- Attach the radio antenna, power the companion and turn on Bluetooth. Open PhryktorCore, select Bluetooth LE, grant the requested permissions and choose your radio. USB and TCP options are also available for compatible setups.
- Wait for contacts and channels to synchronize. Confirm the local frequency, bandwidth, spreading factor and coding rate with your mesh community; the other radios must match.
- Open Channels and verify your rooms. With Add starter rooms enabled, the app adds #wirereports, #emergency and #phryktor to confirmed empty slots after the first synchronization. If the radio is full, make room deliberately or use the public QR.

To join manually, open Grow the mesh and scan the public #phryktor QR using Settings → Tools → Scan room or contact QR. Review the imported room before saving. A connected companion and matching radio settings are still required.
PhryktorCore: conversations, history and replies
Channels, direct messages and room servers
- Use Channels for a shared room, or Contacts for a direct conversation or supported room server.
- Read the destination name before sending. Shared channels require the same channel key; public hashtag channels use a key derived from the exact hashtag.
- Type a short message and use Send. Check any send error and the received response instead of repeatedly submitting the same message.
- Use the plus menu to add a location or a structured MECP message. Review the source of coordinates before sharing them.
- Long-press a message for its available actions. Reply with observed path prepares a text reply for review when captured metadata exists. It does not remotely change another radio’s route.
Long messages and packet colors
The app divides longer text into numbered radio packets and combines matching received pieces by default. A tear line such as Missing part 2/3 marks text that was not received. Late parts can fill gaps. Settings → App Settings → Messaging → Combine multipart messages lets you show each original packet instead. A long message consumes more airtime and every piece can arrive independently.

Colored routing badges describe bytes per hop hash when known, rather than text size or the number of hops. Defaults use green for one byte, blue for two and purple for three. Customize bubble colors in Appearance or conversation settings. Short hashes can identify more than one possible node.
Tests, emergencies and MECP
Messaging → Hide test messages starts on. It hides recognized drills and testing-room traffic while retaining original history. Turn it off to read a practice exchange. Notifications has separate in-app emergency popup and phone notification choices; phone alerts also depend on Android permissions. Stored history does not replay a new emergency alert.
Open Settings → Tools → Emergency inbox to view MECP reports from loaded histories. Use its priority and drill filters, open the source chat or copy the visible log. The MECP Guide covers every code, composer field, training label and acknowledgement.
Optional Extra AES
In a conversation, use the key beside Extra AES to configure a matching case-sensitive code with the other participant. This adds an app-specific text-encryption layer. Turning it off locks encrypted incoming/history text while retaining the saved code; turning it on permits reading with that code. Other clients need compatible support. Images are unavailable while this extra text encryption is enabled.
The QR beside Extra AES can contain the secret code and channel setup. Share it privately. The public #phryktor QR is separate from your private encryption setup. Mesh transport metadata remains visible to compatible observers.
PhryktorCore: maps, contacts and tools
- Location: use the conversation plus menu for phone GPS, the radio’s reported coordinates, an OpenStreetMap pin, or pasted coordinates/a full map link. GPS needs location permission; map tiles require connectivity or cached data. A radio-reported position can be configured or stale.
- Phone contact library: under Settings → Tools, store contacts on the phone and restore selected contacts to available radio slots. This does not expand the radio firmware’s contact capacity.
- Signal monitor: under Tools, view received packet RSSI/SNR, trace and waterfall; choose a time window or pause the view. It is a packet measurement display, with gaps when no packets were measured.
- Appearance: App Settings groups themes, light/dark/system appearance and routing-bubble colors. Contact and channel custom icons are local display choices.
- Radio settings: set the node name, permitted radio configuration, location-advertising policy and other supported device options. An advertisement can share your selected identity/location; review privacy before sending one.
- Repeater management: use supported remote controls only for a repeater you manage with the required credentials. Connection, firmware and permissions determine the available actions.
- Images and translation: supported inherited features may need compatible receivers, models, storage and setup. Optional natural-language translation is separate from MECP’s bundled code lookup. It is not required to read MECP.
- Backup and licenses: review the app’s About/backup options before changing phones or removing app data. Preserve private channel keys and encryption codes separately and privately.

The current APK’s signing and content checks are verified. App guides describe implemented behavior and automated-test screenshots; a physical phone/radio session is needed to confirm your own permissions, device compatibility and reception.
Android Auto messaging & the 1.1 hub
The verified public download below remains stable build 2012. Car hub adds the new compact website view. The separate PhryktorCore Trial 1.1 APK is distributed privately for the owner and friends; it installs alongside stable and starts with its own setup. Close the other client before connecting the same radio.
The 1.1 trial adds native Hub, Channels, MECP and Weather tabs, chosen under Settings → App Settings → Notifications → Car & PhryktorNET hub. Select NET-only or Radio + NET, your city and the local radio rooms to display. NET-only can browse public observer rooms without a companion; Radio + NET provides local channel voice-to-text replies and direct-message notification replies. Local radio conversations and offline MECP decoding stay on the phone; NET observations come from this site's bounded public feed. The website does not transmit or receive your private phone chats.
A sideloaded APK can provide messaging notifications with Android Auto's Unknown sources setting. A native dashboard icon and Car App Library tabs require a trusted installation, such as private Google Play testing, or development testing with the Desktop Head Unit. Unknown sources does not unlock these templates. Read the complete trial setup and parked checklist.
PhryktorCore 1.0.0 build 2012 adds Android Auto message notifications, read-aloud, voice replies and mark-as-read actions. The phone runs the app and keeps its MeshCore companion connected.
- Install the current APK over the existing app, open it and connect your companion radio. Let contacts and channels synchronize.
- Open Settings → App Settings → Notifications. Enable Android Auto messaging and Enable notifications, grant Android notification permission, and choose the direct/channel notifications you want.
- Connect the phone to a compatible Android Auto head unit. Receive a new mesh message, open its notification and use Android Auto's read-aloud and Reply controls. Voice transcription depends on Android Auto and its assistant.
- For this directly installed APK, open the phone's Android Auto settings, expand Version, tap Version and permission info ten times and accept developer mode. Open the three-dot menu → Developer settings → Unknown sources, then reconnect. Google documents this option for messaging notifications.
- Review the phone chat if a reply reports an uncertain handoff before retrying. A disconnected app/radio cannot send. Longer voice replies use up to three numbered packets; use the phone composer for longer text.

Mark-as-read updates local unread counts and notifications; it sends no mesh read receipt. MECP emergency text can be read aloud when emergency phone notifications are enabled. Drills retain their test filtering and do not trigger emergency priority.
Voice replies use the same radio send path and the conversation's Extra AES setting. Turning Extra AES off or changing its code removes protected notifications and blocks stale protected replies. The shared secret is not passed to the car reply action.
This release integrates messaging notifications. Radio settings, maps, QR setup and full history are available on the phone. Android Auto phone/head-unit operation still needs a real-device check; the source and automated tests were reviewed. Google's messaging integration reference.
Customize website weather alerts
- At Home, use Weather alert area above the official-alert banner, or open it within the map’s settings.
- Choose ZIP + distance. Enter a five-digit ZIP in the local Colorado-area catalog. Choose a preset radius or enter a custom distance from 1 to 250 miles.
- Use City + distance, County or Visible map area for other views. Map-area filtering follows the visible Home map.
- Read the count of displayed alerts and those outside your area. Alerts with an unclear area remain included by default and are labeled accordingly.
- Open Popup alerts · area, types & interruptions to enable only the warning types you want or turn popups off while keeping the banner. The default waits for a chosen area before weather popups. When a warning popup appears, Choose weather alert area returns you to the filter. Understood acknowledges the displayed notice; new or updated qualifying alerts can appear again.
- Use All Colorado to restore statewide weather coverage. Settings are kept in this browser and travel with saved display profiles and casting.
A ZIP radius is measured from a Census representative point, not your home address or the ZIP boundary. A warning matches when its official polygon intersects that radius. Official non-weather emergency notices remain statewide. The website never infers that a warning ended merely because a source stopped updating.
The website’s official-warning filters and the phone app’s received-radio emergency notification settings are separate. Change each where you use it.
TV screens, ticker, camera rotation and Cast
- Start with the Traffic TV or Weather TV quick tab. Both include aircraft; Traffic emphasizes road conditions and Weather emphasizes weather layers.
- Open map settings to choose layers, basemap, clocks, legend, text size and feeds. Mission presets provide reusable starting layouts; save your modified setup in this browser.
- Within TV feeds, scrolling ticker & cameras, choose the feeds to scroll. Select Slow, Comfortable or Quicker; the updated default is 20 pixels per second. Use Pause ticker to stop it for reading.
- Choose camera rotation speed and area: visible map, Colorado statewide or pinned cameras. Start live rotation enables one muted stream at a time when supported; snapshots remain the fallback.
- Enable current crash or severe-warning focus if desired. The map focuses a reported area and nearby cameras, then returns to the overview. A nearby camera is a possible view, not proof that it shows the incident.
- For Cast, put a compatible Google Cast TV/device and your sender on a network where they can discover one another. Open the secure site in a supported browser and use its Cast button when available. Select the receiver and wait for the dashboard to load.
- If discovery is unavailable, open the shared display link on the TV/computer or use the browser’s Cast menu where supported. A Samsung phone still needs a browser or casting feature that supports the receiver; support varies by browser and TV.
A Cast receiver needs internet access to this HTTPS site. Private LAN admin pages are separate from the public cast dashboard. Each receiving display renders current source data and can have different connectivity or stream availability.
A few things to know
Check the source and its timestamp before relying on a report. A blank view means no collected data, not an all-clear. Public radio messages are read only; the map shows observations heard by our receivers, rather than confirmed delivery at every node.
Your camera favorites, layout and display settings stay in this browser. Clearing browser storage resets them; another phone or computer has its own choices. Private administration, passwords, radio keys and receiver coordinates are excluded from the public site.
When a map stops updating
The maps retry temporary connection failures and refresh when you return to this tab. Previously received data keeps its original timestamp. If Recovery needs attention remains visible, open Feeds to check source ages and recovery history. After a site update, reload once to get the newest version. On MeshCore, check that updates and animation are enabled; packets move when actual mapped receptions arrive.
No features match. Try a page name or clear the search.
Find every website page
Top tabs contain the everyday pages. Their shortcuts lead to detailed views. This directory also links directly to analysis, archives, sources and display tools.
Overview & maps
Read the recent local summary and followed areas.
Read official alerts and city observations. Use Weather alert area to choose a city and distance, county, or visible map area.
Identify observed coverage and places where collected data is missing.
Read source-linked incidents and local intelligence on a map.
Review recently changed records and their source times.
Search the retained public records by topic or text.
Weather & environment
View official radar and available recorded frames.
Choose a city and read its seven-day morning, afternoon and evening forecast.
Check measured air quality, smoke observations and their dates.
Read reported water levels and stream observations.
Review available avalanche and mountain hazard advisories.
Cameras & travel
Search the statewide catalog by road or place.
Pin cameras, choose a grid and explicitly start supported live feeds.
Select a camera and replay the snapshots actually retained.
Review retained incident-area camera frames when a recording exists.
Find mountain corridor and resort-area cameras.
Read current source-reported closures, hazards and road conditions.
Follow I-25 and I-70 corridor conditions and nearby cameras.
Build a saved route view and inspect its latest source reports.
Open the aircraft-only map and select a received aircraft for details.
News & briefings
Choose news feeds, read source time and open the original reporting.
Read the current regional briefing and its source context.
Create a briefing PDF from collected information.
Browse attributed public sources and news feeds.
Read retained Wire reports credited to S2 Underground.
Read published radio reports and follow their relevant page links.
Live mesh & messages
Watch actual locally received packets on the node map. Colors identify packet types; unresolved route hops remain gaps.
Open this view for its available observations and controls.
Select a public room and browse its retained message archive.
Explore advertised approximate node locations.
Search contact names and inspect received contact information.
Review the recorded radio network summary.
History & analysis
Filter observed packet types and inspect bytes, identifiers and available path metadata.
Replay the genuine packet samples retained by this system.
Inspect usable observed route relationships and unresolved hops.
Compare received signal measurements over available history.
View estimated public audience and radio activity metrics.
Read retained equipment and source-health checks.
Browse retained source snapshots with their original timestamps.
Equipment & collectors
Check both radios and current collection services.
Inspect source timestamps and current equipment health.
Inspect receive-only observer counters and telemetry.
Read sanitized receiver and contribution information.
View current collection workload/container health.
Understand how observation data is collected, published and stored.
Inspect recovery attempts, results and backup status.
Review recorded report delivery outcomes.
Inspect retained public command requests and results.
See the latest received public events.
Help & display
Customize available dashboard display preferences.
Rotate selected pages for a wall or TV display.
Read the bot commands and how to request reports.
Open this view for its available observations and controls.
Inspect public diagnostics and collection details.
Check the result and solve common problems
| What you see | What to check |
|---|---|
| Weather seems unchanged | Compare Observed with Checked. A station may publish hourly even when this system checks every five minutes. Lakewood uses regional KBJC observations; that airport is not a sensor in every neighborhood. |
| A map has stopped moving | Return to the active tab, ensure updates and animation are enabled, and inspect the source age in Feeds. Reload once after an update. Packet motion requires actual usable observations. |
| No aircraft | Check the aircraft collector and source timestamp in Feeds. Coverage depends on local reception; a blank map does not prove the airspace is empty. |
| A camera will not play | Check whether a live stream is offered. Try its still image or another camera. Sources, network restrictions and codec support can affect playback. |
| A ZIP cannot be found | Use a five-digit Colorado-area ZIP in the Census catalog. Postal-only ZIPs may have no representative point. Choose a nearby city, county or map area instead. |
| App cannot find the radio | Confirm companion firmware, power, antenna, Bluetooth and permissions. Disconnect another app using the radio. Try a supported USB/TCP connection when applicable. |
| A test is missing in the app | Turn off Hide test messages or use Include drills in Emergency inbox. Recognized practice history is retained. |
| No phone emergency sound | Check both app notification switches and Android notification permission, priority-channel sound and do-not-disturb settings. Drills do not trigger emergency alerts. |
| Messages have a missing-part tear | One or more radio packets have not arrived. Wait for late parts or ask for the missing section; the app does not reconstruct absent words. |
| Website settings vanished | Choices belong to this browser/profile. Private browsing, cleared storage and another device have separate settings. Use saved/shared display profiles when moving between screens. |
| Recovery needs attention | Open Feeds and Recovery for current checks and timestamps. The owner’s private admin page contains restart/configuration controls; public viewers cannot restart services. |
For radio bot commands and report sections, use the current command reference. Requests and RF broadcasts consume radio airtime; avoid repeated test floods.
Guide reviewed 12 October 2026 against PhryktorNET 1.1, stable PhryktorCore 1.0.0 build 2012 and the separate private 1.1 trial. Screenshots contain example app test fixtures or dated website observations. Source availability and hardware behavior can vary.
Where the mesh traffic travelled
Watch recorded packets move between the nodes, using the same colors and glowing orbs as the live map. Select a repeater or a recorded hour to explore its traffic.
Loading local packet history…
Choose Play recorded week or Replay this hour to watch genuine packet samples. Playback speed is illustrative; it does not measure radio transit time.
Nearby repeaters & companions
Select a named node to find others near its recent advertised position.
Repeater activity rankings
Compare repeaters seen in recorded routes during the last seven days. This measures traffic observed here; it is not a network-wide performance or reliability score.
Loading local packet history…
START SMALL · HELP THE COMMUNITY
Grow the Phryktor mesh
A MeshCore radio lets your phone exchange short messages over LoRa without mobile data. Start with one companion radio. Add a repeater or an observer when you are ready.
Join #phryktor
Connect your companion radio, then scan this code with the MeshCore app to add the room.
On the same phone? Tap Add room in MeshCore. If your camera does not open the app, use its channel QR scanner. You can also add the hashtag #phryktor manually.
This is a public hashtag room. Adding it does not change your radio settings or share your location.
Choose your first radio
Budget: Heltec WiFi LoRa 32 V3
Best if you are comfortable assembling a board, antenna, battery and case. Buy the US-compatible 915 MHz version and the correct antenna. A board alone is not a weatherproof outdoor node.
Manufacturer specification & buying optionsReady handheld: ThinkNode M1
An enclosed nRF52840 handheld with battery and antenna. Confirm the exact hardware is supported in the MeshCore flasher. Some units arrive with Meshtastic firmware; they need matching MeshCore companion firmware to join this mesh.
Manufacturer instructionsSolar: Seeed MeshCore starter kit
A ready companion plus a solar repeater is a simpler outdoor starting point. Check the regional radio variant, mounting, sun exposure and local network settings before ordering.
Manufacturer kit · Solar setup guideThe minimum to get started
- Get a supported companion radio, matching antenna, USB data cable and power. A Bluetooth companion and a phone running MeshCore are enough to begin.
- Attach the antenna before powering the radio. Choose the firmware for your exact board and Companion Bluetooth role in the official flasher. Follow the board’s flashing instructions.
- Install MeshCore and pair your radio. Set a short name. Check the local Colorado community’s current frequency, bandwidth, spreading factor and coding rate; every radio must match. Do not guess these values.
- Choose your privacy settings. Sharing an advert can share your selected name and location. Turn location advertising off if you want to keep your home or receiver private.
- Join the public room
#phryktor. Use the app’s hashtag channel option. The network page shows messages actually heard by this system; silence does not prove nobody received your message. - Send one short introduction and let the network settle. Avoid repeated flood adverts and rapid messages. Receive first; use a test room for testing.
What each role does
Companion: connects your phone to the radio. Repeater: forwards compatible mesh traffic; good height, power and antenna placement matter more than frequent advertisements. Observer: listens and records packets for a map; it is not a repeater or a guarantee of delivery.
Ways to support the mesh
Help a neighbor set up a companion, place a well-powered repeater where it improves coverage, keep batteries and solar panels maintained, and contribute a receive-only observer. Obtain permission for mounting and do not publish other people’s private conversations or precise home locations.
PhryktorCore for Android
Connect your MeshCore companion radio over Bluetooth, chat in channels or direct messages, manage contacts, and use Android Auto messaging for read-aloud and voice replies with a connected radio. Follow the app setup and Android Auto guide. Get the Android APK below, then follow the radio and room setup guide.
Contribute an observer
Use a spare supported LoRa radio and an always-on computer or Pi. Your observer listens locally and sends only packet metadata to PhryktorNET. Uploads are authenticated, checked, and held for the owner’s review by default.
- Start with a supported board such as Heltec V3 and an antenna matching the local band. Connect it to your Pi or computer by a USB data cable.
- Follow the detailed observer guide below. Use the supported receiver/logger configuration and match the local radio settings. Give the observer a separate identity; keep precise receiver coordinates private.
- Ask the owner to add your observer in the private admin page. You will receive an observer ID and a secret upload key. Keep the key private.
- Export the documented version-1 JSON metadata: observation ID, receive time, packet type, signal and packet path. Raw payloads, chat text, private messages and secrets are rejected.
- Choose the JSON file below and enter your observer ID/key. The browser signs this batch; the key stays in memory and is cleared after submission.
- The owner reviews the pending batch before sharing it. The owner chooses Live on site before your observer appears on public maps. Automatic acceptance can then keep future validated uploads flowing. Use the documented uploader for continuous operation.
Maximum 128 KiB; 1–250 recent observations. Credentials are never saved in browser storage.
PHRYKTOR REFERENCE · MECP
Read, compose and understand MECP
A complete guide to the Mesh Emergency Communication Protocol, its codes, and the way PhryktorCore and PhryktorNET display structured radio reports.
“It works like a multilingual phrasebook that happens to be machine-parseable.”— MECP project, maintained by xiang-dev-1
MECP assigns agreed meanings to short codes. Phryktor uses the developer’s language dictionary to show those meanings alongside the original message. Written details retain the sender’s wording.
1. The format, piece by piece
MECP/<severity>/<codes> [details]
- MECP/ tells a compatible reader to interpret structured text.
- 0, 1, 2 or 3 is the sender’s chosen severity.
- Codes are an uppercase category letter followed by two digits. Separate codes with spaces and keep them together before any written details.
- Details provide context such as people, coordinates, an incident reference and a short description. These words are carried as text.
Example to read locally: MECP/3/D02 L15 2pax #DEMO @1200 ~TRAIN. D02 identifies a test; L15 is a check-in; 2pax means two people. This page does not transmit the example.
The MECP composer has a 200 UTF-8 byte ceiling. A destination’s available radio text budget can be smaller after sender and encryption overhead. PhryktorCore displays the applicable budget and rejects an oversized structured report. Keep an MECP report in one packet; shorten details rather than separating its header from its codes.
Ordering matters: MECP/3/D02 L15 P05 2pax 0.00000,0.00000 places every code before details. Once details start, a later code-like word remains detail text in the current Phryktor readers. The coordinates here are fictional training values.
2. Choose the correct severity
| Value | Label | Use |
|---|---|---|
| 0 | MAYDAY | A reported immediate threat to life. |
| 1 | URGENT | A serious report requiring timely attention. |
| 2 | SAFETY | A hazard or safety advisory. |
| 3 | ROUTINE | Ordinary information, check-ins and non-emergency traffic. |
Training and corrections
D01 means drill; D02 means test. Both produce a visible training label in Phryktor. D03 marks the end of a drill; D04 says a previous message was sent in error. Use D01 or D02 throughout practice exchanges. Removing a training label changes the meaning of the report.
Responses and beacons
R01 acknowledges a report, R02 says help is coming, and R07 reports resolution. B01 reports an active automated distress beacon, B02 acknowledges it, and B03 cancels it. These are statements made by the sender. A decoder does not activate a beacon or verify a rescue. Keep a matching incident reference when replying; confirm the original sender, location and current situation before treating a response as actionable.
3. Optional details and conventions
| Text | Meaning | How to use it |
|---|---|---|
2pax | Two people | A positive whole number immediately followed by pax. |
0.00000,0.00000 | Latitude, longitude | Decimal degrees, latitude first. Add P05 to the codes. Valid latitude is −90 to 90; longitude −180 to 180. |
#DEMO | Incident reference | One to four letters or digits. Carry the same reference in related replies. |
@1200 | 1200 UTC / Zulu | Four-digit 24-hour UTC clock. The token has no date; interpret it with the message timestamp. |
@en | English language hint | A two-letter language hint; it does not translate additional details. |
~TRAIN | Sender callsign | One to nine letters or digits. This is sender-supplied text. |
R03 and 15 | Estimated arrival in 15 minutes | Put R03 among the codes and the number first in the details. |
The original MECP tool recognizes these conventions. PhryktorCore provides dedicated people, coordinates and incident-ID fields, and shows the remaining text literally. PhryktorNET’s room card shows every recognized code and the original details; the practice reader below also explains these conventions.
MECP is a text format. MeshCore supplies transport, routing and channel encryption separately. Public hashtag channels are shared community conversations; avoid including information you would not share publicly. Compatible language dictionaries decode codes offline. This website needs connectivity to load new radio observations.
4. Use MECP in PhryktorCore
- Install the APK and connect a companion. Download above or from Grow the mesh. Grant the connection permissions, connect your MeshCore companion radio and wait for channels and contacts to synchronize.
- Open the intended conversation. In a channel or supported chat, open the plus menu and select Structured message. Confirm the destination before composing.
- Start with a practice report. The composer starts with routine severity and its drill option on. Select a category and the descriptions that apply.
- Add precise context. Use People, coordinates and Incident ID where relevant. GPS adds P05. Use short additional details and check the location source; a configured radio position can be old.
- Review both previews. Check the readable meaning, original wire text and byte counter. Keep the drill option on for a test. Send only when the selected conversation and content are correct.
- Check the receiver. Ask another connected participant to confirm the received original text and interpretation. A send action alone does not establish mesh-wide receipt.
For offline preparation, open Settings → Tools → Structured emergency message. With no conversation selected, Copy packet copies the reviewed text. It does not send a radio message.


Read received reports
Supported incoming MECP messages display code descriptions using the app’s language pack, with English fallback. Expand Original packet to inspect or copy the exact text. Unknown identifiers remain visible. Open Settings → Tools → Emergency inbox for reports in the currently loaded channel and contact histories; use its priority and drill filters, open the original chat or copy the visible report log.
Test visibility and phone alerts
Settings → App Settings → Messaging → Hide test messages starts on. Turn it off to view retained practice reports; hiding them does not delete history. The inbox’s Include drills chip controls that view. Under Notifications, configure Emergency popups in the app and Emergency phone notifications separately. Live valid severity 0, 1 and 2 reports can qualify; drills and testing-room traffic do not. Phone notifications also require the general notification switch and Android permission.
Replies from the emergency inbox prepare an acknowledgement for you to review and explicitly send. Received reports and acknowledgements are peer communications. PhryktorCore does not turn them into an official warning.
5. Read MECP on PhryktorNET
- Open MeshCore and select or tag a public room. MECP reading works across monitored public rooms.
- Use the room’s follow control to keep new arrivals at the bottom, or search retained conversation history.
- Read the original message, sender and source time. A recognized report receives an English MECP card underneath.
- Read each code and its meaning, plus the sender’s written details. Check the drill label and ask the sender to explain unknown codes.
- Use the original developer tool for a separate local composition or decode preview. Copying there does not transmit.
The live room feed checks for new arrivals approximately every three seconds; RF reception, processing and connectivity affect when a message appears. Private direct-message histories are excluded from the public archive.
Packet orbs visualize received route metadata with usable node matches. A readable MECP report is not automatically matched to an encrypted packet by timing, and its coordinates do not identify the private observer. The website sends no acknowledgements from its reader and creates no official emergency banner from a community MECP report.
Home warning popups use current official weather and agency sources. Customize those separately with Weather alert area → ZIP + distance, a city, county or the visible map. Community radio reports keep their own sender attribution.
6. Practice the reader locally
Paste a packet or choose a training example. This reader runs in your browser and has no send control.
7. Full English code reference
All 108 codes in the installed MECP dictionary, organized into 12 categories. Search an identifier or its meaning. The category is part of the identifier, so M01 and T01 mean different things.
Loading the installed dictionary…
| Code | Category | English meaning |
|---|
8. Developer, sources and licenses
MECP is maintained by xiang-dev-1. The quotation above is from the project README. This guide documents Phryktor’s installed dictionary and current integration, reviewed 11 October 2026. Phryktor does not claim authorship of MECP or endorsement by its developer.
- Developer’s comprehensive protocol reference
- Installed English language dictionary · CC BY 4.0 language-pack license. Code labels are reproduced unchanged with attribution to xiang-dev-1/MECP.
- Locally hosted original browser tool and its source · GPL-3.0 tool license
- CC0 protocol dedication · Installed upstream revision and source notes
App screenshots show development test fixtures with example data, not a live emergency or a physical-device verification. Website screenshots and diagrams are supplied by Phryktor. Installation and hardware troubleshooting are covered in the App & site guide.