Go Down

Topic: FT232L vs Tiny2313 minimal Cost USB interface (Read 3 times) previous topic - next topic


Yes i did research all this before coming to this point. I also have Mega8 in the plans as it will just Cost about 20 cents more vs Tiny2313.I also have a Mega8 HID implementation with me. USB->Serial . The Serial > USB cables cost a little  more than FT232L even when bought in quantities of 100's.

Also the thing is SMD increases PCB costs and The FT233L is itself expensive. Other wise its a very good solution. Also im planning to buy some Dip soldering machine to further lower costs , DIP soldering does not support SMD.

Our target is to Build a Affordable Robotics Platform for under USD 20 which would include everything. And the Serial Boards are to be made in around USD 4 - 6 and USB ones around USD 7 - 9. These costs include minimal profit.

We are trying to keep costs minimal, As in India for my target audience USD 20 is a big amount.

So for the USB board im searching for decent yet cheap alternatives for USB->Serial.


Here is a full usb implementation for avr's include atiny2313 with Linux, Mac OS X and Windows support
I have never used it, but seems nice.

I can understand the smd aspect, but an ftdi chip isnt that expensive?, with a atiny you need also other parts to make it work, zeners, diodes etc.
you can get a ft232rl for $2.50 (100)


Jun 13, 2009, 04:31 am Last Edit: Jun 13, 2009, 04:34 am by technik3k Reason: 1
Vikas, it would be interesting to see your existing board and/or cost of the parts that is available in India.

Also, what is your power consumption objectives? Do you plan to run it from USB or wall power all the time or you need to support battery operation as well?

In case if you don't care about power, then the cheapest option would be to implement USB COM port in the bootloader of the main chip itself. If it has 16k of flash or more it is technically feaseable, but will cost you a lot of Arduino compatibility as you would have to maintain your own bootloader and it would have to keep tight control of timing and interrupts. So that is, probably, not worth it. (I guess an Atmel microcontroller with built-in USB would be too expensive).

Another consideration is that FT232 can do both  USB-to-TTL and be used as ISP programmer via bitbanging on its GPIOs.

To have similar functionality you will need to have two 2313s as it has barely enough space for either of those functions.

If you step up to a larger chip with 4k of flash you can implement both and select them externally by a jumper on one of its pins.

ATmega48 will cost slightly more than 2313 but will be easier to program.

ATtiny44A is cheaper than 2313 (1.22 vs 1.31 for 100 on Digikey) but it has only half-duplex UART on board.

If you are not afraid to do tricky AVR assembly programming, presumably, you could get 20MHz ATtiny44A and implement SoftSerial along side with USB CDC and, maybe, still have few bytes left for some other functionality.

If you are planning to put both chips on the same board then ATtiny44A could drive the crystal and feed the clock to ATmega chip and you could even free up XTAL2 pin to be and extra digital I/O pin.


The idea is to keep costs to minimum , while giving a decent USB to Serial connector. The The system will be powered from batteries as its for a robot and USB->Serial is just for loading code into the board.

For now Im planning a Mega8 based Serial to USB after local checkup 2313 vs  Mega8 Difference is just 10 cents , so i think its better to go with it. And i also have a implementation which i had bought from someone which works fine -


The cost shown is about 9 USD , but i think i can get the whole thing with cables done for under USD 2 ( Production Cost ).

Local Availability of IC's is also an issue in India as only Tin2313 is available for Tiny series. Mega8 is the most easily available.

As for OS incompatibility, Im only worried about Windows as 99% target audience use that.


It's good to hear that you can step up to ATMega8 processor for less than 5% cost increase, because 8k chip can be programmed to do so much more and you can add more value to your product.

If you would like to share more details about your project on this forum you might get a few suggestions and some you could find useful.

For instance, what is the main chip you are using for the board?

What are the other parts that contribute significantly to the cost (motor drivers, regulators, connectors, crystals, etc...)?

What are the PCB costs, i.e. setup fee, area fee, per hole drill costs, board cut costs (i.e. rectangular vs odd shapes)?

What are your general battery power objections?

How close do you want to stay compatible with Arduino (software only or pin layout as well)?

I bet many of us have seen some crazy to ingenious ways of cutting production cost and increasing product value at the same time.

Figuring out lowest production cost is a great challenge and fun for any engineer, and it sure is to me :)

For example:

1. If PCB area cost is cheap and it is cut for you, just lay copper traces for USB connection on the edge of the board with proper cutouts and you don't have to solder USB connector.

2. If you choose ATMega8 chip to be your USB-to-TTL bridge and you are going to sell it in every robotic kit, then put it on the same board and avoid having second board and any connecting wires. Just run RX/TX/Reset lines via jumper connector or wires, so that if necessary, end users could solder in header and connect either side to something else.

3. Once both chips are on the same board, they could share the crystal and it will free XTAL2 pin to be an extra I/O line  on the main chip.

4. In general once you commited yourself to having two microcontrollers on the board it opens up whole lot of possibilities. You just have to make PCB design open enough that they could be realized without too much hassle.

5. ATmega8 chip could be have code to be ISP programmer as well, just make traces and  holes for optional connectors.

6. ATmega8 chip can do TV video out. Again if PCB area cost is cheap you could leave a small prototyping area for several resistors and diodes and it could be figured out later if this thing is doable or not.

7. Presumably, at the later time special code could be developed for the ATmega8 USB-to-TTL chip that will on reset talk to Arduino IDE pretending it is a main chip's bootloader and then program the second chip over SPI. This frees up extra 2k of memory on the second chip. Is it usefull? I don't know, but posibility of being able to do something like that adds value to the platform.

8. When USB-to-TTL is not used ATMega8 could serve as I/O extender to the main chip either via UART, I2C, or SPI bus. And with proper software mods even while doing USB-to-TTL. This adds value to the entire platform.

9. What is your mechanical platform? Mine is Lego. Doing something as simple as drilling m3 holes that are both on 10mm and 8mm grid (for example 40mm apart) make it instantly Lego friendly. If your motor drivers could pull 0.6A at 9V you electrically compatible as well.


Go Up