Skip to content

Support for ATtiny816 / 1-series ATtiny #131

@chris-b-tanner

Description

@chris-b-tanner

I am struggling to get the ATtiny816 to respond as a OneWire device to an ESP32 master. Running the DS18B20 example.

Background info:
The bus and master physically work. I have another real DS18B20 on the same OneWire bus and it's seen fine by the host (an ESP32); the reset pulse from the ESP32 looks a strong low on a 'scope. I've tested the ATtiny without this separate device on the bus as well.
I can run the DS18B20 emulation code fine on an ATtiny85, so it's something related to the ATtiny816.
4k7 pullup is on the ESP32 end.
I'm using PlatformIO, but I don't suspect that makes a difference.
Nothing else is hooked up to the ATtiny apart from a 1uF cap from VCC to GND and the debug LED.
The DS18B20 emulation code runs on the ATtiny816, with the LED/blink at exactly 1s, but nothing on OneWire.
I've confirmed the OneWire pin I'm using on the ATtiny (10 / PB4) can be manipulated fine from the code, and it receives the low pulse into the calibration code.
The ATtiny816 runs the calibration code with a serial output, but I had to edit to while (repetitions++ < 5) in order for it to come out of the other end with a value_ipl (which strangely gives me 11 not 13 which is the default for the AVR)
No response on OneWire for IPL at either 11, 12 or 13

I have set fuses to use both 16Mhz and 20Mhz internal clock.

OneWireHub version 3.0.0
PlatformIO config:

platform = atmelmegaavr
platform_packages = platformio/tool-avrdude
board = attiny816
build_flags = -DCLOCK_SOURCE=6
framework = arduino
board_build.f_cpu = 16000000L
upload_protocol = serialupdi
lib_deps = orgua/OneWireHub

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions