What's the easiest (or best) method to have the Bus Pirate (not sure if I want v3.6a or v4) to communicate with a serial/uart device at 1.8v TTL level?
Thanks!
A high level on the Bus Pirate IO pin is maximum 0.8volts 2.65volts, so you 1.8v is out of spec. I might work with pull-up resistors and open drain outputs, but it would not be for certain and the maximum speed would be quite low.
http://dangerousprototypes.com/docs/Practical_guide_to_Bus_Pirate_pull-up_resistors
http://dangerousprototypes.com/docs/Mixed_voltage_interfacing_with_the_Bus_Pirate
These should explain how to do it.
The new hardware will have this covered though :)
Edited my reply because I misread the datasheet.
The new hardware will have this covered though :)
Do you mean that the Bus Pirate v4 would directly support 1.8v without additional hardware/components?
EDIT: I'm new to Bus Pirate but it looks like you might be talking about the Ultra v1c which isn't released yet?
The v4 uses the same PIC family of chips, it would have the same 0.8*vdd minimum specified high voltage on the IO pins.

This is actually an interesting problem to solve without a dual supply buffer like the 74lvc1t45 (which only comes in SMD packages). If you're comfortable prototyping in SMD that would be your best bet. Use one on each pin, set them opposite directions, and power one side from the bus pirate 3.3volt supply, and the other side from a 1.8 volt supply.
This is the same buffer we're using in the Ultra and it does solve all of these problems without anything extra :) You can use a buffer like this for the serial protocol because it is uni-directional. However for a bidirectional bus like I2C you need the FPGA on the Ultra to manage the pin directions on a per-bit basis.