"Arduino is an open-source electronics prototyping platform based on flexible, easy-to-use hardware and software. It's intended for artists, designers, hobbyists, and anyone interested in creating interactive objects or environments."
How you can download the appropriate arduino-ide version for you will be explained in the following subsections. Before you can start using arduino-ide after downloading and extracting it, you have to extend the list of know boards to arduino.
Therefore all you need to do is to extract this zip-file (or this tgz) into your arduino directory. (Old version before Jan. 2017: zip / tgz)
This is the new and recommended way to use tinyUSBboard within arduino IDE.
Please only use stable mainline Arduino IDE version 1.x.. (Download URLs are below.)
Borddescriptions in Arduino 1.8 aren't final and only available as a draft at the moment. The old way was to copy this text below into "/arduino-####/hardware/arduino/boards.txt". (Or to use this patch.)
Please also note the different PIN-names (compared to the datasheet) in arduino. (See more)
Here you can download the arduino-ide for windows.
In order to program appropriate firmwares for tinyUSBboard, you can choose out of many programming languages.
If you want to use famous C language you might want to do this via open source avr-libc and its chain of tools.
Since the toolchain just generates the binary-data, you still need a piece of software to bring it into the MCU.
Because there are some major differences between the available platforms, the following subsections will explain some tools doing the job...
If you want to have some empty skeleton to start with your firmware, you might want to look at my avrskeleton at github.
(Just define environment variable "AVR8TOOLCHAINBINDIR" with the PATH to your toolchain binaries and the Makefile will do everything else.)
Atmel offers directly two precompiled avr-libc toolchain versions for linux.
One LZMA recompressed version for 32bit systems is available here, and another for 64bit here.
At your raspberry pi (using raspbian), you can use this build.
For flashing the data into tinyUSBboard you can use AVRDUDE.
(avrdude -c usbasp -p atmega8 -D -U flash:w:main.hex)
For using tinyUSBboard with Windows, you first have to install some usb-drivers.
Even there is also an avr-libc port (avr8-gnu-toolchain-installer-220.127.116.11-win32.any.x86.exe) available for Windows, you might try out Atmels AVR Studio
Since the new toolchain avr8-gnu-toolchain-installer-18.104.22.168-win32.any.x86.exe is without an installer and thus harder to setup/use, you might want to use older avr-toolchain-installer-22.214.171.1243-win32.win32.x86 available from the mirrors instead.
Using tinyUSBboard with Mac is -->NOT<-- completly untested anymore. Thanks to HE for the pictures!
Hoewever, the more reports the better...
Under Mac you can try (use?) CrossPack for AVR® Development.
It runs on Mac OS X 10.6 or higher and promises to be similar to AVR Studio on Windows.