Creative Commons images are CC BY-NC-SA 3.0

24.95

added to your
shopping cart

quantity
Only 4 left! 4 in stock
24.95 1+ units
22.46 10+ units
19.96 100+ units

Description: The USB Bit Whacker is a spectacular little development board featuring the PIC18F2553. Based on the work of Brian Schmalz, the UBW is a small board with a command interpreter for basic input and output control. When attached to a Windows/Max OS X/Linux computer, the UBW will show up as an RS232 Com port! You control the individual I/O pins on the PIC through simple serial commands. Board comes fully tested, preprogrammed, and assembled as shown.

The 18F2553 also comes pre-programmed with a USB bootloader. This means you can create HEX files using any compiler or assembler (C18, CC8e, SDCC) and then load that HEX file onto the PIC without an external programmer - directly over USB! Power is obtained over USB.

Please download the Microchip USB Bootloader below. Please see the UBW home page for more information.

You may start with downloading and installing the latest release of Microchip USB Framework Installation file. The Release Notes provide details on the location of the Comunications Device Class (CDC) RS-232 Emulation driver INF file location. When installed the S1 LED will begin to blink.

Note: This product is a collaboration with Brian Schmalz. A portion of each sales goes back to them for product support and continued development.

Features:

  • Reset Button
  • General Input Button (also used to enter program mode during a reset)
  • mini-USB Connection
  • 16 General I/O
  • TX/RX (can be used as a USB to UART converter board)
  • 24MHz Crystal
  • Two Status LEDs
  • Preprogrammed with Bootloader and UBW_D firmware

Dimensions: 1.0x1.6"

Documents:

