| 1 | = BeBoB Firmware Tool = |
---|
| 2 | |
---|
| 3 | Short help: |
---|
| 4 | {{{ |
---|
| 5 | Usage: ffado-bridgeco-downloader [OPTION...] OPERATION [ARGUMENTS] |
---|
| 6 | bridgeco-downloader -- firmware downloader application for BridgeCo devices |
---|
| 7 | |
---|
| 8 | OPERATION: GUID display |
---|
| 9 | GUID setguid NEW_GUID |
---|
| 10 | GUID firmware FILE |
---|
| 11 | GUID cne FILE |
---|
| 12 | GUID bcd FILE |
---|
| 13 | |
---|
| 14 | -b, --noboot Do no start bootloader (bootloader is already |
---|
| 15 | running) |
---|
| 16 | -f, --force Force firmware download |
---|
| 17 | -p, --port=PORT Set port |
---|
| 18 | -v, --verbose=level Produce verbose output |
---|
| 19 | -?, --help Give this help list |
---|
| 20 | --usage Give a short usage message |
---|
| 21 | -V, --version Print program version |
---|
| 22 | |
---|
| 23 | Mandatory or optional arguments to long options are also mandatory or optional |
---|
| 24 | for any corresponding short options. |
---|
| 25 | |
---|
| 26 | Report bugs to <ffado-devel@lists.sf.net>. |
---|
| 27 | |
---|
| 28 | }}} |
---|
| 29 | |
---|
| 30 | == Disclamer == |
---|
| 31 | |
---|
| 32 | Messing with firmware can be a dangerous thing. It can seriously damage your device. By using this tool you acknowledge that you're working at own risk. |
---|
| 33 | |
---|
| 34 | == Listing Devices == |
---|
| 35 | |
---|
| 36 | To use the tool, first connect a BeBoB device, and then run: |
---|
| 37 | {{{ |
---|
| 38 | ffado-bridgeco-downloader |
---|
| 39 | }}} |
---|
| 40 | |
---|
| 41 | This will display a list of devices on the bus: |
---|
| 42 | {{{ |
---|
| 43 | $ ffado-bridgeco-downloader |
---|
| 44 | Node id GUID Vendor - Model |
---|
| 45 | 0 0x00130e0100010265 'Focusrite' - 'Saffire' |
---|
| 46 | 1 0x314fc00036de6850 'Linux - ohci1394 ' - '' |
---|
| 47 | no message buffer overruns |
---|
| 48 | }}} |
---|
| 49 | |
---|
| 50 | == Displaying device info == |
---|
| 51 | |
---|
| 52 | Pick the device you want to upload a new firmware to from the list, and get the GUID. In this example the GUID is 0x00130e0100010265. Then display the device info: |
---|
| 53 | {{{ |
---|
| 54 | ffado-bridgeco-downloader GUID display |
---|
| 55 | }}} |
---|
| 56 | |
---|
| 57 | This results in: |
---|
| 58 | {{{ |
---|
| 59 | $ ffado-bridgeco-downloader 0x00130e0100010265 display |
---|
| 60 | 87075340408: (configrom.cpp)[ 581] printConfigRom: Config ROM |
---|
| 61 | 87075340516: (configrom.cpp)[ 582] printConfigRom: Current Node Id: 0 |
---|
| 62 | 87075340526: (configrom.cpp)[ 583] printConfigRom: GUID: 0x00130E0100010265 |
---|
| 63 | 87075340542: (configrom.cpp)[ 584] printConfigRom: Vendor Name: Focusrite |
---|
| 64 | 87075340553: (configrom.cpp)[ 585] printConfigRom: Model Name: Saffire |
---|
| 65 | 87075340562: (configrom.cpp)[ 586] printConfigRom: Node Vendor ID: 0x00130e |
---|
| 66 | 87075340572: (configrom.cpp)[ 587] printConfigRom: Model Id: 0x00000000 |
---|
| 67 | 87075340580: (configrom.cpp)[ 588] printConfigRom: Unit Specifier ID: 0x00a02d |
---|
| 68 | 87075340598: (configrom.cpp)[ 589] printConfigRom: Unit version: 0x00010001 |
---|
| 69 | 87075340608: (configrom.cpp)[ 590] printConfigRom: ISO resource manager: 0 |
---|
| 70 | 87075340617: (configrom.cpp)[ 591] printConfigRom: Cycle master capable: 1 |
---|
| 71 | 87075340625: (configrom.cpp)[ 592] printConfigRom: Bus manager capable: 1 |
---|
| 72 | 87075340633: (configrom.cpp)[ 593] printConfigRom: Cycle clock accuracy: 100 |
---|
| 73 | 87075340642: (configrom.cpp)[ 594] printConfigRom: Max rec: 8 (max asy payload: 512 bytes) |
---|
| 74 | Info Registers |
---|
| 75 | Manufactors Id: bridgeCo |
---|
| 76 | Protocol Version: 0x00000001 |
---|
| 77 | Bootloader Version: 0x00000000 |
---|
| 78 | GUID: 0x00130e0100010265 |
---|
| 79 | Hardware Model ID: 0x00000002 |
---|
| 80 | Hardware Revision: 0x00000001 |
---|
| 81 | Software Date: 14.12.2006, 16:50:00 |
---|
| 82 | Software Id: 0x00000000 |
---|
| 83 | Software Version: 0x02021d24 |
---|
| 84 | Base Address: 0x20080000 |
---|
| 85 | Max. Image Len: 0x00180000 |
---|
| 86 | Bootloader Date: 17.05.2005, 14:19:34 |
---|
| 87 | Debugger Id: 0x00000000 |
---|
| 88 | Debugger Version: 0x00000000 |
---|
| 89 | no message buffer overruns |
---|
| 90 | }}} |
---|
| 91 | |
---|
| 92 | == Uploading firmware == |
---|
| 93 | |
---|
| 94 | === Aquiring the firmware file === |
---|
| 95 | |
---|
| 96 | Focusrite firmwares can be downloaded here: |
---|
| 97 | http://mail.focusrite.com/beta/ |
---|
| 98 | |
---|
| 99 | Look for a file marked "This is the BCD file for use with 3rd party firmware tools." that corresponds to your device. |
---|
| 100 | |
---|
| 101 | === Uploading the firmware file(s) === |
---|
| 102 | |
---|
| 103 | Pick the device you want to upload a new firmware to from the list, and get the GUID. In this example the GUID is 0x00130e0100010265 |
---|
| 104 | |
---|
| 105 | Then upload the files: |
---|
| 106 | {{{ |
---|
| 107 | ffado-bridgeco-downloader GUID firmware FILENAME |
---|
| 108 | }}} |
---|
| 109 | |
---|
| 110 | Where you replace FILENAME with the filename of the firmware. |
---|
| 111 | |
---|
| 112 | Example for a Focusrite Saffire: |
---|
| 113 | {{{ |
---|
| 114 | $ ffado-bridgeco-downloader 0x00130e0100010265 firmware focusrite/BeBob_Saffire\ 02.02.7460.bcd |
---|
| 115 | 86426863684: (configrom.cpp)[ 581] printConfigRom: Config ROM |
---|
| 116 | 86426863804: (configrom.cpp)[ 582] printConfigRom: Current Node Id: 0 |
---|
| 117 | 86426863813: (configrom.cpp)[ 583] printConfigRom: GUID: 0x00130E0100010265 |
---|
| 118 | 86426863829: (configrom.cpp)[ 584] printConfigRom: Vendor Name: Focusrite |
---|
| 119 | 86426863839: (configrom.cpp)[ 585] printConfigRom: Model Name: Saffire |
---|
| 120 | 86426863848: (configrom.cpp)[ 586] printConfigRom: Node Vendor ID: 0x00130e |
---|
| 121 | 86426863856: (configrom.cpp)[ 587] printConfigRom: Model Id: 0x00000000 |
---|
| 122 | 86426863865: (configrom.cpp)[ 588] printConfigRom: Unit Specifier ID: 0x00a02d |
---|
| 123 | 86426863881: (configrom.cpp)[ 589] printConfigRom: Unit version: 0x00010001 |
---|
| 124 | 86426863891: (configrom.cpp)[ 590] printConfigRom: ISO resource manager: 0 |
---|
| 125 | 86426863899: (configrom.cpp)[ 591] printConfigRom: Cycle master capable: 1 |
---|
| 126 | 86426863907: (configrom.cpp)[ 592] printConfigRom: Bus manager capable: 1 |
---|
| 127 | 86426863914: (configrom.cpp)[ 593] printConfigRom: Cycle clock accuracy: 100 |
---|
| 128 | 86426863923: (configrom.cpp)[ 594] printConfigRom: Max rec: 8 (max asy payload: 512 bytes) |
---|
| 129 | Info Registers |
---|
| 130 | Manufactors Id: bridgeCo |
---|
| 131 | Protocol Version: 0x00000001 |
---|
| 132 | Bootloader Version: 0x00000000 |
---|
| 133 | GUID: 0x00130e0100010265 |
---|
| 134 | Hardware Model ID: 0x00000002 |
---|
| 135 | Hardware Revision: 0x00000001 |
---|
| 136 | Software Date: 14.12.2006, 16:50:00 |
---|
| 137 | Software Id: 0x00000000 |
---|
| 138 | Software Version: 0x02021d24 |
---|
| 139 | Base Address: 0x20080000 |
---|
| 140 | Max. Image Len: 0x00180000 |
---|
| 141 | Bootloader Date: 17.05.2005, 14:19:34 |
---|
| 142 | Debugger Id: 0x00000000 |
---|
| 143 | Debugger Version: 0x00000000 |
---|
| 144 | parse BCD file |
---|
| 145 | check firmware device compatibility... ok |
---|
| 146 | prepare for download (start bootloader) |
---|
| 147 | ..x.......... |
---|
| 148 | start downloading protocol for application image |
---|
| 149 | wait until flash erasing has terminated |
---|
| 150 | .............................. |
---|
| 151 | 1188840/1188840 bytes downloaded |
---|
| 152 | wait for transaction completion |
---|
| 153 | .......... |
---|
| 154 | download protocol successfuly completed |
---|
| 155 | start downloading protocol for CnE |
---|
| 156 | wait until flash erasing has terminated |
---|
| 157 | 86498052371: Debug (bebob_dl_mgr.cpp)[ 513] downloadObject: downloadObject: CRC match |
---|
| 158 | .............................. |
---|
| 159 | 4632/4632 bytes downloaded |
---|
| 160 | wait for transaction completion |
---|
| 161 | .......... |
---|
| 162 | download protocol successfuly completed |
---|
| 163 | setting CnE to factory default settings |
---|
| 164 | 86538070853: Debug (bebob_dl_mgr.cpp)[ 513] downloadObject: downloadObject: CRC match |
---|
| 165 | ..... |
---|
| 166 | start application |
---|
| 167 | Firmware download was successful |
---|
| 168 | no message buffer overruns |
---|
| 169 | }}} |
---|
| 170 | |
---|
| 171 | == Displaying firmware file info == |
---|
| 172 | |
---|
| 173 | To display firmware file information use: |
---|
| 174 | {{{ |
---|
| 175 | ffado-bridgeco-downloader GUID bcd FILENAME |
---|
| 176 | }}} |
---|
| 177 | |
---|
| 178 | {{{ |
---|
| 179 | $ ffado-bridgeco-downloader 0x00130e0100010265 bcd focusrite/BeBob_Saffire\ 02.02.7460.bcd |
---|
| 180 | 86951628521: (configrom.cpp)[ 581] printConfigRom: Config ROM |
---|
| 181 | 86951628622: (configrom.cpp)[ 582] printConfigRom: Current Node Id: 0 |
---|
| 182 | 86951628631: (configrom.cpp)[ 583] printConfigRom: GUID: 0x00130E0100010265 |
---|
| 183 | 86951628646: (configrom.cpp)[ 584] printConfigRom: Vendor Name: Focusrite |
---|
| 184 | 86951628656: (configrom.cpp)[ 585] printConfigRom: Model Name: Saffire |
---|
| 185 | 86951628665: (configrom.cpp)[ 586] printConfigRom: Node Vendor ID: 0x00130e |
---|
| 186 | 86951628674: (configrom.cpp)[ 587] printConfigRom: Model Id: 0x00000000 |
---|
| 187 | 86951628682: (configrom.cpp)[ 588] printConfigRom: Unit Specifier ID: 0x00a02d |
---|
| 188 | 86951628698: (configrom.cpp)[ 589] printConfigRom: Unit version: 0x00010001 |
---|
| 189 | 86951628707: (configrom.cpp)[ 590] printConfigRom: ISO resource manager: 0 |
---|
| 190 | 86951628715: (configrom.cpp)[ 591] printConfigRom: Cycle master capable: 1 |
---|
| 191 | 86951628723: (configrom.cpp)[ 592] printConfigRom: Bus manager capable: 1 |
---|
| 192 | 86951628731: (configrom.cpp)[ 593] printConfigRom: Cycle clock accuracy: 100 |
---|
| 193 | 86951628740: (configrom.cpp)[ 594] printConfigRom: Max rec: 8 (max asy payload: 512 bytes) |
---|
| 194 | Info Registers |
---|
| 195 | Manufactors Id: bridgeCo |
---|
| 196 | Protocol Version: 0x00000001 |
---|
| 197 | Bootloader Version: 0x00000000 |
---|
| 198 | GUID: 0x00130e0100010265 |
---|
| 199 | Hardware Model ID: 0x00000002 |
---|
| 200 | Hardware Revision: 0x00000001 |
---|
| 201 | Software Date: 14.12.2006, 16:50:00 |
---|
| 202 | Software Id: 0x00000000 |
---|
| 203 | Software Version: 0x02021d24 |
---|
| 204 | Base Address: 0x20080000 |
---|
| 205 | Max. Image Len: 0x00180000 |
---|
| 206 | Bootloader Date: 17.05.2005, 14:19:34 |
---|
| 207 | Debugger Id: 0x00000000 |
---|
| 208 | Debugger Version: 0x00000000 |
---|
| 209 | BCD Info |
---|
| 210 | BCD File Version 0 |
---|
| 211 | Software Date: 14.12.2006, 16:50:00 |
---|
| 212 | Software Version: 0x02021d24 |
---|
| 213 | Software Id: 0x00000000 |
---|
| 214 | Hardware ID: 0x00000002 |
---|
| 215 | Vendor OUI: 0x0000130e |
---|
| 216 | Image Offset: 0x00000074 |
---|
| 217 | Image Base Address: 0x20080000 |
---|
| 218 | Image Length: 0x001223e8 |
---|
| 219 | Image CRC: 0x62b9e2c3 |
---|
| 220 | CNE Length: 0x00001218 |
---|
| 221 | CNE Offset: 0x0012245c |
---|
| 222 | CNE CRC: 0x2deedfbe |
---|
| 223 | no message buffer overruns |
---|
| 224 | }}} |