I'm flashing an ATTiny84 using my Arduino Uno and everything works except the SoftwareSerial. I'm using the 8MHz internal clock (not calibrated but low baud rates would be fine since the interface will only be used for debugging). With some baud rates, the Arduino serial interface on my Mac receives some gibberish data and with others nothing at all. The TX led on the Arduino blinks when data is being sent btw.
I tried the same thing with an ATTiny85 and for some reason it does only work when VCC is not connected. I haven't tried it with an 84 yet, but I guess it's not that much different. Hope that helps.
MontySylver:
I tried the same thing with an ATTiny85 and for some reason it does only work when VCC is not connected. I haven't tried it with an 84 yet, but I guess it's not that much different. Hope that helps.
What do you mean by not connecting VCC? Two different power supplies for the two microcontrollers? Because at the moment the AtTiny receives power from the Arduino 5V rail.
I used an ATTiny85 to send serial data and an Arduino Uno to receive it. First I got some strange gibberish too until I pulled the ATTiny's VCC out by accident. Without VCC on the ATTiny it sent what I wanted, after reconnecting VCC it was gibberish again. There were no pins except Tx, Rx and GND connected.
EDIT: Don't do this, a 100nf capacitor between the signal line and GND should do the trick.
I used the current version (15) which should work as well, shouldn't it? But I switched back to http://hlt.media.mit.edu/?p=1695 after it didn't work.
MontySylver:
I used an ATTiny85 to send serial data and an Arduino Uno to receive it. First I got some strange gibberish too until I pulled the ATTiny's VCC out by accident. Without VCC on the ATTiny it sent what I wanted, after reconnecting VCC it was gibberish again. There were no pins except Tx, Rx and GND connected.
Not sure how this is supposed to work without power but just to test everything I tried it as well and the AtTiny stopped transmitting after pulling out the VCC cable.
Just tried it with some more stuff connected, it seems that the whole disconnecting VCC thing only works when the ATTiny does only transmit serial data and nothing else is supposed to happen in the sketch. Reading serial data works as it should.
The Arduino must get it's power from somewhere else in your setup, otherwise it wouldn't work. Could you post a picture/schematic?
The data I'm receiving ist 0xFF every time if that helps someone to help me. I used a Processing sketch to display the actual binary data because the Arduino serial monitor only prints this character: ÿ
With some baud rates, the Arduino serial interface on my Mac receives some gibberish data and with others nothing at all. The TX led on the Arduino blinks when data is being sent btw.
No, I'm just trying to use the Arduino board as a serial interface because I don't have a separate one. The 84's TX pin goes to the RX pin on the Arduino Uno R3 board which makes the TX led blink on the Arduino board. I also connected a 10µF cap between RESET and GND on the Arduino and leave the 4 pins used for programming the 84 connected during testing. The only thing I change during programming is disconnecting the 84's serial line temporarily.
daywalkerdha:
No, I'm just trying to use the Arduino board as a serial interface because I don't have a separate one.
That is what I was trying to ask. Got it.
The 84's TX pin goes to the RX pin on the Arduino Uno R3 board which makes the TX led blink on the Arduino board.
I think that's correct.
I also connected a 10µF cap between RESET and GND on the Arduino
The Arduino processor has to be removed (not recommended) or forced into reset (recommended). Remove the 10µF capacitor. Connect a jumper between RESET and GND. (Actually, you can probably leave the capacitor in place.)
As you've discovered, the Arduino processor interferes with serial communications. In addition, unless the Arduino processor is essentially removed from the circuit, it is possible to damage one or both processors (some current limiting resistors will protect both sides).
If you are interested, I have a version of the ArduinoISP sketch that makes what you are trying to do much simpler.
I already ordered a zif-header to be able to remove the 328 easily and without damage.
What does your modified sketch do to make it simpler and would it allow me to program the external micro and still get serial data without changing the connections every time?
daywalkerdha:
What does your modified sketch do to make it simpler and would it allow me to program the external micro and still get serial data without changing the connections every time?
The sketch provides a "serial relay" which has two on-wire options... the standard TTL-serial and something I call Knock-Bang. The Knock-Bang protocol is designed specifically for debugging a tiny processor when using an Arduino as a programmer. It's more robust and faster than TTL-serial.
In either case, you don't need to fiddle with the wiring. MISO (one of the programming lines) is used for serial communications.
Ok, I couldn't wait for the zif socket;) Once I removed the Arduino and plugged the Serial cable into the TX(not RX as before) pin on the Arduino board, everything worked just fine! So it seems as if the Arduino blocks the communication if its inserted and your library should be able to solve my problem.
As published, it is a drop-in replacement for the ArduinoISP sketch. Please download it and try it. At this point, the only noticeable difference should be shorter upload times. I will add more instructions later (probably tonight).