Attiny 804 unable to program it

Hello,
Yesterday I tried uploading my code to a attiny 804 with my ftdi to serial adapter (real ftdi chip, no ch340) using the setup you can find here, ie: using a diode and a 470R. I soldered a board and it worked fine. Unfortunately I accidentally set the RESET pin as GPIO by accident, so I was unable to program it again later.
I then changed the chip, but even with the new one I get an error message:

Traceback (most recent call last):
  File "/Users/ilfuria/Library/Arduino15/packages/megaTinyCore/hardware/megaavr/2.4.2/tools/prog.py", line 282, in <module>
    main()
  File "/Users/ilfuria/Library/Arduino15/packages/megaTinyCore/hardware/megaavr/2.4.2/tools/prog.py", line 131, in main
    return_code = pymcuprog_basic(args, fuses_dict)
  File "/Users/ilfuria/Library/Arduino15/packages/megaTinyCore/hardware/megaavr/2.4.2/tools/prog.py", line 196, in pymcuprog_basic
    status = pymcu._start_session(backend,
  File "/Users/ilfuria/Library/Arduino15/packages/megaTinyCore/hardware/megaavr/2.4.2/tools/libs/pymcuprog/pymcuprog_main.py", line 544, in _start_session
    backend.start_session(sessionconfig)
  File "/Users/ilfuria/Library/Arduino15/packages/megaTinyCore/hardware/megaavr/2.4.2/tools/libs/pymcuprog/backend.py", line 359, in start_session
    self.programmer.setup_device(
  File "/Users/ilfuria/Library/Arduino15/packages/megaTinyCore/hardware/megaavr/2.4.2/tools/libs/pymcuprog/programmer.py", line 78, in setup_device
    self.device_model = get_nvm_access_provider(self.transport,
  File "/Users/ilfuria/Library/Arduino15/packages/megaTinyCore/hardware/megaavr/2.4.2/tools/libs/pymcuprog/nvm.py", line 42, in get_nvm_access_provider
    accessprovider = NvmAccessProviderSerial(transport, device_info, baud=frequency)
  File "/Users/ilfuria/Library/Arduino15/packages/megaTinyCore/hardware/megaavr/2.4.2/tools/libs/pymcuprog/nvmserialupdi.py", line 53, in __init__
    self.avr = UpdiApplication(port, baud, self.dut)
  File "/Users/ilfuria/Library/Arduino15/packages/megaTinyCore/hardware/megaavr/2.4.2/tools/libs/pymcuprog/serialupdi/application.py", line 79, in __init__
    datalink.init_datalink()
  File "/Users/ilfuria/Library/Arduino15/packages/megaTinyCore/hardware/megaavr/2.4.2/tools/libs/pymcuprog/serialupdi/link.py", line 44, in init_datalink
    raise PymcuprogError("UPDI initialisation failed")
pymcuprog.pymcuprog_errors.PymcuprogError: UPDI initialisation failed

I'm now trying directly via breadboard but to no avail. The signal on the UPDI line is present and it's a clean square wave, but IDK what I can be done wrong (no reset pin reprogramming this time).
Can you help plz? What can I proved you to help you help me?

Cheers

The Attiny804 has no native reset pin but you can disable the UPDI pin.

Did you disable that?

In that case; I played with that a little while ago and you can activate it again by applying a short 12V pulse

Hi, thanks for your reply.
If I have disabled it it's been done unintentionally. Maybe some of the libraries I use, idk I have made sure I stayed clear of pin 10.

I'll try and see your link thanks

Hi, nothing changed unfortunately, not even with the 12V pulseā€¦

The problem with the error message you posted is that unfortunately all it means is "Something went wrong, we got no reply from the target" and that's all it can tell you.

Now is that because there's a cold solder joint somewhere?
Is the diode a schottky? A fairly small signal one (the glass BAT series has a bunch of appropriate schottky diodes) Put a scope on the UPDI pin (ie, where it goes to the chip) if you have a scope. Seeing that scope trace will probably tell me exactly what's wrong.

Thank you, actually cleaning the tiny breakout board popped off a cold solder joint or two. After carefully re/soldering and cleaning everything works fine

Thanks

Well that'll do it.

How did you do the original soldering? There is a problem with your process if you're failing to solder SOIC-14, those should have 100% yield.

With an iron: Be sure to add flux (recommend: 1544 Kester liquid (it dries to be hard like the flux from wire solder, and doesn't need to be removed, but comes off real easy with rubbing alcohol or RF741 gel flux, doesn't need to be removed, technically, but if you own a pet it most certainly does or else it will start looking like a small furry animal itself as the sticky flux picks up fur (only way I have found to get the fur off is to burn the fur off with a quick flash from a butane torch, and then scrub it with rubbing alcohol to clean off the sticky stuff and debris - better to wash off the sticky flux residue before it picks up cat hair). Both come from from CML supply, and are the two best fluxes I have worked with. You can also use el cheapo chinese flux. The vast majority of the rest are equally effective to each other as fluxes (but worse than King Kester's rosin containing formulations) - some smell worse or better, splatter more or less, are easier or harder to clean. About 5-10% of the non-kester fluxes (usually ones boasting of special characteristics like easy cleaning or transparency) are slightly worse than the average fluxes. Finally a rare few fluxes arrive as total garbage. Sometimes counterfeit Amtech (all the amtech flux on aliexpress is counterfeit or past use-by date), it's $20 a tube or something, you're not gonna find the genuine article for 1.50) is "scamtech" flux, which look and feels like flux, but provides no fluxing activity whatsoever.

The technique you want to grab a youtube video of is drag soldering

Reflow: What kind of solder are you using? Is your reflow profile getting hot enough? Most cheap reflow ovens, regardless of what thy claim, can't do SAC305 lead free - they almost can, but they don't fully reflow the joints and lead to poor connections. SnPb on the other hand unless you got absolute trash solder (I have gotten some of that - only once, less than any other solder alloy, though. It was distributed under the "conduction" name. Never buy any of their solder, it is miserably poor. Mo) . But yeah make sure your reflow oven is getting hot enough if you're reflowing.

Reflow or hotplate: Make sure the stenciling is done with care, and with solder paste that hasn't gone bad (it happens), the temperature is appropriate, and that the joints are fully reflowing.

Hot air? Don't use hot air, or use hot air and an iron. Hot air is unnecessary for SOIC-14. I've found it most useful in combination with an iron or a hotplate.

What you do NOT want to do is any technique where you solder each pin individually. That's why I tried to do when first using SOIC packages, and I constantly had problems with cold solder joints Drag soldering is magic

Hi, basically the problem was soldering while being in a hurry and dooing a sloppy job on a previously used board. Thanks for the flux tips though!

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.