├── .github ├── ISSUE_TEMPLATE.md ├── PULL_REQUEST_TEMPLATE.md └── CONTRIBUTING.md ├── LICENSE ├── .travis.yml ├── README.md └── zzInoVIDPID └── boards.txt /.github/ISSUE_TEMPLATE.md: -------------------------------------------------------------------------------- 1 | Please read the Issues section of the Contributing Rules at the "contributing" link to the right before submitting an issue report. 2 | -------------------------------------------------------------------------------- /.github/PULL_REQUEST_TEMPLATE.md: -------------------------------------------------------------------------------- 1 | Please read the Pull Requests section of the Contributing Rules at the "contributing" link to the right before submitting an issue report. 2 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2016 per1234 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy of 6 | this software and associated documentation files (the "Software"), to deal in 7 | the Software without restriction, including without limitation the rights to 8 | use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of 9 | the Software, and to permit persons to whom the Software is furnished to do so, 10 | subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS 17 | FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR 18 | COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER 19 | IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 20 | CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 21 | -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | # This file is used to configure the Travis CI tests for this repository 2 | 3 | matrix: 4 | include: 5 | 6 | # Check all the files in the repository for consistent formatting 7 | - name: 'File Formatting Checks' 8 | language: minimal 9 | script: 10 | # Check for UTF-8 BOM file encoding 11 | - find . -path './.git' -prune -or -type f -exec grep --files-with-matches --binary-files=without-match $'\xEF\xBB\xBF' '{}' \; -exec echo 'UTF-8 BOM encoding detected.' \; -exec false '{}' + 12 | # Check for files starting with a blank line 13 | - find . -path ./.git -prune -o -type f -print0 | xargs -0 -L1 bash -c 'head -1 "$0" | grep --regexp="^$"; if [[ "$?" == "0" ]]; then echo "Blank line found at start of $0."; false; fi' 14 | # Check for tabs 15 | - "if grep --line-number --recursive --binary-files=without-match --exclude-dir=.git --regexp=$'\t' .; then echo 'Tab found.'; false; fi" 16 | # Check for trailing whitespace 17 | - "if grep --line-number --recursive --binary-files=without-match --exclude-dir=.git --regexp='[[:blank:]]$' .; then echo 'Trailing whitespace found.'; false; fi" 18 | # Check for non-Unix line endings 19 | - "if grep --files-with-matches --recursive --binary-files=without-match --exclude-dir=.git --regexp=$'\r$' .; then echo 'Non-Unix EOL detected.'; false; fi" 20 | # Check for blank lines at end of files 21 | - find . -path ./.git -prune -o -type f -print0 | xargs -0 -L1 bash -c 'tail -1 "$0" | grep --regexp="^$"; if [[ "$?" == "0" ]]; then echo "Blank line found at end of $0."; false; fi' 22 | # Check for files that don't end in a newline (https://stackoverflow.com/a/25686825) 23 | - find . -path ./.git -prune -o -type f -print0 | xargs -0 -L1 bash -c 'if test "$(tail --bytes=1 "$0")"; then echo "No new line at end of $0."; false; fi' 24 | 25 | 26 | # Check all files in the repository for commonly misspelled words 27 | - name: 'Spell Check' 28 | language: python 29 | python: 3.6 30 | install: 31 | # Install codespell 32 | # https://github.com/codespell-project/codespell 33 | - pip install codespell 34 | 35 | script: 36 | - codespell --skip="${TRAVIS_BUILD_DIR}/.git" "${TRAVIS_BUILD_DIR}" 37 | 38 | 39 | notifications: 40 | email: 41 | on_success: always 42 | on_failure: always 43 | webhooks: 44 | urls: 45 | # Use TravisBuddy to automatically comment on any pull request that results in a failing CI build 46 | - https://www.travisbuddy.com/ 47 | on_success: never 48 | on_failure: always 49 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | zzInoVIDPID 2 | ========== 3 | VID/PID definitions for all common USB to serial chips for the [Arduino](https://arduino.cc) IDE. Used to identify ports listed on the **Tools > Port** menu. 4 | 5 | Arduino boards that are based on ATmega32U4 or use the ATmega16U2/8U2 chips for the USB to serial interface display the board name in the **Tools > Port** menu. Other commonly used boards have different USB to serial chips without customized VID/PID, and thus do not show the board name in the menu. If you have multiple serial ports on your computer, it can get very confusing to remember which port is which. This project helps to reduce this confusion by labeling the ports of common USB to serial chips in the Arduino IDE **Tools > Port** menu with the chip name. 6 | 7 | 8 | ## Installation 9 | There are two options for installing **zzInoVIDPID** in the Arduino IDE: 10 | #### Boards Manager Installation(requires Arduino IDE version 1.6.4 or greater) 11 | - Open the Arduino IDE. 12 | - Open the **File > Preferences** menu item. 13 | - Enter the following URL in **Additional Boards Manager URLs**: https://per1234.github.io/zzInoVIDPID/package_per1234_zzInoVIDPID_index.json 14 | - Open the **Tools > Board > Boards Manager...** menu item. 15 | - Wait for the platform indexes to finish downloading. 16 | - Scroll down until you see the **zzInoVIDPID** entry and click on it. 17 | - **Note**: If you are using Arduino IDE 1.6.6 you may need to close **Boards Manager** and then reopen it before the **zzInoVIDPID** entry will appear. 18 | - Click **Install**. 19 | - After installation is complete close the **Boards Manager** window. 20 | - **File > Quit** 21 | - Restart the Arduino IDE. 22 | 23 | #### Manual Installation 24 | - Download the zzInoVIDPID files here: https://github.com/per1234/zzInoVIDPID/archive/master.zip 25 | - Extract the .zip file. 26 | - Move the extracted folder into the **hardware** folder in your sketchbook folder. You can find the location of your sketchbook folder at **File > Preferences > Sketchbook location:**. 27 | - If the Arduino IDE is running then restart it. 28 | 29 | 30 | ## Defined parts 31 | - FTDI 32 | - FT232x 33 | - FT245x 34 | - FT230x 35 | - FT231x 36 | - FT234XD 37 | - FT2232x 38 | - FT4232H 39 | - Bricked counterfeit FTDI FT232 40 | - WCH CH340/CH341 41 | - Silicon Labs CP210x 42 | - Prolific PL2303 43 | - Microchip MCP2221 44 | - Cypress CY7C65213 45 | - Holtek HT42B534 46 | - If you would like me to add a part please [open an issue](https://github.com/per1234/zzInoVIDPID/issues/new) or a [pull request](https://github.com/per1234/zzInoVIDPID/compare). 47 | 48 | 49 | ## Contributing 50 | Pull requests or issue reports are welcome! Please see the [contribution rules](https://github.com/per1234/zzInoVIDPID/blob/master/.github/CONTRIBUTING.md) for instructions. 51 | 52 | 53 | ## Ports menu before: 54 | ![before screenshot](https://github.com/per1234/zzInoVIDPID/raw/screenshots/before.png) 55 | 56 | 57 | ## Ports menu after: 58 | ![after screenshot](https://github.com/per1234/zzInoVIDPID/raw/screenshots/after.png) 59 | -------------------------------------------------------------------------------- /.github/CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | # Contribution Rules 2 | Thanks for your interest in contributing to this free open source project! Please take the time to read and follow these rules before submitting an issue report or pull request. 3 | 4 | ## Issues 5 | - Do you need help using this project? Support requests should be made to the appropriate section of the [Arduino forum](http://forum.arduino.cc) rather than an issue report. Feel free to [send me a PM](http://forum.arduino.cc/index.php?action=pm;sa=send;u=224903) with a link to your forum thread. **Support will not be provided via PM**, I prefer to help you publicly so that others with the same question may benefit from the information. **Issue reports are to be used to report bugs or make feature requests only.** 6 | - Before submitting a bug report test using the [latest version of the project](https://github.com/per1234/zzInoVIDPID/archive/master.zip) to be sure it hasn't already been fixed. **Don't report issues that only occur with old versions of the project.** 7 | - Search [existing pull requests and issues](https://github.com/per1234/zzInoVIDPID/issues?q=) to be sure it hasn't already been reported. **Do not submit duplicate issue reports.** If you have additional information to provide about the issue then please comment on that issue. 8 | - Open an issue at https://github.com/per1234/zzInoVIDPID/issues/new. 9 | - State which version of the Arduino IDE you are using. I do try to maintain backwards compatibility with old versions of the Arduino IDE. 10 | - Describe the issue and what behavior you were expecting. Post complete error messages using [markdown code fencing](https://guides.github.com/features/mastering-markdown/#examples). 11 | - Provide a full set of steps necessary to reproduce the issue. 12 | - Be responsive. I may need you to provide more information, please respond as soon as possible. 13 | - If you find a solution to your problem update your issue report with an explanation of how you were able to fix it and close the issue. 14 | 15 | ## Pull Requests 16 | - Search [existing pull requests and issues](https://github.com/per1234/zzInoVIDPID/pulls?q=) to make sure the change hasn't already been proposed. 17 | - Code formatting should be consistent with the current code. 18 | - Update the [documentation](https://github.com/per1234/zzInoVIDPID/blob/master/README.md) if your changes require it. This should be done in the same commit as the change. 19 | - **All commits must be atomic**. This means that the commit completely accomplishes a single task. Each commit should result in fully functional code. Multiple tasks should not be combined in a single commit. For more information please read http://www.freshconsulting.com/atomic-commits. 20 | - Commit messages: Use the [imperative mood](http://chris.beams.io/posts/git-commit/#imperative) in the commit title. Completely explain the purpose of the commit. Please read http://chris.beams.io/posts/git-commit for more tips on writing good commit messages. 21 | - Each pull request should address a single bug fix or enhancement, this may consist of multiple commits. If you have multiple, unrelated fixes or enhancements to contribute, then do each in a separate pull request. 22 | - Open a pull request at https://github.com/per1234/zzInoVIDPID/compare. 23 | - If your pull request fixes an issue in the issue tracker, use the [closes/fixes/resolves syntax](https://help.github.com/articles/closing-issues-via-commit-messages) in the body to denote this. 24 | -------------------------------------------------------------------------------- /zzInoVIDPID/boards.txt: -------------------------------------------------------------------------------- 1 | ############################################################## 2 | FTDI_PID_6001.name=FTDI FT232RL/RQ/BM/BL/BQ, FT245RL/RQ/BM/BL/BQ, VNC1L, VNC2 3 | FTDI_PID_6001.hide= 4 | FTDI_PID_6001.vid.0=0x0403 5 | FTDI_PID_6001.pid.0=0x6001 6 | FTDI_PID_6001.build.board=ZZINOVIDPID_FTDI_PID_6001 7 | ############################################################## 8 | FT2232.name=FTDI FT2232C/D/L/HL/HQ 9 | FT2232.hide= 10 | FT2232.vid.0=0x0403 11 | FT2232.pid.0=0x6010 12 | FT2232.build.board=ZZINOVIDPID_FT2232 13 | ############################################################## 14 | FT4232.name=FTDI FT4232HL/HQ 15 | FT4232.hide= 16 | FT4232.vid.0=0x0403 17 | FT4232.pid.0=0x6011 18 | FT4232.build.board=ZZINOVIDPID_FT4232 19 | ############################################################## 20 | FTDI_PID_6014.name=FTDI FT232HL/HQ 21 | FTDI_PID_6014.hide= 22 | FTDI_PID_6014.vid.0=0x0403 23 | FTDI_PID_6014.pid.0=0x6014 24 | FTDI_PID_6014.build.board=ZZINOVIDPID_FTDI_PID_6014 25 | ############################################################## 26 | FTDI_PID_6015.name=FTDI Bridge(I2C/SPI/UART/FIFO) 27 | FTDI_PID_6015.hide= 28 | FTDI_PID_6015.vid.0=0x0403 29 | FTDI_PID_6015.pid.0=0x6015 30 | FTDI_PID_6015.build.board=ZZINOVIDPID_FTDI_PID_6015 31 | ############################################################## 32 | FTDI_PID_6031.name=FTDI MISC 33 | FTDI_PID_6031.hide= 34 | FTDI_PID_6031.vid.0=0x0403 35 | FTDI_PID_6031.pid.0=0x6031 36 | FTDI_PID_6031.build.board=ZZINOVIDPID_FTDI_PID_6031 37 | ############################################################## 38 | # A windows FTDI driver update changed the PID of counterfeit FT232 chips to 0000 to brick them 39 | counterfeit_FT232.name=Bricked Counterfeit FTDI FT232 40 | counterfeit_FT232.hide= 41 | counterfeit_FT232.vid.0=0x0403 42 | counterfeit_FT232.pid.0=0x0000 43 | counterfeit_FT232.build.board=ZZINOVIDPID_counterfeit_FT232 44 | ############################################################## 45 | CH340.name=CH340 46 | CH340.hide= 47 | CH340.vid.0=0x1A86 48 | CH340.pid.0=0x7523 49 | CH340.build.board=ZZINOVIDPID_CH340 50 | ############################################################## 51 | CH341.name=CH341 52 | CH341.hide= 53 | CH341.vid.0=0x1A86 54 | CH341.pid.0=0x5523 55 | CH341.vid.1=0x4348 56 | CH341.pid.1=0x5523 57 | CH341.build.board=ZZINOVIDPID_CH341 58 | ############################################################## 59 | CP210x.name=CP210x 60 | CP210x.hide= 61 | CP210x.vid.0=0x10C4 62 | CP210x.pid.0=0x80A9 63 | CP210x.vid.1=0x10C4 64 | CP210x.pid.1=0xEA60 65 | CP210x.vid.2=0x10C4 66 | CP210x.pid.2=0xEA61 67 | CP210x.vid.3=0x10C4 68 | CP210x.pid.3=0xEA70 69 | CP210x.vid.4=0x10C4 70 | CP210x.pid.4=0xEA71 71 | CP210x.vid.5=0x10C4 72 | CP210x.pid.5=0xEA80 73 | CP210x.vid.6=0x10C4 74 | CP210x.pid.6=0xEAD0 75 | CP210x.build.board=ZZINOVIDPID_CP210x 76 | ############################################################## 77 | PL2303.name=PL2303 78 | PL2303.hide= 79 | PL2303.vid.0=0x067B 80 | PL2303.pid.0=0x2303 81 | PL2303.vid.1=0x067B 82 | PL2303.pid.1=0x2304 83 | PL2303.vid.2=0x067B 84 | PL2303.pid.2=0x04BB 85 | PL2303.vid.3=0x067B 86 | PL2303.pid.3=0xAAA2 87 | PL2303.vid.4=0x067B 88 | PL2303.pid.4=0xAAA3 89 | PL2303.build.board=ZZINOVIDPID_PL2303 90 | ############################################################## 91 | MCP2221.name=MCP2221 92 | MCP2221.hide= 93 | MCP2221.vid.0=0x04D8 94 | MCP2221.pid.0=0x000A 95 | MCP2221.vid.1=0x04D8 96 | MCP2221.pid.1=0x0205 97 | MCP2221.vid.2=0x04D8 98 | MCP2221.pid.2=0x0206 99 | MCP2221.vid.3=0x04D8 100 | MCP2221.pid.3=0x00DF 101 | MCP2221.vid.4=0x04D8 102 | MCP2221.pid.4=0x0057 103 | MCP2221.vid.5=0x04D8 104 | MCP2221.pid.5=0x006E 105 | MCP2221.vid.6=0x04D8 106 | MCP2221.pid.6=0x0208 107 | MCP2221.vid.7=0x04D8 108 | MCP2221.pid.7=0x00DD 109 | MCP2221.vid.8=0x04D8 110 | MCP2221.pid.8=0x0207 111 | MCP2221.build.board=ZZINOVIDPID_MCP2221 112 | ############################################################## 113 | CY7C65213.name=CY7C65213 114 | CY7C65213.hide= 115 | CY7C65213.vid.0=0x04B4 116 | CY7C65213.pid.0=0x0003 117 | CY7C65213.build.board=ZZINOVIDPID_CY7C65213 118 | ############################################################## 119 | HT42B534.name=HT42B534 120 | HT42B534.hide= 121 | HT42B534.vid.0=0x04D9 122 | HT42B534.pid.0=0xB534 123 | HT42B534.build.board=ZZINOVIDPID_HT42B534 124 | --------------------------------------------------------------------------------