{"id":37637954,"url":"https://github.com/helvecioneto/gp5-wc","last_synced_at":"2026-01-16T11:12:20.063Z","repository":{"id":322538745,"uuid":"1089907211","full_name":"helvecioneto/gp5-wc","owner":"helvecioneto","description":"gp5 Web Controller","archived":false,"fork":false,"pushed_at":"2025-11-05T01:33:33.000Z","size":67,"stargazers_count":0,"open_issues_count":1,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-11-05T03:13:53.580Z","etag":null,"topics":["gp5","valeton"],"latest_commit_sha":null,"homepage":"https://helvecioneto.github.io/gp5-wc/","language":"HTML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/helvecioneto.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-11-05T01:15:56.000Z","updated_at":"2025-11-05T01:33:37.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/helvecioneto/gp5-wc","commit_stats":null,"previous_names":["helvecioneto/gp5-wc"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/helvecioneto/gp5-wc","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/helvecioneto%2Fgp5-wc","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/helvecioneto%2Fgp5-wc/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/helvecioneto%2Fgp5-wc/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/helvecioneto%2Fgp5-wc/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/helvecioneto","download_url":"https://codeload.github.com/helvecioneto/gp5-wc/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/helvecioneto%2Fgp5-wc/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28478137,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-16T06:30:42.265Z","status":"ssl_error","status_checked_at":"2026-01-16T06:30:16.248Z","response_time":107,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["gp5","valeton"],"created_at":"2026-01-16T11:12:19.982Z","updated_at":"2026-01-16T11:12:20.050Z","avatar_url":"https://github.com/helvecioneto.png","language":"HTML","funding_links":["https://github.com/sponsors/helvecioneto"],"categories":[],"sub_categories":[],"readme":"# 🎸 GP-5 Web Controller\n\nA web-based controller for the **Valeton GP-5** multi-effects pedal with **dual-mode support**: Bluetooth (advanced) and USB MIDI (basic). Control your GP-5 directly from your browser - no additional software required!\n\n![GP-5 Web Controller](https://img.shields.io/badge/status-active-success.svg)\n![License](https://img.shields.io/badge/license-MIT-blue.svg)\n![Web MIDI](https://img.shields.io/badge/Web%20MIDI-API-orange.svg)\n![Web Bluetooth](https://img.shields.io/badge/Web%20Bluetooth-API-blue.svg)\n\n## 📸 Web Example [https://helvecioneto.github.io/gp5-wc/](https://helvecioneto.github.io/gp5-wc/)\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg src=\"https://raw.githubusercontent.com/helvecioneto/gp5-wc/refs/heads/main/misc/example.png\" alt=\"GP-5 Web Controller Interface\" width=\"500\"\u003e\n  \u003cp\u003e\u003ci\u003eGP-5 Web Controller interface\u003c/i\u003e\u003c/p\u003e\n\u003c/div\u003e\n\n## ✨ Features\n\n### 🔌 Dual Connection Mode\n- **Bluetooth Mode** (Advanced): Full control via Web Bluetooth + SysEx\n- **USB MIDI Mode** (Basic): Simple control via Web MIDI + Control Change\n\n### Common Features\n- 🎚️ **Preset Management**: Navigate through presets 00-99\n- 🎛️ **Module Control**: Toggle all 10 effect modules (NR, PRE, DST, N→S, AMP, CAB, EQ, MOD, DLY, RVB)\n- 🎵 **Parameter Control**: Adjust patch volume in real-time\n- 🛠️ **Customizable**: Edit MIDI CC mappings via JSON\n\n### Bluetooth Mode Only\n- 📋 **Patch Names**: Load and display custom patch names\n- 🎨 **Effect Selection**: Change individual effects within blocks\n- 🎛️ **Advanced Parameters**: Full access to all effect parameters\n- 🔄 **Bidirectional Sync**: Automatic state synchronization\n\n## 🚀 Getting Started\n\n### Prerequisites\n\n- A modern web browser:\n  - **For Bluetooth**: Chrome, Edge, Opera (with flag enabled)\n  - **For USB MIDI**: Chrome, Edge, Opera\n- Valeton GP-5 multi-effects pedal\n- USB cable (for USB mode) or Bluetooth connection (for BT mode)\n\n### Usage\n\n#### Option 1: Online (Bluetooth Mode)\n1. **Access the controller**: [https://helvecioneto.github.io/gp5-wc/](https://helvecioneto.github.io/gp5-wc/)\n2. Select **Bluetooth** mode\n3. Click **\"Connect\"** button\n4. Pair with your GP-5\n5. Start controlling! 🎉\n\n#### Option 2: Local (USB MIDI Mode - Recommended for testing)\n```bash\n# Clone the repository\ngit clone https://github.com/helvecioneto/gp5-wc.git\n\n# Navigate to the project folder\ncd gp5-wc\n\n# Start a local HTTP server (required for file loading)\npython3 -m http.server 8000\n\n# Open in browser\n# http://localhost:8000/gp5-controller.html\n```\n\n**Important**: Don't open files directly with `file://` - use a local server!\n\n### Selecting Connection Mode\n\n1. Open `gp5-controller.html`\n2. Look for the dropdown in the top-right corner\n3. Select **Bluetooth** or **USB**\n4. Click **Connect**\n\n## 🐛 Debugging\n\nOpen the browser **Console** (F12) to see detailed logs:\n- `[init]` - Configuration loading\n- `[connectMidi]` - MIDI connection\n- `[listMidiPorts]` - Detected MIDI ports\n- `[sendBlockStatus]` - Module commands\n- `[changePatch]` - Patch changes\n\n## 📦 Project Files\n\n- `gp5-controller.html` - Main interface (dual-mode support)\n- `index.html` - Legacy USB-only version\n- `ble_sysex.json` - Bluetooth/SysEx configuration\n- `cc_commands.json` - MIDI CC mapping\n- `README.md` - This file\npython -m http.server 8000\n# Then open http://localhost:8000/test.html\n\n## 🎮 How to Use\n\n### Connecting\n1. Click the **\"Connect GP-5\"** button\n2. The button will turn **green** when connected successfully\n3. If no device is found, it will turn **red**\n\n### Presets\n- Use **Previous/Next** buttons to navigate presets\n- Or enter a specific preset number (00-99) and click **\"Go →\"**\n- The **current preset display** shows which preset is active\n\n### Modules\n- Click any module button to toggle it **ON/OFF**\n- **Green** = Module is active\n- **Gray** = Module is inactive\n- Changes sync bidirectionally with your pedal\n\n### Parameters\n- Use the **Patch Volume** slider to adjust volume (0-100)\n- Changes are sent to the GP-5 in real-time\n\n### Advanced\n- Click **\"Edit CC Map\"** to customize MIDI CC mappings\n- Edit the JSON structure and click **\"Apply\"**\n- Or **\"Reset to Default\"** to restore factory mappings\n\n## 📋 MIDI CC Reference\n\nBased on the official GP-5 MIDI implementation:\n\n| CC# | Parameter | Range | Description |\n|-----|-----------|-------|-------------|\n| 0 | Preset | 0-99 | Select preset 00-99 |\n| 7 | Patch Volume | 0-100 | Adjust patch volume |\n| 22 | Bank − | 0-127 | Bank down (ten digit) |\n| 23 | Bank + | 0-127 | Bank up (ten digit) |\n| 24 | Patch − | 0-127 | Previous patch |\n| 25 | Patch + | 0-127 | Next patch |\n| 29 | Song − | 0-127 | Previous song patch |\n| 30 | Song + | 0-127 | Next song patch |\n| 48 | NR | 0-63/64-127 | Noise Reduction Off/On |\n| 49 | PRE | 0-63/64-127 | Preamp Off/On |\n| 50 | DST | 0-63/64-127 | Distortion Off/On |\n| 51 | N→S | 0-63/64-127 | Noisegate→Send Off/On |\n| 52 | AMP | 0-63/64-127 | Amp Off/On |\n| 53 | CAB | 0-63/64-127 | Cabinet Off/On |\n| 54 | EQ | 0-63/64-127 | EQ Off/On |\n| 55 | MOD | 0-63/64-127 | Modulation Off/On |\n| 56 | DLY | 0-63/64-127 | Delay Off/On |\n| 57 | RVB | 0-63/64-127 | Reverb Off/On |\n| 58 | Tuner | 0-63/64-127 | Tuner Off/On |\n| 69 | CTL | 0-127 | Control |\n\n## 🤝 Contributing\n\nContributions are **welcome**! This is a community project, and everyone is encouraged to:\n\n- 🐛 Report bugs\n- 💡 Suggest new features\n- 🔧 Submit pull requests\n- 📝 Improve documentation\n- 🌍 Translate to other languages\n\n### How to Contribute\n\n1. Fork the repository\n2. Create your feature branch (`git checkout -b feature/AmazingFeature`)\n3. Commit your changes (`git commit -m 'Add some AmazingFeature'`)\n4. Push to the branch (`git push origin feature/AmazingFeature`)\n5. Open a Pull Request\n\n## 📄 License\n\nThis project is licensed under the **MIT License** - see the [LICENSE](LICENSE) file for details.\n\nYou are free to:\n- ✅ Use this project commercially or personally\n- ✅ Modify and distribute\n- ✅ Use privately\n- ✅ Sublicense\n\n## ⚖️ Legal Notice\n\n**Important**: This is an **independent community project** and is **not affiliated with, endorsed by, or sponsored by Valeton**.\n\n- All trademarks, product names, and company names mentioned are the property of their respective owners.\n- **Valeton** and **GP-5** are trademarks of Valeton Technology Co., Ltd.\n- This project is created by the community for educational and convenience purposes.\n- All intellectual property rights related to the Valeton GP-5 hardware and firmware belong to Valeton Technology Co., Ltd.\n\n## 🙏 Acknowledgments\n\n- Thanks to **Valeton** for creating the GP-5 multi-effects pedal\n- Thanks to the Web MIDI API community\n- Thanks to all contributors who help improve this project\n\n## 📞 Support\n\n- 🐛 **Issues**: [GitHub Issues](https://github.com/helvecioneto/gp5-wc/issues)\n- 💬 **Discussions**: [GitHub Discussions](https://github.com/helvecioneto/gp5-wc/discussions)\n- 📧 **Contact**: [Helvecio Neto](https://github.com/helvecioneto)\n\n## 🌟 Show Your Support\n\nIf you find this project useful, please consider:\n- ⭐ Starring the repository\n- 🍴 Forking and contributing\n- 📢 Sharing with other GP-5 users\n- ☕ [Buy me a coffee](https://github.com/sponsors/helvecioneto) (optional)\n\n---\n\n**Made with ❤️ by the community** | [Helvecio Neto](https://github.com/helvecioneto) © 2025\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhelvecioneto%2Fgp5-wc","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhelvecioneto%2Fgp5-wc","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhelvecioneto%2Fgp5-wc/lists"}