; *************************************************************************** ; copyright : (C) 2026 by Martin Preuss ; email : martin@libchipcard.de ; ; *************************************************************************** ; * This file is part of the project "AqHome". * ; * Please see toplevel file COPYING of that project for license details. * ; *************************************************************************** ; *************************************************************************** ; ; AtTiny861 ; -------- ; PB0 1 20 PA0 COM_DATA ; PWM1 PB1 2 19 PA1 ; Tacho1 PB2 3 18 PA2 COM_CLK ; PWM2 PB3 4 17 PA3 LED ; VCC 5 16 AGND ; GND 6 15 AVCC ; Tacho2 PB4 7 14 PA4 ; PWM3 PB5 8 13 PA5 ; Tacho3 PB6 9 12 PA6 ; Reset PB7 10 11 PA7 ; -------- ; ; *************************************************************************** .equ BOOTLOADER_ADDR = 0xd00 .equ FIRMWARE_VARIANT_BOOT = 0 .equ FIRMWARE_VARIANT_TEMP_WINDOW = 1 .equ DEVICEINFO_ID = 'N' .equ DEVICEINFO_VERSION = 32 .equ DEVICEINFO_REVISION = 0 ; --------------------------------------------------------------------------- ; LED module ; green LED .equ LED1_DEFAULT_ONTIME = 1 ; shorter .equ LED1_DEFAULT_OFFTIME = 99 ; longer .equ LED1_DEFAULT_REPEATS = 0 ; continous .equ LED1_DDR = DDRA .equ LED1_PORT = PORTA .equ LED1_PORTIN = PINA .equ LED1_PINNUM = PORTA3 ; --------------------------------------------------------------------------- ; COM module .equ COM_BIT_LENGTH = 52000 ; 104000ns=9600, 52000ns=19200, 26000ns=38400 .equ COM_HALFBIT_LENGTH = 26000 ; see https://de.wikipedia.org/wiki/Universal_Asynchronous_Receiver_Transmitter .equ COM_DATA_DDR = DDRA .equ COM_DATA_INPUT = PINA .equ COM_DATA_OUTPUT = PORTA .equ COM_DATA_PIN = PORTA0 .equ COM_CLK_DDR = DDRA .equ COM_CLK_INPUT = PINA .equ COM_CLK_OUTPUT = PORTA .equ COM_CLK_PIN = PORTA2 .equ COM_IRQ_ADDR_CLK = PCMSK0 .equ COM_IRQ_BIT_CLK = PCINT2 ; bit 2 in PCMSK0 .equ COM_IRQ_GIFR_CLK = PCIF .equ COM_IRQ_GIMSK_CLK = PCIE0 ; MultiFan module (definitions for new IO module) .equ MULTIFAN_FANS = 3 .equ MULTIFAN_PWM_DDR = DDRB .equ MULTIFAN_PWM_OUTPUT = PORTB .equ MULTIFAN_TACHO_DDR = DDRB .equ MULTIFAN_TACHO_INPUT = PINB .equ MULTIFAN_PWM1_PIN = PORTB1 .equ MULTIFAN_TACHO1_PIN = PORTB2 .equ MULTIFAN_PWM2_PIN = PORTB3 .equ MULTIFAN_TACHO2_PIN = PORTB4 .equ MULTIFAN_PWM3_PIN = PORTB5 .equ MULTIFAN_TACHO3_PIN = PORTB6