There are a couple of good solutions for programming the ATtiny10 Microcontroller like ATtiny10 Resources where an Arduino was used to program the ATtiny. However, for me the solution of Darrel Tan Programming the ATtiny10 was most useful for me.
The support for AVRdude was already added, so it was relatively easy to implement. My chinese FTDI breakout module lack of the RTS signal. It was not so easy to add one by soldering a wire to PIN3.
Extending the config file
The diff for /etc/avrdude.conf
--- /etc/avrdude.conf~ 2014-03-14 16:30:39.000000000 +0100
+++ /etc/avrdude.conf 2015-03-31 17:14:13.440954659 +0200
@@ -1376,0 +1377,14 @@
+# unknown (dasa in uisp) http://irq5.io/2010/07/15/programming-the-attiny10/
+# reset=rts sck=dtr mosi=txd miso=cts
+
+programmer
+ id = "dasaftdi";
+ desc = "FTDI serial port banging, reset=rts sck=dtr mosi=txd miso=cts";
+ type = "serbb";
+ connection_type = serial;
+ reset = ~7;
+ sck = ~4;
+ mosi = ~3;
+ miso = ~8;
+;
The /etc/avrdude.conf needs to be patched with following command
patch -sp1 < /path/to/diff
Successful results
By executing
$ avrdude -p t10 -c dasaftdi -P /dev/ttyUSB0 -vv -q
I was finally successful to see it working:
avrdude: Calibrating delay loop... calibrated to 586 cycles per us
doing MOSI-MISO link check
MOSI-MISO link present
avrdude: AVR device initialized and ready to accept instructions
bitbang_cmd_tpi(): [ 72 ] [ 00 ]
bitbang_cmd_tpi(): [ F3 00 ] [ ]
bitbang_cmd_tpi(): [ 68 C0 ] [ ]
bitbang_cmd_tpi(): [ 69 3F ] [ ]
bitbang_cmd_tpi(): [ 24 ] [ 1E ]
bitbang_cmd_tpi(): [ 24 ] [ 90 ]
bitbang_cmd_tpi(): [ 24 ] [ 03 ]
avrdude: Device signature = 0x1e9003
avrdude done. Thank you.
Thank you too. Great work!