Currently, the dtv2ser device provides a RS232 interface and you need an external usb2serial converter to connect it to a modern host computer. So why not directly include the usb2serial conversion on the dtv2ser board. I found the FT232R chip that fullfills that task and is not too expensive (and also Reichelt my local parts dealer has it available 😉
Have a look at my dtv2ser+usb prototype that will be presented in release 0.2 of dtv2ser…
Here is the setup of the new prototype: I used the old dtv2ser prototype board and made the MAX232 serial converter connectable to the AVR via a small cable with pin connectors. They were now disconnected and the FT232R was connected directly. By reconnecting the MAX you can fully establish the old behavior of the dtv2ser circuit.
In the middle you can see the FT232R chip (only available in a SMD case) I soldered on a small board to have “normal” DIL pins for my prototype board. That board mainly provides connectors to the internal serial interface on the left and the USB connector (right). Additionally, two LEDs are available for TxD and RxD activity.
This is a closeup of the “old” dtv2ser board with all connectos labeled. You can see the MAX232 based serial interface on the left.
Note the jumpers that allow to switch the power for the MAX (top left) and the other one (top right) that controls wether the DTV or the USB (via RT232L) powers the circuit. Drawing power from USB for dtv2ser+usb is a good choice since most users don’t have a 5V power line connected to the joystick port.
On the lower left is a connector field for the three LEDs of dtv2ser, namely Ready (green), Transfer (yellow) and Error (red) LED. On the lower right is a 10 pin connector for the ISP to program the flash of the AVR MCU.
This is the RT232L module: On the left side is a connector with the serial lines at 5V level. They are connected to the dtv2ser as a replacemenet for the MAX based serial I/O. Additionally, this connector provides GND and the 5V power supply taken from the USB bus.
On the right there is the USB connection and an extra pin for Reset and Power signals. The top header provides the TxD and RxD acitivity signals for two LEDs.
Unfortunately, the old case is too small for dtv2ser and the RT232L board. So I bought a new one with enough space. Now both boards fit in and I labeled all connectors.
Note the new Reset button. Pressing this button allows you to reset the MCU and it was added to the dtv2ser schematic as it was missing in release 0.1. Additionally, a bootloader switch was introduced.
The new firmware comes with a bootloader that allows to directly flash a new firmware via the serial interface. You do not need an ISP anymore to flash your updates. Toggling the switch allows the device to enter the bootmode after a reset. You then flash the new firmware from your host computer and toggle the switch again and after a reset you are back in dtv2ser mode. In dtv2ser mode the green Ready LED is lighted and in bootloader mode the orange LED stays on.
Have a look inside the new case… the dtv2ser board is on the left side and the usb board on the right. There is still room left for further extensions (currently filled simply with cardboard) 😉
Next Prototype
My first prototype works really well and so I started the next stage of development: design a small (i.e. SMD based) board that integrates the AVR MCU and the USB controller.
Here is the schematic drawn with the Free edition of Eagle. The both connectors on the board are the DB9 female connector to directly connect to the DTV joystick port and on the other side the USB connector. The other on board components are five LEDs: 3 for dtv2ser and 2 for the RT232L TxD and RxD activity.
The two pin heads are for the ISP to program the flash initially and the other one selects the power source of the circuit. The ISP connector has additional functionality: one pin pair can be jumpered to enable the bootloader mode. Another pin pair can be used to add a reset button. Finally, a pin pair can be used to feed in external power if desired.
After a lot trial and error, here it is: my first board design done with Eagle. And yes, I started with a SMD one 😉 The board is 42×24 mm in size and really very small (see the connectors for a size comparison). It should fit in a small case and really look nice…
Yesterday I ordered a small amount of prototype boards that will be manufactured in the next week(s). Now I am wating to get my hands on my first real dtv2ser+usb board to see if my schematics is correct and if all works as I expected. So stay tuned….