busvoodoo
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision | ||
busvoodoo [2017/12/15 08:42] – add firmwares kingkevin | busvoodoo [2017/12/15 11:48] – add flashing kingkevin | ||
---|---|---|---|
Line 66: | Line 66: | ||
===== protocols ===== | ===== protocols ===== | ||
+ | |||
+ | The signals can be driven using 3.3 V push-pull mode, or 1.6 to 5.5 V open-drain mode with 2 kOhm embedded pull-up resistors (can be increased using external resistor). | ||
+ | |||
+ | ^ protocol ^ support ^ comment ^ | ||
+ | | UART | hardware | 2 UARTs available, 1 with hardware flow control | | ||
+ | | SPI | hardware | with multiple Chip Select | | ||
+ | | I²C | hardware | with embedded pull-up resistors | | ||
+ | | I²S | hardware | with master clock | | ||
+ | | SD/eMMC | hardware | with 1 or 4 data lines | | ||
+ | | SMBus | hardware | with embedded pull-up resistors | | ||
+ | | LIN | hardware | | | ||
+ | | ISO-7816 | hardware | | | ||
+ | | RS-232 | hardware | with hardware flow control, only in full version | | ||
+ | | RS-485 | hardware | no termination resistor, only in full version | | ||
+ | | RS-422 | hardware | no termination resistor, only in full version | | ||
+ | | CAN | hardware | no termination resistor, only in full version | | ||
+ | | 1-Wire | software | | | ||
+ | | MicroWire | software | | | ||
+ | | WS2812b | sofware | dedicated LED light protocol | | ||
+ | | DHT11/DHT22 | software | dedicated humidity/ | ||
+ | | TM1637 | software | dedicated 7-segment display protocol | | ||
+ | | IR | software | various InfraRed protocols, planned | | ||
+ | | JTAG | software | planned | | ||
+ | | SWD | software | planned | | ||
+ | | cJTAG | software | planned | | ||
+ | |||
+ | note: the status of each protocol support is not documented yet (WiP) | ||
+ | |||
+ | no matter which protocol you are using, the hardware has been designed to provide one additional UART port | ||
===== firmwares ===== | ===== firmwares ===== | ||
+ | By default the BusVoodoo adapter comes with the main BusVoodoo firmware. | ||
+ | When connected to USB it is detected as a serial device (using the standard [[https:// | ||
+ | Just connect to it using your favorite serial terminal and off you go. | ||
+ | But since the BusVoodoo hardware uses native USB, it can be [[# | ||
+ | This allows to convert the BusVoodoo into a dedicated/ | ||
+ | |||
+ | alternative firmwares: | ||
+ | * USBtinyISP or AVRISP to program Atmel AVR MCUs | ||
+ | * [[https:// | ||
+ | * PICkit2 to program PIC MCUs, using the high voltage output of the full version | ||
+ | * AVR Dragon to rescue Atmal AVR MCUs using the [[http:// | ||
+ | |||
+ | note: the alternative firmware are not implemented yet | ||
+ | |||
+ | ===== flashing ===== | ||
+ | |||
+ | The BusVoodoo is pretty much unbrickable. | ||
+ | It provides several flashing methods: | ||
+ | - the main BusVoodoo firmware provides USB Device Firmware Upgrade (DFU) capabilities. [[http:// | ||
+ | - if switching from runtime to DFU mode does not work, connect to the BusVoodoo using the serial terminal and switch to DFU mode using the menu | ||
+ | - if the BusVoodoo does not appears as USB serial device, there is still a serial port on the debugging connector. Connect to it using an USB to serial adapter and switch to DFU mode using the menu | ||
+ | - if the main firmware is broken and the menu is not accessible over the USB or serial port, short the 5V and DFU pins on the programming connector (follow the DFU indication on the board) while powering the device. This will force booting the DFU bootloader instead of the main application | ||
+ | - if the DFU bootloader (or USB) is broken, short the ICP pad to ground using twizzers (follow the ICP indication on the board) while powering the device. This will start the STM32 embedded UART bootloader, allowing you to [[stm32f1xx# | ||
+ | - finally you can use the SWD pins on the programming connector to [[stm32f1xx# | ||
+ | - if none of the above methods work, the device is definitely bricked (or defective). congratulations. | ||
===== history ===== | ===== history ===== | ||