Usbasp Mac Os X Driver

Explore my other projects! For example:
ISPnub - Stand-alone AVR programmer module
  1. Lc Technology Usbasp V2.0 Driver
  2. Zadig Usbasp
USBasp is OpenSource, it's free!
Like it? You can support via PayPal:

The programmer uses a firmware-only USB driver, no special USB controller is needed. USBasp is a low-cost programmer for AVR microcontrollers. It uses a pure software implementation of the USB communication protocol and it can be easily used with laptops. Works under multiple platforms. Linux, Mac OS X and Windows are tested. Support for Windows, Mac OS X and Linux (will work on. These AVR programmers are based on Thomas Fischl's USBasp design and connect to your computer's USB port. Not only are they quite compact (70x20mm), but the design is really elegant. The USB interface is achieved by using an atmega8 processor and the rest is done in firmware. The driver will work on both 32 and 64 bit platforms. On Linux And Mac OS X no kernel driver is required, just use AVRdude and specify the correct port. The programmer will work with a wide variety of Atmel AVR microcontrollers including the Atmega8a and Atmega168a.

€ 10
USBasp is a USB in-circuit programmer for Atmel AVR controllers. It simply consists of an ATMega88 or an ATMega8 and a couple of passive components. The programmer uses a firmware-only USB driver, no special USB controller is needed.

Features

  • Works under multiple platforms. Linux, Mac OS X and Windows are tested.
  • No special controllers or smd components are needed.
  • Programming speed is up to 5kBytes/sec.
  • SCK option to support targets with low clock speed (< 1,5MHz).

Download

Firmware and circuit

The following packages include circuit and firmware.
usbasp.2011-05-28.tar.gz (519 kB) TPI support, supports programmers with ATMega88 and ATMega8.
usbasp.2009-02-28.tar.gz (260 kB)
usbasp.2007-10-23.tar.gz (172 kB)
usbasp.2007-07-23.tar.gz (176 kB)
usbasp.2006-12-29.tar.gz (118 kB) Supports programmers with ATMega48 and ATMega8.
usbasp.2006-09-16.tar.gz (116 kB) New VID/PID!
usbasp.2005-11-14.tar.gz (175 kB)
usbasp.2005-07-03.tar.gz (166 kB)
usbasp.2005-04-21.tar.gz (169 kB)
Please refer to Readme.txt for details on building, installing and using USBasp.

Drivers

On Linux and MacOS X no kernel driver is needed. Windows requires a driver for USBasp. Please use this driver installation tool for Windows (see also: successful setup on Windows 10):
Zadig - USB driver installation made easy

Software

  • AVRDUDE supports USBasp since version 5.2.
  • BASCOM-AVR supports USBasp since version 1.11.9.6.
  • Khazama AVR Programmer is a Windows XP/Vista GUI application for USBasp and avrdude.
  • eXtreme Burner - AVR is a Windows GUI Software for USBasp based USB AVR programmers.

Hardware

Lc Technology Usbasp V2.0 Driver

Schematic


Partlist

PartnumberValueReichelt No
C14,7uRAD 4,7/35
C2100nX7R-5 100N
C3, C422pKERKO 22P
D1, D23V6 zenerZF 3,6
CON1USB-BUSB BW
CON210polWSL 10W
IC1ATmega8-16ATMEGA 8-16 (not programmed!)
JP1, JP22pol 2,54mmSL 1X36G 2,54
LED13mm LED greenLED 3MM 2MA GN
LED23mm LED redLED 3MM 2MA RT
Q112Mhz12,0000-HC49U-S
R1, R2681/4W 68
R32,2k1/4W 2,2k
R4, R5, R6, R72701/4W 270
R810k1/4W 10k
R9, R101k1/4W 1k
M1, M2JumperJUMPER 2,54GL SW
M3Socket 28SGS 28-S
M4CaseTEKO 10007
M5PCB-

User PCB layouts

Here is a list of tested PCB layouts. If you have designed your own PCB, please let me know.

usbasp_single_side.t3001.zip
by Thomas Fischl
Single-Side PCB, TARGET 3001! layout file
Size: 90x40 mm (optimized for case Hammond 1591ATBU)

lv_usbasp.tar.gz
by Pawel Szramowski (11/2007)
With Low-voltage front-end.
Single-Side PCB, EAGLE layout files, some SMD components

by Bernhard Walle
Double-Side PCB, EAGLE layout files, part list with order numbers for Reichelt.de and Conrad.de
Size: optimized for case Hammond 1591ATBU

http://thomaspfeifer.net/atmel_usb_programmer.htm
by Thomas Pfeifer
Single-Side PCB, PDF layout files, SMD components

by Tomasz Ostrowski
Single-Side PCB, PDF and EPS layout files, only four 0805 SMD parts, rest discrete components

USBasp_CH.zip
by Christian Heigemeyr
Single-Side PCB, with some SMD 0805 components, PDF-files
With additional buttons for reset and disconnection of the target

USBasp.sch, USBasp.pcb
ComponentSide.pdf, TopSide.pdf, Schematics.pdf
by Zhurov Pavel
Single-Side PCB, P-CAD 2002 format and PDF files
Crosspiece TXD and RXD are added for the ISP connector

usbasp_gr.rar
by J.A. de Groot
The board is single sided (EAGLE format), measures 3 by 8 cm and uses only regular components.

usbasb_mg.zip
by Matthias Görner
Single-Side PCB, eagle-format, with PS/PDF-files
integrated sockets for target chips ATmega8 and ATmega32

Tarball with layout
by Hannes Östlund
Doubleside-Side PCB, SMD components, very small

by Sergiy Bogdancev (01/2010)
3.3V version, ATMega48 only. Single-side PCB, ExpressPCB layout format + socket board for varies AVRs. Without future serial interface, chip initially must be programmed with another programmer.

Eaglefiles (sch/brd) and CAD case design (dxf)
by Hans Hafner, HTL Mössingerstrasse-Klagenfurt, Österreich, hans.hafner (at) htl-klu (dot) at
(01/2010)
CNC-milled case (DXF file available), Eagle layout, only a few SMD parts

Different USBasp versions: Easy to built non-smd, smd version and a very small USBasp
by Sven Hedin (01/2011)
Eagle files available.

USB Key AVR Programmer
by Fabio Baltieri (09/2011)
Very small USB key like dimensions. SMD parts.

AVR ISP Programmer
by Jaroslav Vadel (04/2012)
Small programmer. SMD parts.

Target project and PDFs (layout/schematics)
by Marius Schäfer (09/2013)

tinyUSBboard with USBasp-compatible firmware
by Stephan Bärwolf (04/2014)

USBasp on breadboard with socket for controller daughter boards.
by Fabian Hummel (11/2018)

Tjaart van Aswegen designed an SMD board: DIP TRACE and GERBER files.
by Tjaart van Aswegen (09/2019)

Feature rich (e.g. different voltage levels, integrated USB to serial converter, USB-C connector) USBasp compatible design. AVR Programmer Github project.
by Brian Pepin (12/2019)

USBasp with ZIF socket and through hole components.
by Bruno (04/2020)

USBasp board with additional 6pin header and selectable target supply (3.3V/off/5.0V).
by Marty E. (10/2020)

John included a 40 pin universal socket which takes 8, 14, 20 and 28 pin devices. He also added a versatile crystal oscillator with outputs of 1, 2, 4, 8 and 16 Mhz to clock the chips. There is also the standard 6pin ICSP connector and a user led connected to the MOSI pin.
by John P. (11/2020)

Links

http://www.obdev.at/products/avrusb/ Firmware-only AVR USB driver
http://libusb.sourceforge.net/ libusb
http://libusb-win32.sourceforge.net/ LibUsb-Win32
http://www.nongnu.org/avrdude/ AVRDUDE - AVR Downloader/UploaDEr
Support this project:or send me something from my Amazon wishlist.

The following instructions are from early 2007and are pretty outdated by now. They are still here for reference, butthey are not maintained anymore and very likely won't work with recentversions of MacOS anymore.

After having developed software for the AVR under Windows andLinux the only major plattform missing was MacOS X. Since werecently got a Mini Mac in our home office i decided to builda working development chain for MacOS X as well.

This page will tell you all the Mac specific stuff.It will not cover the basics of AVR programming. Pleaselook e.g. here,here or just ask google.

A simple AVR development chain usually consists of the following parts:

  • A compiler toolchain,
  • a hardware programming interface with
  • matching programming software and
  • a serial interface for debugging with
  • a terminal program.
Usbasp v3 driver

The compiler toolchain

If you want a powerful, free and portable compiler for the AVRyou'll end up with gcc. Fortunately, gcc is supporting the AVR cpu forquite some time now and e.g. the WinAVR toolchain for AVRdevelopment under windows is based on this compiler. Many people havealready ported these compilers to MacOS X incl. the finkproject and others.Unfortunately i had either trouble getting some parts to installproperly (fink didn't offer to install all the required libs) or thecompilers were just outdated versions and a long time ago updated tothe latest gcc version. I therefore tried my install_avr_gcc.sh script that i amusing to achieve the same under linux. This script has the advantageof being easily updated to use the latest compiler. Furthermore itinstalls the entire toolchain into /usr/local/avr which keepsthe setup seperated and you can easily remove everything for yoursystem without a trace just by deleting the entire tree under/usr/local/avr.

