CuVoodoo

the sorcery of copper

User Tools

Site Tools


busvoodoo

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Next revisionBoth sides next revision
busvoodoo [2017/12/14 22:34] – remove presentation kingkevinbusvoodoo [2017/12/15 11:08] – [firmwares] kingkevin
Line 2: Line 2:
 This tool allows to quickly communicate with various other electronic devices. This tool allows to quickly communicate with various other electronic devices.
  
-==== features ====+===== features =====
  
 The BusVoodoo is a multi-protocol debugging adapter. The BusVoodoo is a multi-protocol debugging adapter.
Line 12: Line 12:
  
 Device features: Device features:
-  * small rigid case: 49.3x27.7 mm+  * compact rigid case: 49.3x27.7 mm
   * host connection: USB 2.0 (mini-B, full speed: 11 Mb/s)   * host connection: USB 2.0 (mini-B, full speed: 11 Mb/s)
   * 2 light indicators: red for power, red+blue for activity   * 2 light indicators: red for power, red+blue for activity
Line 18: Line 18:
   * 1 display connector (OLED screen provided in full version)   * 1 display connector (OLED screen provided in full version)
   * 1 internal debugging and automation connector (2x4 pins with 2 mm pitch)   * 1 internal debugging and automation connector (2x4 pins with 2 mm pitch)
 +  * re-flashable with [[#firmwares|special purpose firmwares]]
  
 I/O connector: I/O connector:
Line 49: Line 50:
 It comes with no network connectivity. It comes with no network connectivity.
 Its purpose is to debug and hack devices locally, not to provide a gateway to remotely control other devices. Its purpose is to debug and hack devices locally, not to provide a gateway to remotely control other devices.
 +
 +=== not the ultimate all-in-one device: ===
 +
 +The BusVoodoo is a compact device which supports a lot of [[#protocols|protocol]], which makes it quite versatile.
 +But it is not intended to replace all the other special purpose adapters (USB to UART, JTAG, ...) which probably can better solve specific task because their are: more stable, simpler, more powerful, faster, more stable, cheaper, or more available.
 +Thus the BusVoodoo is a good choice to start with, but if you want better performances switch to a device designed for each particular task.
  
 === not community driven: === === not community driven: ===
Line 57: Line 64:
 Nothing prevents you from building it yourself or forking it though. Nothing prevents you from building it yourself or forking it though.
 Both hardware and software are open-source and available here, and you are welcome to submit bug reports or patches. Both hardware and software are open-source and available here, and you are welcome to submit bug reports or patches.
-==== protocols ==== 
  
-==== history ====+===== 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/temperature sensor protocol | 
 +| 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 ===== 
 + 
 +Since the BusVoodoo uses native USB, it can be [[flashing|re-flashed]] to clone other USB device. 
 +This allows to convert the BusVoodoo into a dedicated/task specific adapter. 
 + 
 +alternative firmwares: 
 +  * USBtinyISP or AVRISP to program Atmel AVR MCUs 
 +  * [[https://github.com/blacksphere/blackmagic/wiki|Black Magic Probe]] for JTAG and SWD programming 
 +  * PICkit2 to program PIC MCUs, using the high voltage output of the full version 
 +  * AVR Dragon to rescue Atmal AVR MCUs using the [[http://www.atmel.com/webdoc/avrdragon/avrdragon.hvsp_description.html|High Voltage Serial Programming (HSVP)]], using the high voltage output of the full version 
 + 
 +note: the alternative firmware are not implemented yet 
 +===== history =====
  
 Whenever I go to conferences I like to take apart devices I find there. Whenever I go to conferences I like to take apart devices I find there.
Line 72: Line 121:
 Use a terminal emulation program to connect to it (e.g. [[https://github.com/npat-efault/picocom|picocom]] for Linux, [[http://www.putty.org/|putty]] for Windows), configure the protocol using the built-in menu, are ready you are to communicate with other devices. Use a terminal emulation program to connect to it (e.g. [[https://github.com/npat-efault/picocom|picocom]] for Linux, [[http://www.putty.org/|putty]] for Windows), configure the protocol using the built-in menu, are ready you are to communicate with other devices.
  
-==== alternatives ====+===== alternatives =====
  
 I am not the first one having this problem and creating such a device. I am not the first one having this problem and creating such a device.