Comments 28 comments

  • This is an excellent mini-USB development board. Wonder why Microchip does not sell low cost development boards like this? With Microchip’s you have to buy an additional programmer.

  • The device behaves a little poorly for me on Ubuntu Linux with 1.47 firmware (or the 1.43 firmware it came with). I can connect to it,┬ásend it commands, etc. But, occasionally my python code will fail to write to the device reporting back an OS level error. This is sometimes, though not necessarily always, accompanied by the device disconnecting and reconnecting itself. In doing this it maintains power - if I have some pins set to output high, they stay high. What I see from the kernel is:

    [14057.800085] hub 2-0:1.0: port 2 disabled by hub (EMI?), re-enabling...
    [14057.800220] usb 2-2: USB disconnect, device number 3
    [14058.040043] usb 2-2: new full-speed USB device number 4 using uhci_hcd
    [14058.211549] cdc_acm 2-2:1.0: This device cannot do calls on its own. It is not a modem.
    [14058.211786] cdc_acm 2-2:1.0: ttyACM0: USB ACM device
    [36662.008081] hub 2-0:1.0: port 2 disabled by hub (EMI?), re-enabling...
    [36662.008211] usb 2-2: USB disconnect, device number 4
    [36662.304043] usb 2-2: new full-speed USB device number 5 using uhci_hcd
    [36662.535241] cdc_acm 2-2:1.0: This device cannot do calls on its own. It is not a modem.
    [36662.535482] cdc_acm 2-2:1.0: ttyACM1: USB ACM device
    [56875.992086] hub 2-0:1.0: port 2 disabled by hub (EMI?), re-enabling...
    [56875.992222] usb 2-2: USB disconnect, device number 5
    [56876.232043] usb 2-2: new full-speed USB device number 6 using uhci_hcd
    [56876.402700] cdc_acm 2-2:1.0: This device cannot do calls on its own. It is not a modem.
    [56876.402934] cdc_acm 2-2:1.0: ttyACM0: USB ACM device
    

    This means that my script can no longer control the device unless I completely re-initialize. Is this something that anyone else has seen? I’m going to try writing some controller code in C to see if it has to do with the way that Python interfaces with devices via RS-232, but I’m skeptical as Python has been doing that for a long time.

    • Did you happen to have a situation where you tried to drive too much current via the pins? It might be that your motherboard’s USB root hub thought there was a short (due to too much current being drawn) and shut the port down. Thus the “port 2 disabled by hub (EMI?), re-enabling…” message. What do you have connected that might be drawing too much current? I don’t know if the UBW firmware negotiates for more than the standard 100mA that is given to anything that plugs in (they can negotiate for up to 500mA IIRC, and more for a 3.0 port).

      Just some thoughts.

  • Sorry, I should have included that these boards are the 18F2553 24MHz types. Thanks.

  • Hi Brian - I’m a later comer, got a couple UBW’s about a year or more ago haven’t played with them until now. I have a Win 7 64 system and pickit 2. Without changing anything on one of the boards, if I plug it in and go into bootload mode, it attaches and then de-attaches rather regularly. It shows as an unknown device and I am unable to install drivers even after going through all the steps recommended in this case. However, in UBW mode, it attaches and shows as a com port. I’ve tried recompiling the bootloader code, I’ve tried reburning the bootloader code that I can see that you’re offering. Any ideas? Thanks.

  • I bought one of those boards, plugged it to my pc and got the main firmware working. Then i tried to program some new firmware to it and now the green led just stays on and my pc can’t recognize it anylonger. Is the board just broken now or is there something I can do?

    • It depends. If you accidentally allowed the PC programming software to over-write your config bits, you may have lost the ability to use the bootloader to re-program your board. In that case, I suggest picking up a PICKIT3 or PICKIT2 programmer. That will bring back your board.

      If you try to put it into bootload mode, does it get recognized by the PC bootloader application? (PDFSUSB.exe)

  • Can the default UBW firmware support an input that latches a change until cleared? Or do I need to write my own interrupt routine?

    • For that you will need to modify the existing firmware. At present, we don’t have any latching type functionality in the code. If your input signal is not very fast (say longer than 2ms) then you can get by with polling from the PC.

  • I saw this product has not had a post in quite some time so I just wanted to say that this little board is incredibly useful. Great for small projects that need simple yet effective Micocontroller-PC communication. The bootloader makes it very easy to upload customized projects over USB. Very handy if you don’t have a PIC kit handy. Although be careful and know what you’re doing when editing any of the configuration bits because doing so may affect the bootloader and you’ll have to re-program with a PIC programmer.

    Great product!

  • Can this board be used for a “K” type thermocouple?

  • Hi, purchased one of these and had it up and running. Upgraded to FW 1.4.8 and everything was working fine until I tried to load my own HEX.
    I turned WDT off in the project and tried programming it. It gave me a warning asking whether or not I want to use my config bits (Yes), the board’s (No), or the current (Cancel). I selected “No” but then it failed anyway… Now my PC can’t recognize the UBW and the UBW no long has the flashing LED’s for programming (both Power and S2 led are on solid).
    Did I brick my UBW? Thanks…

  • Hi,
    Got Sparkun UBW with FW D 1.4.3, but failed to upgrade to 1.4.8 :(
    Both leds remain on, no blink, Windows can’t find any driver.
    * Failed with FW-D-2455.hex or 2553 from 1.4.8
    * Failed with FW-D-2455.hex or 2553 from 1.4.7
    * OK with FW-D-2455.hex from 1.4.5
    Drivers from “Microchip Solutions v2010-10-19"
    Someone knows why ? Found nothing on UBW site :(
    I suspect CLOCK-FREQ 48000000 in HardwareProfile-UBW.h…

    • Got it - you need the drivers from the UBW website: http://schmalzhaus.com/UBW/UBWinf.zip
      We no longer use Microchip’s generic example PID - we have our own PID (from Microchip) just for UBW based boards now, and they need that modified INF file from that zip.

      • Oh thanks a lot, it works :)
        I thank this pack was extracted from the Microchip’s one (that I used for 1.4.3, following QuickStartGuide from SparkFun) because of “Updated INF (driver) files to use latest from Microchip” but I was wrong…
        And thanks again for all your great work!

  • It would be nice to get the eagle files for this board. I wanted to make some modifications directly on the board. I have bought at least 5 different UBW from sparkfun over the years and bread boarded dozens of them.
    Now its time to make a pcb with some permanent additions.

  • Hello Everybody, does someone knows how well this is working under macosx 10.6?

    • As far as I know, there are no known issues with any version of Mac OS X. It just kinda always ‘works’. On my 10.6.4 Mac it appears as /dev/tty.usbmodem411

  • Has anyone tried getting this to work in Windows 7? I’ve had it working great in XP, but 7 doesn’t like the drivers when I try.

    • Somebody who knows way more about Windows 7 may be able to edit the inf file properly to get it to work. Until then, we need to wait until Microchip officially releases an update to the USB files to support Windows 7. I have no idea when that will be but I’ll ask. Sorry!

      • That’s okay, thanks for the response. I’ll report back if I can get it to work later.

  • Windows users: even though its a class-compliant USB serial device I believe you still need to install a “driver” (actually just a .INF file) from Microchip (comes with the USB Framework). On other OSes it should work as-is.

    • I agree - I’m using the Bit Whacker on Snow Leopard (10.6.4) without any driver changes. On Windows, I have to ‘install the driver’ which consists on finding mchpcdc.inf and pointing the hardware configuration wizard at that file. I downloaded the Microchip Application Library the first time thinking that there was a real driver but then realized that it is really just the .inf file that is needed (tells Windows to use usbser.sys). mchpcdc.inf is available on forums for those that don’t need Microchip stuff.

  • I also have the same problem. My Vista and XP fail to recognize my UBW. No blinking led… just power LED light up.
    Its happen MOST of the time and not ALL the time. So, we can rule out EMPTY FIRMWARE factor. Its looks like hardware stability issue. If I leave USB connected for long time (around 24hours) its will be detected.
    Anyone from SPARKFUN could clarify this? I buy 3 sets, and all of them behave like that.

  • hi i purchased this device, at first, it worked fine appearing as a new serial port in my PC and testing commands. The problem is that now it doesn’t appear any serial port away from PC’s serial ports, and also the only led is the Power led, before a led used to blink, i remember. I tested it into another PC and the same problem happens. QUESTION: What should I do to have it working again???


Related Products