In order to have the script run successfully you'll needto have some applications installed on your system. Firstof all this is the XCode developmentsuite. This is necessary since the installation scriptneeds the gcc that comes with XCode to build the mac portof the avr-gcc. Furthermore the wget, bisonand flex tools are required to build the toolchain.You can get these three from the fink project as well.

Once you have all this set up, just run install_avr_gcc.sh from the command line. The script willfirst download all source code required and then start to buildeverything. You can now take a break as this will take some time.

Once the script is done, your new compiler is installed. Type/usr/local/avr/bin/avr-gcc to test-run it.

A demo program

A simple demo application (led-blink.tgz) is available to test your setup. It was meant to be used with a Atmega8 CPU. Just untar the archive and type makeblinky.hex to compile it.

The hardware programmer

Most cheap AVR programmers are little more than a cable that directly attaches to a PCsprinter port. Unfortunately todays Macs don't come with thenecessary parallel printer port and a standardUSB-to-printer-converter cable only works with printers but not withthis kind of adapter cables.

There are commercial USB solutions for this problem, but these areusually quite expensive. Luckily Thomas Fischl has developed his usbasp, a cheap do it yourselfUSB programmer that works under windows, linux and under MacOS X.

The programming software

Usbasp comes with patches for avrdude. You'll need the avrdude sourcecode. Then apply the patches from usbasp. Recent versions ofavrdude even include usbasp support out of the box and you might nothave to patch them at all. The usbasp enabled version of avrdude usesthe libusb to access the usbasb hardware. I therefore installed libusb formacos from the finkproject. Since the avrdude configure script didn't find libusbunder /sw/lib and /sw/include i made two symboliclinks from /sw/include/usb.h to /usr/include/usb.hand from /sw/lib/libusb.a to/usr/lib/libusb.a. Avrdude compiled fine afterwards. To testyour installation with our led-blink example just connect the usbaspto your Mac (no AVR required yet) and type make program. Ifyou end up with avrdude complaining that it can't read the fuses ofyour target everything went fine, the toolchain is working, the usbaspinterface is fine and avrdude can access it. You can now startdeveloping AVR based devices under MacOS X.

Debugging via RS232

Most AVR programs do some basic debugging output via RS232. But anRS232 interface is also lacking on the latest Macs. A standardUSB-to-RS232 converter cable will do fine and you just have to makesure that there are MacOS X drivers available for your cable. The OS-X driver forPL2303 will e.g. work for plenty of these cables. Finally you'llneed some terminal software like e.g. ZTerm tocommunicate via rs232.

Zadig Usbasp

Working in Xcode

This AVR toolchain is usually being used from the commandline by invoking make. Hereare some instructions telling you how to run everything inside Xcode.

Download the installation script

The current version was last updated by Bram Daams on 05/28/06, download it here.

Links

  • Thomas Fischls usbasp interface
  • AVR programming software avrdude
  • A freeware terminal program named ZTerm