{"id":27429314,"url":"https://github.com/bhuvanchandra/espnow_mac_drop_analysis","last_synced_at":"2025-04-14T14:17:02.118Z","repository":{"id":287845787,"uuid":"965979608","full_name":"bhuvanchandra/espnow_mac_drop_analysis","owner":"bhuvanchandra","description":"Interactive Dash-based tool to visualize packet drop probabilities in ESP-NOW networks using Bianchi and Aloha models with RF BER impact.","archived":false,"fork":false,"pushed_at":"2025-04-14T08:05:55.000Z","size":149,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-04-14T14:16:54.097Z","etag":null,"topics":["aloha","ber","binachi","dcf","esp","espnow","mac","wifi"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/bhuvanchandra.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-04-14T08:04:10.000Z","updated_at":"2025-04-14T08:26:39.000Z","dependencies_parsed_at":"2025-04-14T09:24:47.737Z","dependency_job_id":"62ec5bf8-4eed-43df-8304-f0320f56a818","html_url":"https://github.com/bhuvanchandra/espnow_mac_drop_analysis","commit_stats":null,"previous_names":["bhuvanchandra/espnow_mac_drop_analysis"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bhuvanchandra%2Fespnow_mac_drop_analysis","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bhuvanchandra%2Fespnow_mac_drop_analysis/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bhuvanchandra%2Fespnow_mac_drop_analysis/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bhuvanchandra%2Fespnow_mac_drop_analysis/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bhuvanchandra","download_url":"https://codeload.github.com/bhuvanchandra/espnow_mac_drop_analysis/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248894943,"owners_count":21179153,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["aloha","ber","binachi","dcf","esp","espnow","mac","wifi"],"created_at":"2025-04-14T14:17:00.809Z","updated_at":"2025-04-14T14:17:02.097Z","avatar_url":"https://github.com/bhuvanchandra.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"ESP-NOW MAC Drop Analysis Dashboard\n===================================\n\nThis interactive web application models MAC-level packet drop probability for wireless communication using ESP-NOW over IEEE 802.11. It includes models for both saturated and unsaturated traffic conditions using the Bianchi model and Aloha approximation, with RF-level bit error probability factored in.\n\nFeatures\n--------\n\n- Selectable Traffic Models:\n  - Saturated (Bianchi)\n  - Unsaturated (Bianchi)\n  - Unsaturated (Aloha)\n\n- Adjustable parameters:\n  - Bitrate (1 to 54 Mbps)\n  - Payload size (1 to 250 bytes)\n  - Publish frequency (Hz) — disabled for saturated model\n  - RF Bit Error Rate (BER)\n\n- Real-time interactive graph of overall drop percentage vs. number of devices.\n- Mathematical formula summary displayed for educational/reference use.\n\nModels Implemented\n------------------\n\n1. Saturated Bianchi:\n   Solves the classic Bianchi model with collision probabilities and contention backoff.\n\n2. Unsaturated Bianchi:\n   Extends the model by incorporating an activity factor based on publish rate.\n\n3. Unsaturated Aloha:\n   Simplified model using exponential approximation:\n   P_success = exp(-2G)\n   where G = n × pub_freq × T_packet\n\n4. RF Success Probability:\n   P_success_RF = (1 - BER)^(payload × 8)\n\n5. Overall Drop:\n   Drop(%) = 100 × [1 - (P_success_MAC × P_success_RF)]\n\nRun Locally\n-----------\n\nPrerequisites:\n- Python 3.7+\n- Dash, Plotly, NumPy, SciPy\n\nInstall dependencies:\n    pip install dash plotly numpy scipy\n\nRun the App:\n    python app.py\n\nVisit http://127.0.0.1:8050 in your browser.\n\nFile Structure\n--------------\n\n.\n├── app.py          # Main Dash app\n└── readme.txt      # This file\n\nUse Case\n--------\n\nUseful for analyzing:\n- ESP-NOW based P2P communication systems\n- MAC-level scalability for IoT/robotics devices\n- Impact of RF BER and payload size on drop rates\n\nLicense\n-------\n\nMIT License – Use freely with attribution.\n\nPreview\n-------\n\n![Drop Analysis preview](preview.png)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbhuvanchandra%2Fespnow_mac_drop_analysis","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbhuvanchandra%2Fespnow_mac_drop_analysis","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbhuvanchandra%2Fespnow_mac_drop_analysis/lists"}