diff --git a/avr/devices/0BUILD b/avr/devices/0BUILD
index 99d2668..be0570c 100644
--- a/avr/devices/0BUILD
+++ b/avr/devices/0BUILD
@@ -28,20 +28,15 @@
c02
n14
n16
- n19
- n20
n21
- n22
- n23
n24
n25
n26
n27
- r04
r05
r06
- t03
s03
+ t03
diff --git a/avr/devices/n00/.gitignore b/avr/devices/n00/.gitignore
deleted file mode 100644
index 8e0618c..0000000
--- a/avr/devices/n00/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-*.eep.hex
-*.obj
diff --git a/avr/devices/n00/0BUILD b/avr/devices/n00/0BUILD
deleted file mode 100644
index aaaaf7e..0000000
--- a/avr/devices/n00/0BUILD
+++ /dev/null
@@ -1,52 +0,0 @@
-
-
-
-
-
-
-
- -I $(builddir)
- -I $(srcdir)
- -I $(topsrcdir)/avr
- -I $(topbuilddir)/avr
-
-
-
-
- n00_main.asm
-
-
-
-
-
-
-
-
-
-
- -I $(builddir)
- -I $(srcdir)
- -I $(topsrcdir)/avr
- -I $(topbuilddir)/avr
-
-
-
-
- n00_boot.asm
-
-
-
-
-
-
-
-
-
-
- n00_defs.asm
-
-
-
-
-
-
diff --git a/avr/devices/n00/n00_boot.asm b/avr/devices/n00/n00_boot.asm
deleted file mode 100644
index 209cd84..0000000
--- a/avr/devices/n00/n00_boot.asm
+++ /dev/null
@@ -1,143 +0,0 @@
-; ***************************************************************************
-; Source file for base system node on AtTiny 84
-;
-; This is for the maintenance system (i.e. the flash loader).
-;
-; All definitions and changes should go into this file.
-; ***************************************************************************
-
-.equ clock=1000000 ; Define the clock frequency
-
-.nolist
-.include "include/tn84def.inc" ; Define device ATtiny84
-.list
-
-.include "./n00_defs.asm"
-.include "defs_all.asm"
-
-
-
-; ***************************************************************************
-; defines
-
-; ---------------------------------------------------------------------------
-; generic
-
-.include "common/utils_wait.asm"
-.include "modules/com2/defs.asm"
-.include "modules/comproto/defs.asm"
-
-
-
-; ---------------------------------------------------------------------------
-; firmware settings
-
-.equ FIRMWARE_VERSION_MAJOR = 0
-.equ FIRMWARE_VERSION_MINOR = 0
-.equ FIRMWARE_VERSION_PATCHLEVEL = 1
-
-
-
-; ---------------------------------------------------------------------------
-; LED
-
-.equ LED_DDR = DDRA
-.equ LED_PORT = PORTA
-.equ LED_PIN = PINA
-.equ LED_PINNUM = PORTA3
-
-
-; ***************************************************************************
-; code segment
-
-.cseg
-.org 0x0000
-
-
-
-; ---------------------------------------------------------------------------
-; Reset and interrupt vectors
-; rjmp start ; Reset vector
- rjmp main ; Reset vector
- reti ; EXT_INT0
- reti ; PCI0
- reti ; PCI1
- reti ; WATCHDOG
- reti ; ICP1
- reti ; OC1A
- reti ; OC1B
- reti ; OVF1
- reti ; OC0A
- reti ; OC0B
- reti ; OVF0
- reti ; ACI
- reti ; ADCC
- reti ; ERDY
- reti ; USI_STR
- reti ; USI_OVF
-
-
-devInfoBlock: ; 12 bytes
-devInfoManufacturer: .db 'A', 'Q', 'U', 'A'
-devInfoId: .db 'N', 0
-devInfoVersion: .db 0, 1 ; version, revision
-firmwareVersion: .db FIRMWARE_VARIANT_BOOT, FIRMWARE_VERSION_MAJOR
- .db FIRMWARE_VERSION_MINOR, FIRMWARE_VERSION_PATCHLEVEL
-
-firmwareStart: rjmp main ; will be overwritten when flashing
-
-
-
-; ***************************************************************************
-; main code
-
-
-.org BOOTLOADER_ADDR
-
-
-main:
- rjmp bootLoader ; this routine is in modules/flash/proto.asm
-
-
-
-
-; ***************************************************************************
-; includes
-
-.include "common/utils_wait_fixed.asm"
-.include "common/utils_copy_from_flash.asm"
-.include "common/utils_copy_sdram.asm"
-
-.include "modules/flash/defs.asm"
-.include "modules/flash/eeprom.asm"
-.include "modules/flash/io.asm"
-.include "modules/flash/io_attn.asm"
-.include "modules/flash/io_bitbang.asm"
-.include "modules/flash/flash1p.asm"
-.include "modules/flash/flashprocess.asm"
-.include "modules/flash/wait.asm"
-.include "modules/bootloader/main.asm"
-.include "modules/network/msg/defs.asm"
-.include "modules/network/msg/crc.asm"
-
-
-
-systemSetSpeed:
-.if clock == 8000000
- ldi r16, (1<
-
-
-
-
-
-
- -I $(builddir)
- -I $(srcdir)
- -I $(topsrcdir)/avr
- -I $(topbuilddir)/avr
-
-
-
-
- n06_main.asm
-
-
-
-
-
-
-
-
-
-
- -I $(builddir)
- -I $(srcdir)
- -I $(topsrcdir)/avr
- -I $(topbuilddir)/avr
-
-
-
-
- n06_boot.asm
-
-
-
-
-
-
-
-
-
-
- n06_defs.asm
-
-
-
-
-
-
diff --git a/avr/devices/n06/n06_boot.asm b/avr/devices/n06/n06_boot.asm
deleted file mode 100644
index cf83e97..0000000
--- a/avr/devices/n06/n06_boot.asm
+++ /dev/null
@@ -1,142 +0,0 @@
-; ***************************************************************************
-; Source file for base system node on AtTiny 84
-;
-; This is for the maintenance system (i.e. the flash loader).
-;
-; All definitions and changes should go into this file.
-; ***************************************************************************
-
-.equ clock=1000000 ; Define the clock frequency
-
-.nolist
-.include "include/tn84def.inc" ; Define device ATtiny84
-.list
-
-.include "./n06_defs.asm"
-.include "defs_all.asm"
-
-
-
-; ***************************************************************************
-; defines
-
-; ---------------------------------------------------------------------------
-; generic
-
-.include "common/utils_wait.asm"
-.include "modules/com2/defs.asm"
-.include "modules/comproto/defs.asm"
-
-
-
-; ---------------------------------------------------------------------------
-; firmware settings
-
-.equ FIRMWARE_VERSION_MAJOR = 0
-.equ FIRMWARE_VERSION_MINOR = 0
-.equ FIRMWARE_VERSION_PATCHLEVEL = 1
-
-
-
-; ---------------------------------------------------------------------------
-; LED
-
-.equ LED_DDR = DDRA
-.equ LED_PORT = PORTA
-.equ LED_PIN = PINA
-.equ LED_PINNUM = PORTA3
-
-
-; ***************************************************************************
-; code segment
-
-.cseg
-.org 0x0000
-
-
-
-; ---------------------------------------------------------------------------
-; Reset and interrupt vectors
-; rjmp start ; Reset vector
- rjmp main ; Reset vector
- reti ; EXT_INT0
- reti ; PCI0
- reti ; PCI1
- reti ; WATCHDOG
- reti ; ICP1
- reti ; OC1A
- reti ; OC1B
- reti ; OVF1
- reti ; OC0A
- reti ; OC0B
- reti ; OVF0
- reti ; ACI
- reti ; ADCC
- reti ; ERDY
- reti ; USI_STR
- reti ; USI_OVF
-
-
-devInfoBlock: ; 12 bytes
-devInfoManufacturer: .db 'A', 'Q', 'U', 'A'
-devInfoId: .db DEVICEINFO_ID, 0
-devInfoVersion: .db DEVICEINFO_VERSION, DEVICEINFO_REVISION ; version, revision
-firmwareVersion: .db FIRMWARE_VARIANT_BOOT, FIRMWARE_VERSION_MAJOR
- .db FIRMWARE_VERSION_MINOR, FIRMWARE_VERSION_PATCHLEVEL
-
-firmwareStart: rjmp main ; will be overwritten when flashing
-
-
-
-; ***************************************************************************
-; main code
-
-
-.org BOOTLOADER_ADDR
-
-
-main:
- rjmp bootLoader ; this routine is in modules/flash/proto.asm
-
-
-
-
-; ***************************************************************************
-; includes
-
-.include "common/utils_wait_fixed.asm"
-.include "common/utils_copy_from_flash.asm"
-.include "common/utils_copy_sdram.asm"
-
-.include "modules/flash/defs.asm"
-.include "modules/flash/eeprom.asm"
-.include "modules/flash/io.asm"
-.include "modules/flash/io_attn.asm"
-.include "modules/flash/io_bitbang.asm"
-.include "modules/flash/flash1p.asm"
-.include "modules/flash/flashprocess.asm"
-.include "modules/flash/wait.asm"
-.include "modules/bootloader/main.asm"
-.include "modules/network/msg/defs.asm"
-.include "modules/network/msg/crc.asm"
-
-
-
-systemSetSpeed:
-.if clock == 8000000
- ldi r16, (1<
-
-
-
-
-
-
- -I $(builddir)
- -I $(srcdir)
- -I $(topsrcdir)/avr
- -I $(topbuilddir)/avr
-
-
-
-
- n11_main.asm
-
-
-
-
-
-
-
-
-
-
- -I $(builddir)
- -I $(srcdir)
- -I $(topsrcdir)/avr
- -I $(topbuilddir)/avr
-
-
-
-
- n11_boot.asm
-
-
-
-
-
-
-
-
-
-
- n11_defs.asm
-
-
-
-
-
-
diff --git a/avr/devices/n11/n11_boot.asm b/avr/devices/n11/n11_boot.asm
deleted file mode 100644
index 5db7a4d..0000000
--- a/avr/devices/n11/n11_boot.asm
+++ /dev/null
@@ -1,142 +0,0 @@
-; ***************************************************************************
-; Source file for base system node on AtTiny 84
-;
-; This is for the maintenance system (i.e. the flash loader).
-;
-; All definitions and changes should go into this file.
-; ***************************************************************************
-
-.equ clock=1000000 ; Define the clock frequency
-
-.nolist
-.include "include/tn84def.inc" ; Define device ATtiny84
-.list
-
-.include "n11_defs.asm"
-.include "defs_all.asm"
-
-
-
-; ***************************************************************************
-; defines
-
-; ---------------------------------------------------------------------------
-; generic
-
-.include "common/utils_wait.asm"
-.include "modules/com2/defs.asm"
-.include "modules/comproto/defs.asm"
-
-
-
-; ---------------------------------------------------------------------------
-; firmware settings
-
-.equ FIRMWARE_VERSION_MAJOR = 0
-.equ FIRMWARE_VERSION_MINOR = 0
-.equ FIRMWARE_VERSION_PATCHLEVEL = 1
-
-
-
-; ---------------------------------------------------------------------------
-; LED
-
-.equ LED_DDR = DDRA
-.equ LED_PORT = PORTA
-.equ LED_PIN = PINA
-.equ LED_PINNUM = PORTA3
-
-
-; ***************************************************************************
-; code segment
-
-.cseg
-.org 0x0000
-
-
-
-; ---------------------------------------------------------------------------
-; Reset and interrupt vectors
-; rjmp start ; Reset vector
- rjmp main ; Reset vector
- reti ; EXT_INT0
- reti ; PCI0
- reti ; PCI1
- reti ; WATCHDOG
- reti ; ICP1
- reti ; OC1A
- reti ; OC1B
- reti ; OVF1
- reti ; OC0A
- reti ; OC0B
- reti ; OVF0
- reti ; ACI
- reti ; ADCC
- reti ; ERDY
- reti ; USI_STR
- reti ; USI_OVF
-
-
-devInfoBlock: ; 12 bytes
-devInfoManufacturer: .db 'A', 'Q', 'U', 'A'
-devInfoId: .db DEVICEINFO_ID, 0
-devInfoVersion: .db DEVICEINFO_VERSION, DEVICEINFO_REVISION ; version, revision
-firmwareVersion: .db FIRMWARE_VARIANT_BOOT, FIRMWARE_VERSION_MAJOR
- .db FIRMWARE_VERSION_MINOR, FIRMWARE_VERSION_PATCHLEVEL
-
-firmwareStart: rjmp main ; will be overwritten when flashing
-
-
-
-; ***************************************************************************
-; main code
-
-
-.org BOOTLOADER_ADDR
-
-
-main:
- rjmp bootLoader ; this routine is in modules/flash/proto.asm
-
-
-
-
-; ***************************************************************************
-; includes
-
-.include "common/utils_wait_fixed.asm"
-.include "common/utils_copy_from_flash.asm"
-.include "common/utils_copy_sdram.asm"
-
-.include "modules/flash/defs.asm"
-.include "modules/flash/eeprom.asm"
-.include "modules/flash/io.asm"
-.include "modules/flash/io_attn.asm"
-.include "modules/flash/io_bitbang.asm"
-.include "modules/flash/flash1p.asm"
-.include "modules/flash/flashprocess.asm"
-.include "modules/flash/wait.asm"
-.include "modules/bootloader/main.asm"
-.include "modules/network/msg/defs.asm"
-.include "modules/network/msg/crc.asm"
-
-
-
-systemSetSpeed:
-.if clock == 8000000
- ldi r16, (1<
-
-
-
-
-
-
- -I $(builddir)
- -I $(srcdir)
- -I $(topsrcdir)/avr
- -I $(topbuilddir)/avr
-
-
-
-
- n12_main.asm
-
-
-
-
-
-
-
-
-
-
- -I $(builddir)
- -I $(srcdir)
- -I $(topsrcdir)/avr
- -I $(topbuilddir)/avr
-
-
-
-
- n12_boot.asm
-
-
-
-
-
-
-
-
-
-
- n12_defs.asm
-
-
-
-
-
-
diff --git a/avr/devices/n12/n12_boot.asm b/avr/devices/n12/n12_boot.asm
deleted file mode 100644
index 58f20d8..0000000
--- a/avr/devices/n12/n12_boot.asm
+++ /dev/null
@@ -1,144 +0,0 @@
-; ***************************************************************************
-; Source file for base system node on AtTiny 84
-;
-; This is for the maintenance system (i.e. the flash loader).
-;
-; All definitions and changes should go into this file.
-;
-;
-; ***************************************************************************
-
-.equ clock=1000000 ; Define the clock frequency
-
-.nolist
-.include "include/tn84def.inc" ; Define device ATtiny84
-.list
-
-.include "n12_defs.asm"
-.include "defs_all.asm"
-
-
-
-; ***************************************************************************
-; defines
-
-; ---------------------------------------------------------------------------
-; generic
-
-.include "common/utils_wait.asm"
-.include "modules/com2/defs.asm"
-.include "modules/comproto/defs.asm"
-
-
-; ---------------------------------------------------------------------------
-; firmware settings
-
-.equ FIRMWARE_VERSION_MAJOR = 0
-.equ FIRMWARE_VERSION_MINOR = 0
-.equ FIRMWARE_VERSION_PATCHLEVEL = 1
-
-
-; ---------------------------------------------------------------------------
-; LED
-
-.equ LED_DDR = DDRA
-.equ LED_PORT = PORTA
-.equ LED_PIN = PINA
-.equ LED_PINNUM = PORTA7
-
-
-
-; ***************************************************************************
-; code segment
-
-.cseg
-.org 0x0000
-
-
-
-; ---------------------------------------------------------------------------
-; Reset and interrupt vectors
-; rjmp start ; Reset vector
- rjmp main ; Reset vector
- reti ; EXT_INT0
- reti ; PCI0
- reti ; PCI1
- reti ; WATCHDOG
- reti ; ICP1
- reti ; OC1A
- reti ; OC1B
- reti ; OVF1
- reti ; OC0A
- reti ; OC0B
- reti ; OVF0
- reti ; ACI
- reti ; ADCC
- reti ; ERDY
- reti ; USI_STR
- reti ; USI_OVF
-
-
-devInfoBlock: ; 12 bytes
-devInfoManufacturer: .db 'A', 'Q', 'U', 'A'
-devInfoId: .db DEVICEINFO_ID, 0
-devInfoVersion: .db DEVICEINFO_VERSION, DEVICEINFO_REVISION ; version, revision
-firmwareVersion: .db FIRMWARE_VARIANT_BOOT, FIRMWARE_VERSION_MAJOR
- .db FIRMWARE_VERSION_MINOR, FIRMWARE_VERSION_PATCHLEVEL
-
-firmwareStart: rjmp main ; will be overwritten when flashing
-
-
-
-; ***************************************************************************
-; main code
-
-
-.org BOOTLOADER_ADDR
-
-
-main:
- rjmp bootLoader ; this routine is in modules/flash/proto.asm
-
-
-
-
-; ***************************************************************************
-; includes
-
-.include "common/utils_wait_fixed.asm"
-.include "common/utils_copy_from_flash.asm"
-.include "common/utils_copy_sdram.asm"
-
-.include "modules/flash/defs.asm"
-.include "modules/flash/eeprom.asm"
-.include "modules/flash/io.asm"
-.include "modules/flash/io_attn.asm"
-.include "modules/flash/io_bitbang.asm"
-.include "modules/flash/flash1p.asm"
-.include "modules/flash/flashprocess.asm"
-.include "modules/flash/wait.asm"
-.include "modules/bootloader/main.asm"
-.include "modules/network/msg/defs.asm"
-.include "modules/network/msg/crc.asm"
-
-
-
-systemSetSpeed:
-.if clock == 8000000
- ldi r16, (1<
-
-
-
-
-
-
- -I $(builddir)
- -I $(srcdir)
- -I $(topsrcdir)/avr
- -I $(topbuilddir)/avr
-
-
-
-
- n15_main.asm
-
-
-
-
-
-
-
-
-
-
- -I $(builddir)
- -I $(srcdir)
- -I $(topsrcdir)/avr
- -I $(topbuilddir)/avr
-
-
-
-
- n15_boot.asm
-
-
-
-
-
-
-
-
-
-
- n15_defs.asm
-
-
-
-
-
-
diff --git a/avr/devices/n15/n15_boot.asm b/avr/devices/n15/n15_boot.asm
deleted file mode 100644
index b64771d..0000000
--- a/avr/devices/n15/n15_boot.asm
+++ /dev/null
@@ -1,178 +0,0 @@
-; ***************************************************************************
-; Source file for base system node on AtTiny 84
-;
-; This is for the maintenance system (i.e. the flash loader).
-;
-; All definitions and changes should go into this file.
-; ***************************************************************************
-
-.equ clock=1000000 ; Define the clock frequency
-
-.nolist
-.include "include/tn84def.inc" ; Define device ATtiny84
-.list
-
-.include "n15_defs.asm"
-.include "defs_all.asm"
-
-
-
-; ***************************************************************************
-; defines
-
-; ---------------------------------------------------------------------------
-; generic
-
-.include "common/utils_wait.asm"
-.include "modules/com2/defs.asm"
-.include "modules/comproto/defs.asm"
-
-
-
-; ---------------------------------------------------------------------------
-; firmware settings
-
-.equ FIRMWARE_VERSION_MAJOR = 0
-.equ FIRMWARE_VERSION_MINOR = 0
-.equ FIRMWARE_VERSION_PATCHLEVEL = 1
-
-
-
-; ---------------------------------------------------------------------------
-; LED
-
-.equ LED_DDR = DDRA
-.equ LED_PORT = PORTA
-.equ LED_PIN = PINA
-.equ LED_PINNUM = PORTA3
-
-
-; ***************************************************************************
-; code segment
-
-.cseg
-.org 0x0000
-
-
-
-; ---------------------------------------------------------------------------
-; Reset and interrupt vectors
-; rjmp start ; Reset vector
- rjmp main ; Reset vector
- reti ; EXT_INT0
- reti ; PCI0
- reti ; PCI1
- reti ; WATCHDOG
- reti ; ICP1
- reti ; OC1A
- reti ; OC1B
- reti ; OVF1
- reti ; OC0A
- reti ; OC0B
- reti ; OVF0
- reti ; ACI
- reti ; ADCC
- reti ; ERDY
- reti ; USI_STR
- reti ; USI_OVF
-
-
-devInfoBlock: ; 12 bytes
-devInfoManufacturer: .db 'A', 'Q', 'U', 'A'
-devInfoId: .db DEVICEINFO_ID, 0
-devInfoVersion: .db DEVICEINFO_VERSION, DEVICEINFO_REVISION ; version, revision
-firmwareVersion: .db FIRMWARE_VARIANT_BOOT, FIRMWARE_VERSION_MAJOR
- .db FIRMWARE_VERSION_MINOR, FIRMWARE_VERSION_PATCHLEVEL
-
-firmwareStart: rjmp main ; will be overwritten when flashing
-
-
-
-; ***************************************************************************
-; main code
-
-
-.org BOOTLOADER_ADDR
-
-
-main:
- rjmp bootLoader ; this routine is in modules/flash/proto.asm
-
-
-
-
-; ***************************************************************************
-; includes
-
-.include "common/utils_wait_fixed.asm"
-.include "common/utils_copy_from_flash.asm"
-.include "common/utils_copy_sdram.asm"
-
-.include "modules/flash/defs.asm"
-.include "modules/flash/eeprom.asm"
-.include "modules/flash/io.asm"
-.include "modules/flash/io_attn.asm"
-.include "modules/flash/io_bitbang.asm"
-.include "modules/flash/flash1p.asm"
-.include "modules/flash/flashprocess.asm"
-.include "modules/flash/wait.asm"
-.include "modules/bootloader/main.asm"
-.include "modules/network/msg/defs.asm"
-.include "modules/network/msg/crc.asm"
-
-
-
-systemSetSpeed:
-.if clock == 8000000
- ldi r16, (1<
-
-
-
-
-
-
- -I $(builddir)
- -I $(srcdir)
- -I $(topsrcdir)/avr
- -I $(topbuilddir)/avr
-
-
-
-
- n17_main.asm
-
-
-
-
-
-
-
-
-
-
- -I $(builddir)
- -I $(srcdir)
- -I $(topsrcdir)/avr
- -I $(topbuilddir)/avr
-
-
-
-
- n17_boot.asm
-
-
-
-
-
-
-
-
-
-
- n17_defs.asm
-
-
-
-
-
-
diff --git a/avr/devices/n17/n17_boot.asm b/avr/devices/n17/n17_boot.asm
deleted file mode 100644
index 3730141..0000000
--- a/avr/devices/n17/n17_boot.asm
+++ /dev/null
@@ -1,178 +0,0 @@
-; ***************************************************************************
-; Source file for base system node on AtTiny 84
-;
-; This is for the maintenance system (i.e. the flash loader).
-;
-; All definitions and changes should go into this file.
-; ***************************************************************************
-
-.equ clock=1000000 ; Define the clock frequency
-
-.nolist
-.include "include/tn84def.inc" ; Define device ATtiny84
-.list
-
-.include "n17_defs.asm"
-.include "defs_all.asm"
-
-
-
-; ***************************************************************************
-; defines
-
-; ---------------------------------------------------------------------------
-; generic
-
-.include "common/utils_wait.asm"
-.include "modules/com2/defs.asm"
-.include "modules/comproto/defs.asm"
-
-
-
-; ---------------------------------------------------------------------------
-; firmware settings
-
-.equ FIRMWARE_VERSION_MAJOR = 0
-.equ FIRMWARE_VERSION_MINOR = 0
-.equ FIRMWARE_VERSION_PATCHLEVEL = 1
-
-
-
-; ---------------------------------------------------------------------------
-; LED
-
-.equ LED_DDR = DDRA
-.equ LED_PORT = PORTA
-.equ LED_PIN = PINA
-.equ LED_PINNUM = PORTA3
-
-
-; ***************************************************************************
-; code segment
-
-.cseg
-.org 0x0000
-
-
-
-; ---------------------------------------------------------------------------
-; Reset and interrupt vectors
-; rjmp start ; Reset vector
- rjmp main ; Reset vector
- reti ; EXT_INT0
- reti ; PCI0
- reti ; PCI1
- reti ; WATCHDOG
- reti ; ICP1
- reti ; OC1A
- reti ; OC1B
- reti ; OVF1
- reti ; OC0A
- reti ; OC0B
- reti ; OVF0
- reti ; ACI
- reti ; ADCC
- reti ; ERDY
- reti ; USI_STR
- reti ; USI_OVF
-
-
-devInfoBlock: ; 12 bytes
-devInfoManufacturer: .db 'A', 'Q', 'U', 'A'
-devInfoId: .db DEVICEINFO_ID, 0
-devInfoVersion: .db DEVICEINFO_VERSION, DEVICEINFO_REVISION ; version, revision
-firmwareVersion: .db FIRMWARE_VARIANT_BOOT, FIRMWARE_VERSION_MAJOR
- .db FIRMWARE_VERSION_MINOR, FIRMWARE_VERSION_PATCHLEVEL
-
-firmwareStart: rjmp main ; will be overwritten when flashing
-
-
-
-; ***************************************************************************
-; main code
-
-
-.org BOOTLOADER_ADDR
-
-
-main:
- rjmp bootLoader ; this routine is in modules/flash/proto.asm
-
-
-
-
-; ***************************************************************************
-; includes
-
-.include "common/utils_wait_fixed.asm"
-.include "common/utils_copy_from_flash.asm"
-.include "common/utils_copy_sdram.asm"
-
-.include "modules/flash/defs.asm"
-.include "modules/flash/eeprom.asm"
-.include "modules/flash/io.asm"
-.include "modules/flash/io_attn.asm"
-.include "modules/flash/io_bitbang.asm"
-.include "modules/flash/flash1p.asm"
-.include "modules/flash/flashprocess.asm"
-.include "modules/flash/wait.asm"
-.include "modules/bootloader/main.asm"
-.include "modules/network/msg/defs.asm"
-.include "modules/network/msg/crc.asm"
-
-
-
-systemSetSpeed:
-.if clock == 8000000
- ldi r16, (1<
-
-
-
-
-
-
- -I $(builddir)
- -I $(srcdir)
- -I $(topsrcdir)/avr
- -I $(topbuilddir)/avr
-
-
-
-
- main.asm
-
-
-
-
-
-
-
-
-
-
- -I $(builddir)
- -I $(srcdir)
- -I $(topsrcdir)/avr
- -I $(topbuilddir)/avr
-
-
-
-
- boot.asm
-
-
-
-
-
-
-
-
-
-
- defs.asm
-
-
-
-
-
-
diff --git a/avr/devices/n18/boot.asm b/avr/devices/n18/boot.asm
deleted file mode 100644
index d201486..0000000
--- a/avr/devices/n18/boot.asm
+++ /dev/null
@@ -1,140 +0,0 @@
-; ***************************************************************************
-; Source file for base system node on AtTiny 85
-;
-; This is for the maintenance system (i.e. the flash loader).
-;
-; All definitions and changes should go into this file.
-;
-;
-; ***************************************************************************
-
-.equ clock=1000000 ; Define the clock frequency
-
-.nolist
-.include "include/tn85def.inc" ; Define device ATtiny85
-.list
-
-.include "./defs.asm"
-.include "defs_all.asm"
-
-
-
-; ***************************************************************************
-; defines
-
-; ---------------------------------------------------------------------------
-; generic
-
-.include "common/utils_wait.asm"
-.include "modules/com2/defs.asm"
-.include "modules/comproto/defs.asm"
-
-
-; ---------------------------------------------------------------------------
-; firmware settings
-
-.equ FIRMWARE_VERSION_MAJOR = 0
-.equ FIRMWARE_VERSION_MINOR = 0
-.equ FIRMWARE_VERSION_PATCHLEVEL = 1
-
-
-; ---------------------------------------------------------------------------
-; LED
-
-.equ LED_DDR = DDRB
-.equ LED_PORT = PORTB
-.equ LED_PIN = PINB
-.equ LED_PINNUM = PORTB3
-
-
-
-; ***************************************************************************
-; code segment
-
-.cseg
-.org 0x0000
-
-
-
-; ---------------------------------------------------------------------------
-; Reset and interrupt vectors
- rjmp main ; Reset vector
- reti ; EXT_INT0
- reti ; PCI0
- reti ; OC1A
- reti ; OVF1
- reti ; OVF0
- reti ; ERDY
- reti ; ACI
- reti ; ADCC
- reti ; OC1B
- reti ; OC0A
- reti ; OC0B
- reti ; WATCHDOG
- reti ; USI_STR
- reti ; USI_OVF
-
-devInfoBlock: ; 12 bytes
-devInfoManufacturer: .db 'A', 'Q', 'U', 'A'
-devInfoId: .db DEVICEINFO_ID, 0
-devInfoVersion: .db DEVICEINFO_VERSION, DEVICEINFO_REVISION ; version, revision
-firmwareVersion: .db FIRMWARE_VARIANT_BOOT, FIRMWARE_VERSION_MAJOR
- .db FIRMWARE_VERSION_MINOR, FIRMWARE_VERSION_PATCHLEVEL
-
-firmwareStart: rjmp main ; will be overwritten when flashing
-
-
-
-; ***************************************************************************
-; main code
-
-
-.org BOOTLOADER_ADDR
-
-
-main:
- rjmp bootLoader ; this routine is in modules/flash/proto.asm
-
-
-
-
-; ***************************************************************************
-; includes
-
-.include "common/utils_wait_fixed.asm"
-.include "common/utils_copy_from_flash.asm"
-.include "common/utils_copy_sdram.asm"
-
-.include "modules/flash/defs.asm"
-.include "modules/flash/eeprom.asm"
-.include "modules/flash/io.asm"
-.include "modules/flash/io_attn.asm"
-.include "modules/flash/io_bitbang.asm"
-.include "modules/flash/flash1p.asm"
-.include "modules/flash/flashprocess.asm"
-.include "modules/flash/wait.asm"
-.include "modules/bootloader/main.asm"
-.include "modules/network/msg/defs.asm"
-.include "modules/network/msg/crc.asm"
-
-
-
-systemSetSpeed:
-.if clock == 8000000
- ldi r16, (1<
-
-
-
-
- boot
- main
-
-
-
- defs.asm
- README
-
-
-
-
-
diff --git a/avr/devices/n19/README b/avr/devices/n19/README
deleted file mode 100644
index 4b8fb4d..0000000
--- a/avr/devices/n19/README
+++ /dev/null
@@ -1,13 +0,0 @@
-
-N19
-===
-
-- Role: Air quality and climate sensors
-- MCU: AtTiny84
-- Connection: RJ45
-- Periphery:
- - PIR sensor (AMN31112)
- - TWI interface
- - SI7021 temperature and humidity sensor
- - CCS811 air quality sensor
-
diff --git a/avr/devices/n19/boot/0BUILD b/avr/devices/n19/boot/0BUILD
deleted file mode 100644
index c0e7053..0000000
--- a/avr/devices/n19/boot/0BUILD
+++ /dev/null
@@ -1,32 +0,0 @@
-
-
-
-
-
-
-
- -I $(builddir)
- -I $(srcdir)
- -I $(topsrcdir)/avr
- -I $(topbuilddir)/avr
-
-
-
-
- boot.asm
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/avr/devices/n19/boot/boot.asm b/avr/devices/n19/boot/boot.asm
deleted file mode 100644
index eb13227..0000000
--- a/avr/devices/n19/boot/boot.asm
+++ /dev/null
@@ -1,138 +0,0 @@
-; ***************************************************************************
-; Source file for base system node on AtTiny 85
-;
-; This is for the maintenance system (i.e. the flash loader).
-;
-; All definitions and changes should go into this file.
-;
-;
-; ***************************************************************************
-
-.equ clock=1000000 ; Define the clock frequency
-
-.nolist
-.include "include/tn85def.inc" ; Define device ATtiny85
-.list
-
-.include "../defs.asm"
-.include "devices/all/defs.asm"
-.include "common/calls.asm"
-.include "common/utils_wait.asm"
-
-
-
-; ***************************************************************************
-; defines
-
-; ---------------------------------------------------------------------------
-; generic
-
-
-; ---------------------------------------------------------------------------
-; firmware settings
-
-.equ FIRMWARE_VERSION_MAJOR = 0
-.equ FIRMWARE_VERSION_MINOR = 0
-.equ FIRMWARE_VERSION_PATCHLEVEL = 1
-
-
-; ---------------------------------------------------------------------------
-; LED
-
-.equ LED_DDR = DDRB
-.equ LED_PORT = PORTB
-.equ LED_PIN = PINB
-.equ LED_PINNUM = PORTB3
-
-
-
-; ***************************************************************************
-; code segment
-
-.cseg
-.org 0x0000
-
-
-
-; ---------------------------------------------------------------------------
-; Reset and interrupt vectors
- rjmp main ; Reset vector
- reti ; EXT_INT0
- reti ; PCI0
- reti ; OC1A
- reti ; OVF1
- reti ; OVF0
- reti ; ERDY
- reti ; ACI
- reti ; ADCC
- reti ; OC1B
- reti ; OC0A
- reti ; OC0B
- reti ; WATCHDOG
- reti ; USI_STR
- reti ; USI_OVF
-
-devInfoBlock: ; 12 bytes
-devInfoManufacturer: .db 'A', 'Q', 'U', 'A'
-devInfoId: .db DEVICEINFO_ID, 0
-devInfoVersion: .db DEVICEINFO_VERSION, DEVICEINFO_REVISION ; version, revision
-firmwareVersion: .db FIRMWARE_VARIANT_BOOT, FIRMWARE_VERSION_MAJOR
- .db FIRMWARE_VERSION_MINOR, FIRMWARE_VERSION_PATCHLEVEL
-
-firmwareStart: rjmp main ; will be overwritten when flashing
-
-
-
-; ***************************************************************************
-; main code
-
-
-.org BOOTLOADER_ADDR
-
-
-main:
- rjmp bootLoader ; this routine is in modules/flash/proto.asm
-
-
-
-
-; ***************************************************************************
-; includes
-
-.include "common/utils_wait_fixed.asm"
-.include "common/utils_copy_from_flash.asm"
-.include "common/utils_copy_sdram.asm"
-
-.include "modules/flash/defs.asm"
-.include "modules/flash/eeprom.asm"
-.include "modules/flash/io.asm"
-.include "modules/flash/io_attn.asm"
-.include "modules/flash/io_bitbang.asm"
-.include "modules/flash/flash1p.asm"
-.include "modules/flash/flashprocess.asm"
-.include "modules/flash/wait.asm"
-.include "modules/bootloader/main.asm"
-.include "modules/network/msg/defs.asm"
-.include "modules/network/msg/crc.asm"
-
-
-
-systemSetSpeed:
-.if clock == 8000000
- ldi r16, (1<
-
-
-
-
-
-
- -I $(builddir)
- -I $(srcdir)
- -I $(topsrcdir)/avr
- -I $(topbuilddir)/avr
-
-
-
-
- main.asm
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/avr/devices/n19/main/main.asm b/avr/devices/n19/main/main.asm
deleted file mode 100644
index 146038d..0000000
--- a/avr/devices/n19/main/main.asm
+++ /dev/null
@@ -1,176 +0,0 @@
-; ***************************************************************************
-; copyright : (C) 2025 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. *
-; ***************************************************************************
-
-
-; ***************************************************************************
-; Source file for LED controller node on AtTiny 85
-;
-; This is for the full system (i.e. not the boot loader).
-; ***************************************************************************
-
-.equ clock=1000000 ; Define the clock frequency
-
-
-
-.nolist
-.include "include/tn85def.inc" ; Define device ATtiny85
-.list
-
-.include "../defs.asm"
-.include "devices/all/defs.asm"
-.include "common/calls.asm"
-.include "common/utils_io.asm"
-.include "common/utils_wait.asm" ; wait macro
-
-
-
-; ***************************************************************************
-; defines
-
-
-.equ NET_BUFFERS_NUM = 6
-
-
-; ---------------------------------------------------------------------------
-; firmware settings including list of modules used
-
-.equ FIRMWARE_VERSION_MAJOR = 0
-.equ FIRMWARE_VERSION_MINOR = 0
-.equ FIRMWARE_VERSION_PATCHLEVEL = 1
-
-#define MODULES_CLOCK
-#define MODULES_LED_SIMPLE
-#define MODULES_NETWORK
-#define MODULES_UART_BITBANG
-#define MODULES_TWI_MASTER
-#define MODULES_SI7021
-#define MODULES_CCS811
-
-#define APPS_NETWORK
-#define APPS_REPORTSENSORS
-#define APPS_STATS
-
-
-
-; ---------------------------------------------------------------------------
-; defines for modules
-
-.equ VALUE_ID_SI7021_TEMP = 0x01
-.equ VALUE_ID_SI7021_HUM = 0x02
-
-.equ VALUE_ID_CO2 = 0x07
-.equ VALUE_ID_TVOC = 0x08
-
-.equ VALUE_ID_DEBUG = 0x7f
-
-.equ VALUE_ID_LEDSIMPLE_TIMING = 0x88
-
-
-; ***************************************************************************
-; code segment
-
-.cseg
-.org 000000
-
-
-
-; ---------------------------------------------------------------------------
-; Reset and interrupt vectors
-
- rjmp BOOTLOADER_ADDR ; Reset vector ; use this for flashed system
- reti ; EXT_INT0
- rjmp UART_BitBang_PcintIsr ; PCI0
- reti ; OC1A
- reti ; OVF1
- reti ; OVF0
- reti ; ERDY
- reti ; ACI
- reti ; ADCC
- reti ; OC1B
- rjmp baseTimerIrqOC0A ; OC0A
- reti ; OC0B
- reti ; WATCHDOG
- reti ; USI_STR
- reti ; USI_OVF
-
-
-devInfoBlock: ; 12 bytes
-devInfoManufacturer: .db 'A', 'Q', 'U', 'A'
-devInfoId: .db DEVICEINFO_ID, 0
-devInfoVersion: .db DEVICEINFO_VERSION, DEVICEINFO_REVISION ; version, revision
-firmwareVersion: .db FIRMWARE_VARIANT_MAIN, FIRMWARE_VERSION_MAJOR
- .db FIRMWARE_VERSION_MINOR, FIRMWARE_VERSION_PATCHLEVEL
-
-firmwareStart:
- rjmp main
-
-
-
-; ---------------------------------------------------------------------------
-; @routine onSystemStart
-
-onSystemStart:
- ret
-; @end
-
-
-
-; ---------------------------------------------------------------------------
-; @routine onMessageReceived
-;
-; Called on every message received
-
-onMessageReceived:
- clc
- ret
-; @end
-
-
-
-; ---------------------------------------------------------------------------
-; @routine onEvery100ms
-;
-; Called every 100ms. Add your routine calls here. No arguments, no results.
-
-onEvery100ms:
-onEverySecond:
-onEveryMinute:
-onEveryHour:
-onEveryDay:
- ret
-; @end
-
-
-
-; ---------------------------------------------------------------------------
-; @routine onEveryLoop
-;
-; Called on every loop (i.e. after awakening from sleep).
-;
-onEveryLoop:
- ret
-; @end
-
-
-
-; ***************************************************************************
-; includes
-
-.include "devices/all/hw_tn85.asm"
-.include "devices/all/includes.asm"
-
-
-
-; ---------------------------------------------------------------------------
-; defines for network interface
-
-.equ netInterfaceData = uart_bitbang_iface
-
-
-
diff --git a/avr/devices/n20/.gitignore b/avr/devices/n20/.gitignore
deleted file mode 100644
index 8e0618c..0000000
--- a/avr/devices/n20/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-*.eep.hex
-*.obj
diff --git a/avr/devices/n20/0BUILD b/avr/devices/n20/0BUILD
deleted file mode 100644
index be449f6..0000000
--- a/avr/devices/n20/0BUILD
+++ /dev/null
@@ -1,17 +0,0 @@
-
-
-
-
-
- boot
- main
-
-
-
- defs.asm
- README
-
-
-
-
-
diff --git a/avr/devices/n20/README b/avr/devices/n20/README
deleted file mode 100644
index 60505df..0000000
--- a/avr/devices/n20/README
+++ /dev/null
@@ -1,13 +0,0 @@
-
-N20
-===
-
-- Role: Air quality and climate sensors
-- MCU: AtTiny84
-- Connection: RJ45
-- Periphery:
- - PIR sensor (AMN31112)
- - TWI interface
- - SI7021 temperature and humidity sensor
- - CCS811 air quality sensor
-
diff --git a/avr/devices/n20/boot/0BUILD b/avr/devices/n20/boot/0BUILD
deleted file mode 100644
index dec3837..0000000
--- a/avr/devices/n20/boot/0BUILD
+++ /dev/null
@@ -1,32 +0,0 @@
-
-
-
-
-
-
-
- -I $(builddir)
- -I $(srcdir)
- -I $(topsrcdir)/avr
- -I $(topbuilddir)/avr
-
-
-
-
- boot.asm
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/avr/devices/n20/boot/boot.asm b/avr/devices/n20/boot/boot.asm
deleted file mode 100644
index df58b6f..0000000
--- a/avr/devices/n20/boot/boot.asm
+++ /dev/null
@@ -1,129 +0,0 @@
-; ***************************************************************************
-; Source file for base system node on AtTiny 84
-;
-; This is for the maintenance system (i.e. the flash loader).
-;
-; All definitions and changes should go into this file.
-; ***************************************************************************
-
-.equ clock=1000000 ; Define the clock frequency
-
-.nolist
-.include "include/tn84def.inc" ; Define device ATtiny84
-.list
-
-.include "version.asm"
-.include "../defs.asm"
-.include "devices/all/defs.asm"
-
-.include "common/calls.asm"
-.include "common/utils_wait.asm"
-
-
-
-; ***************************************************************************
-; defines
-
-; ---------------------------------------------------------------------------
-; LED
-
-.equ LED_DDR = DDRA
-.equ LED_PORT = PORTA
-.equ LED_PIN = PINA
-.equ LED_PINNUM = PORTA3
-
-
-; ***************************************************************************
-; code segment
-
-.cseg
-.org 0x0000
-
-
-
-; ---------------------------------------------------------------------------
-; Reset and interrupt vectors
-; rjmp start ; Reset vector
- rjmp main ; Reset vector
- reti ; EXT_INT0
- reti ; PCI0
- reti ; PCI1
- reti ; WATCHDOG
- reti ; ICP1
- reti ; OC1A
- reti ; OC1B
- reti ; OVF1
- reti ; OC0A
- reti ; OC0B
- reti ; OVF0
- reti ; ACI
- reti ; ADCC
- reti ; ERDY
- reti ; USI_STR
- reti ; USI_OVF
-
-
-devInfoBlock: ; 12 bytes
-devInfoManufacturer: .db 'A', 'Q', 'U', 'A'
-devInfoId: .db DEVICEINFO_ID, 0
-devInfoVersion: .db DEVICEINFO_VERSION, DEVICEINFO_REVISION ; version, revision
-firmwareVersion: .db FIRMWARE_VARIANT_BOOT, FIRMWARE_VERSION_MAJOR
- .db FIRMWARE_VERSION_MINOR, FIRMWARE_VERSION_PATCHLEVEL
-
-firmwareStart: rjmp main ; will be overwritten when flashing
-
-
-
-; ***************************************************************************
-; main code
-
-
-.org BOOTLOADER_ADDR
-
-
-main:
- rjmp bootLoader ; this routine is in modules/bootloader/main.asm
-
-
-
-; ***************************************************************************
-; includes
-
-.include "common/utils_wait_fixed.asm"
-.include "common/utils_copy_from_flash.asm"
-.include "common/utils_copy_sdram.asm"
-
-.include "modules/flash/defs.asm"
-.include "modules/flash/eeprom.asm"
-.include "modules/flash/io.asm"
-.include "modules/flash/io_attn.asm"
-.include "modules/flash/io_bitbang.asm"
-.include "modules/flash/flash1p.asm"
-.include "modules/flash/flashxp.asm"
-.include "modules/flash/flashprocess.asm"
-.include "modules/flash/wait.asm"
-.include "modules/bootloader/main.asm"
-.include "modules/network/msg/defs.asm"
-.include "modules/network/msg/crc.asm"
-
-
-
-systemSetSpeed:
-.if clock == 8000000
- ldi r16, (1<
-
-
-
-
-
-
- -I $(builddir)
- -I $(srcdir)
- -I $(topsrcdir)/avr
- -I $(topbuilddir)/avr
-
-
-
-
- main.asm
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/avr/devices/n20/main/main.asm b/avr/devices/n20/main/main.asm
deleted file mode 100644
index fadb333..0000000
--- a/avr/devices/n20/main/main.asm
+++ /dev/null
@@ -1,222 +0,0 @@
-; ***************************************************************************
-; copyright : (C) 2024 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. *
-; ***************************************************************************
-
-
-
-
-; ***************************************************************************
-; Source file for temperature sensor node on AtTiny 84
-;
-; This is for the full system (i.e. not the boot loader).
-;
-; All definitions and changes should go into this file.
-;
-;
-; ***************************************************************************
-
-
-.equ clock=1000000 ; Define the clock frequency
-;.equ clock=8000000 ; Define the clock frequency
-
-
-
-.nolist
-.include "include/tn84def.inc" ; Define device ATtiny84
-.list
-
-.include "version.asm"
-.include "../defs.asm"
-.include "devices/all/defs.asm"
-
-.include "common/calls.asm"
-.include "common/utils_io.asm"
-.include "common/utils_wait.asm"
-
-
-
-; ***************************************************************************
-; defines
-
-; ---------------------------------------------------------------------------
-; generic
-
-.equ NET_BUFFERS_NUM = 4
-
-
-
-; ---------------------------------------------------------------------------
-; firmware settings including list of modules used
-
-; #define MODULES_TIMER
-#define MODULES_CLOCK
-#define MODULES_LED_SIMPLE
-#define MODULES_NETWORK
-#define MODULES_UART_BITBANG
-#define MODULES_TWI_MASTER
-;#define MODULES_LCD
-;#define LCD_MINIMAL_FONT
-#define MODULES_SI7021
-;#define MODULES_STATS
-;#define MODULES_OWI_MASTER
-;#define MODULES_DS18B20
-;#define MODULES_MOTION
-;#define MODULES_TCRT1000
-#define MODULES_CCS811
-
-#define APPS_NETWORK
-;#define APPS_MOTION
-;#define APPS_DOOR
-#define APPS_REPORTSENSORS
-#define APPS_STATS
-
-
-
-; ---------------------------------------------------------------------------
-; defines for values
-
-.equ VALUE_ID_SI7021_TEMP = 0x01
-.equ VALUE_ID_SI7021_HUM = 0x02
-
-.equ VALUE_ID_ADC = 0x03
-;.equ VALUE_ID_REED1 = 0x04
-;.equ VALUE_ID_REED2 = 0x05
-;.equ VALUE_ID_DS18B20_TEMP = 0x06
-.equ VALUE_ID_MOTION = 0x07
-
-.equ VALUE_ID_CO2 = 0x08
-.equ VALUE_ID_TVOC = 0x09
-
-;.equ VALUE_ID_REED_CONF = 0x81
-
-.equ VALUE_ID_DEBUG = 0x7f
-
-.equ VALUE_ID_LEDSIMPLE_TIMING = 0x88
-
-
-
-; ***************************************************************************
-; code segment
-
-.cseg
-.org 000000
-
-
-
-; ---------------------------------------------------------------------------
-; Reset and interrupt vectors (will be removed as soon as we can flash data over COM)
-
-; rjmp main ; Reset vector
- rjmp BOOTLOADER_ADDR ; Reset vector ; use this for flashed system
- reti ; EXT_INT0
- rjmp UART_BitBang_PcintIsr ; PCI0
- reti ; PCI1
- reti ; WATCHDOG
- reti ; ICP1
- reti ; OC1A
- reti ; OC1B
- reti ; OVF1
- rjmp baseTimerIrqOC0A ; OC0A
- reti ; OC0B
- reti ; OVF0
- reti ; ACI
- reti ; ADCC
- reti ; ERDY
- reti ; USI_STR
- reti ; USI_OVF
-
-
-devInfoBlock: ; 12 bytes
-devInfoManufacturer: .db 'A', 'Q', 'U', 'A'
-devInfoId: .db DEVICEINFO_ID, 0
-devInfoVersion: .db DEVICEINFO_VERSION, DEVICEINFO_REVISION ; version, revision
-firmwareVersion: .db FIRMWARE_VARIANT_TEMP_WINDOW, FIRMWARE_VERSION_MAJOR
- .db FIRMWARE_VERSION_MINOR, FIRMWARE_VERSION_PATCHLEVEL
-
-; ---------------------------------------------------------------------------
-; @routine firmwareStart @global
-
-firmwareStart:
- rjmp main
-; @end
-
-
-
-; ---------------------------------------------------------------------------
-; @routine onSystemStart
-
-onSystemStart:
- ret
-; @end
-
-
-
-; ---------------------------------------------------------------------------
-; @routine onMessageReceived
-;
-; Called on every message received
-
-onMessageReceived:
- clc
- ret
-; @end
-
-
-
-; ---------------------------------------------------------------------------
-; @routine onEvery100ms
-;
-; Called every 100ms. Add your routine calls here. No arguments, no results.
-
-onEvery100ms:
-onEverySecond:
-onEveryMinute:
-onEveryHour:
-onEveryDay:
- ret
-; @end
-
-
-
-; ---------------------------------------------------------------------------
-; @routine onEveryLoop
-;
-; Called on every loop (i.e. after awakening from sleep).
-;
-onEveryLoop:
- ret
-; @end
-
-
-
-
-
-; ***************************************************************************
-; includes
-
-.include "devices/all/hw_tn84.asm"
-.include "devices/all/includes.asm"
-
-;.include "common/debug.asm"
-
-
-
-
-; ---------------------------------------------------------------------------
-; defines for network interface
-
-.equ netInterfaceData = uart_bitbang_iface
-
-
-
-
-
-
-
-
-
diff --git a/avr/devices/n22/.gitignore b/avr/devices/n22/.gitignore
deleted file mode 100644
index 8e0618c..0000000
--- a/avr/devices/n22/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-*.eep.hex
-*.obj
diff --git a/avr/devices/n22/0BUILD b/avr/devices/n22/0BUILD
deleted file mode 100644
index be449f6..0000000
--- a/avr/devices/n22/0BUILD
+++ /dev/null
@@ -1,17 +0,0 @@
-
-
-
-
-
- boot
- main
-
-
-
- defs.asm
- README
-
-
-
-
-
diff --git a/avr/devices/n22/README b/avr/devices/n22/README
deleted file mode 100644
index 95d68e6..0000000
--- a/avr/devices/n22/README
+++ /dev/null
@@ -1,15 +0,0 @@
-
-N22
-===
-
-- Role: LED strip controller
-- MCU: AtTiny85
-- Connection: RJ45
-- Predecessor: N16
-- UART: uart_bitbang2
-- Periphery:
- - LED strip connection (SK6812)
- - OWI interface
- - DS18B20 temperature sensor
-- Modules:
- - MA_LIGHT: motion activated light
diff --git a/avr/devices/n22/boot/0BUILD b/avr/devices/n22/boot/0BUILD
deleted file mode 100644
index 068003c..0000000
--- a/avr/devices/n22/boot/0BUILD
+++ /dev/null
@@ -1,32 +0,0 @@
-
-
-
-
-
-
-
- -I $(builddir)
- -I $(srcdir)
- -I $(topsrcdir)/avr
- -I $(topbuilddir)/avr
-
-
-
-
- boot.asm
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/avr/devices/n22/boot/boot.asm b/avr/devices/n22/boot/boot.asm
deleted file mode 100644
index 2acc025..0000000
--- a/avr/devices/n22/boot/boot.asm
+++ /dev/null
@@ -1,129 +0,0 @@
-; ***************************************************************************
-; Source file for base system node on AtTiny 85
-;
-; This is for the maintenance system (i.e. the flash loader).
-;
-; All definitions and changes should go into this file.
-;
-;
-; ***************************************************************************
-
-.equ clock=1000000 ; Define the clock frequency
-
-.nolist
-.include "include/tn85def.inc" ; Define device ATtiny85
-.list
-
-.include "version.asm"
-.include "../defs.asm"
-.include "devices/all/defs.asm"
-
-.include "common/calls.asm"
-.include "common/utils_wait.asm"
-.include "modules/com2/defs.asm"
-.include "modules/comproto/defs.asm"
-
-
-
-; ***************************************************************************
-; defines
-
-
-; ---------------------------------------------------------------------------
-; LED
-
-.equ LED_DDR = DDRB
-.equ LED_PORT = PORTB
-.equ LED_PIN = PINB
-.equ LED_PINNUM = PORTB4
-
-
-
-; ***************************************************************************
-; code segment
-
-.cseg
-.org 0x0000
-
-
-
-; ---------------------------------------------------------------------------
-; Reset and interrupt vectors
- rjmp main ; Reset vector
- reti ; EXT_INT0
- reti ; PCI0
- reti ; OC1A
- reti ; OVF1
- reti ; OVF0
- reti ; ERDY
- reti ; ACI
- reti ; ADCC
- reti ; OC1B
- reti ; OC0A
- reti ; OC0B
- reti ; WATCHDOG
- reti ; USI_STR
- reti ; USI_OVF
-
-devInfoBlock: ; 12 bytes
-devInfoManufacturer: .db 'A', 'Q', 'U', 'A'
-devInfoId: .db DEVICEINFO_ID, 0
-devInfoVersion: .db DEVICEINFO_VERSION, DEVICEINFO_REVISION ; version, revision
-firmwareVersion: .db FIRMWARE_VARIANT_BOOT, FIRMWARE_VERSION_MAJOR
- .db FIRMWARE_VERSION_MINOR, FIRMWARE_VERSION_PATCHLEVEL
-
-firmwareStart: rjmp main ; will be overwritten when flashing
-
-
-
-; ***************************************************************************
-; main code
-
-
-.org BOOTLOADER_ADDR
-
-
-main:
- rjmp bootLoader ; this routine is in modules/bootloader/main.asm
-
-
-
-; ***************************************************************************
-; includes
-
-.include "common/utils_wait_fixed.asm"
-.include "common/utils_copy_from_flash.asm"
-.include "common/utils_copy_sdram.asm"
-
-.include "modules/flash/defs.asm"
-.include "modules/flash/eeprom.asm"
-.include "modules/flash/io.asm"
-.include "modules/flash/io_attn.asm"
-.include "modules/flash/io_bitbang.asm"
-.include "modules/flash/flashxp.asm"
-.include "modules/flash/flash1p.asm"
-.include "modules/flash/flashprocess.asm"
-.include "modules/flash/wait.asm"
-.include "modules/bootloader/main.asm"
-.include "modules/network/msg/defs.asm"
-.include "modules/network/msg/crc.asm"
-
-
-
-systemSetSpeed:
-.if clock == 8000000
- ldi r16, (1<
-
-
-
-
-
-
- -I $(builddir)
- -I $(srcdir)
- -I $(topsrcdir)/avr
- -I $(topbuilddir)/avr
-
-
-
-
- main.asm
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/avr/devices/n22/main/main.asm b/avr/devices/n22/main/main.asm
deleted file mode 100644
index 91c25da..0000000
--- a/avr/devices/n22/main/main.asm
+++ /dev/null
@@ -1,206 +0,0 @@
-; ***************************************************************************
-; copyright : (C) 2024 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. *
-; ***************************************************************************
-
-
-; ***************************************************************************
-; Source file for LED controller node on AtTiny 85
-;
-; This is for the full system (i.e. not the boot loader).
-; ***************************************************************************
-
-.equ clock=8000000 ; Define the clock frequency
-
-
-
-.nolist
-.include "include/tn85def.inc" ; Define device ATtiny85
-.list
-
-.include "version.asm"
-.include "../defs.asm"
-;.include "./data.asm"
-
-.include "devices/all/defs.asm"
-
-.include "common/calls.asm"
-.include "common/utils_io.asm"
-.include "common/utils_wait.asm"
-
-
-
-; ***************************************************************************
-; defines
-
-; ---------------------------------------------------------------------------
-; generic
-
-.equ NET_BUFFERS_NUM = 6
-
-
-
-; ---------------------------------------------------------------------------
-; firmware settings including list of modules used
-
-#define MODULES_CLOCK
-#define MODULES_LED_SIMPLE
-#define MODULES_NETWORK
-#define MODULES_UART_BITBANG
-#define MODULES_OWI_MASTER
-#define MODULES_DS18B20
-#define MODULES_SK6812
-;#define MODULES_MOTION_LIGHT
-
-#define APPS_NETWORK
-#define APPS_REPORTSENSORS
-#define APPS_STATS
-#define APPS_MA_LIGHT
-
-
-
-; ---------------------------------------------------------------------------
-; defines for modules
-
-;.equ VALUE_ID_SI7021_TEMP = 0x01
-;.equ VALUE_ID_SI7021_HUM = 0x02
-
-;.equ VALUE_ID_ADC = 0x03
-;.equ VALUE_ID_REED1 = 0x04
-;.equ VALUE_ID_REED2 = 0x05
-.equ VALUE_ID_DS18B20_TEMP = 0x06
-
-;.equ VALUE_ID_REED_CONF = 0x81
-.equ VALUE_ID_LED_NUMLEDS = 0x82
-.equ VALUE_ID_LED_RGBW_VALUE = 0x83
-.equ VALUE_ID_MAL_RGBW_VALUE = 0x84
-.equ VALUE_ID_MAL_ONTIME = 0x85
-.equ VALUE_ID_MAL_SOURCE1 = 0x86
-.equ VALUE_ID_MAL_SOURCE2 = 0x87
-
-.equ VALUE_ID_LEDSIMPLE_TIMING = 0x88
-
-
-; ***************************************************************************
-; code segment
-
-.cseg
-.org 000000
-
-
-
-; ---------------------------------------------------------------------------
-; Reset and interrupt vectors
-
- rjmp BOOTLOADER_ADDR ; Reset vector ; use this for flashed system
- reti ; EXT_INT0
- rjmp UART_BitBang_PcintIsr ; PCI0
- reti ; OC1A
- reti ; OVF1
- reti ; OVF0
- reti ; ERDY
- reti ; ACI
- reti ; ADCC
- reti ; OC1B
- rjmp baseTimerIrqOC0A ; OC0A
- reti ; OC0B
- reti ; WATCHDOG
- reti ; USI_STR
- reti ; USI_OVF
-
-
-devInfoBlock: ; 12 bytes
-devInfoManufacturer: .db 'A', 'Q', 'U', 'A'
-devInfoId: .db DEVICEINFO_ID, 0
-devInfoVersion: .db DEVICEINFO_VERSION, DEVICEINFO_REVISION ; version, revision
-firmwareVersion: .db FIRMWARE_VARIANT_LEDSTRIPS, FIRMWARE_VERSION_MAJOR
- .db FIRMWARE_VERSION_MINOR, FIRMWARE_VERSION_PATCHLEVEL
-
-; ---------------------------------------------------------------------------
-; @routine firmwareStart @global
-
-firmwareStart:
- rjmp main
-; @end
-
-
-
-; ---------------------------------------------------------------------------
-; @routine onSystemStart
-
-onSystemStart:
- ret
-; @end
-
-
-
-; ---------------------------------------------------------------------------
-; @routine onMessageReceived
-;
-; Called on every message received
-
-onMessageReceived:
- clc
- ret
-; @end
-
-
-
-; ---------------------------------------------------------------------------
-; @routine onEvery100ms
-;
-; Called every 100ms. Add your routine calls here. No arguments, no results.
-
-onEvery100ms:
-onEveryMinute:
-onEveryHour:
-onEveryDay:
- ret
-; @end
-
-onEverySecond:
- ret
- ; debug
- ldi r19, 0x00 ; G
- ldi r18, 0xff ; R
- ldi r20, 0x55 ; B
- ldi r21, 0xaa ; W
- rcall SK6812_SetAllColor ; r23 (r16, r17)
- ret
-
-
-
-; ---------------------------------------------------------------------------
-; @routine onEveryLoop
-;
-; Called on every loop (i.e. after awakening from sleep).
-;
-onEveryLoop:
- ret
-; @end
-
-
-
-
-
-; ***************************************************************************
-; includes
-
-.include "devices/all/hw_tn85.asm"
-.include "devices/all/includes.asm"
-.include "common/debug.asm"
-
-
-
-; ---------------------------------------------------------------------------
-; defines for network interface
-
-.equ netInterfaceData = uart_bitbang_iface
-
-
-
-
diff --git a/avr/devices/n23/.gitignore b/avr/devices/n23/.gitignore
deleted file mode 100644
index 8e0618c..0000000
--- a/avr/devices/n23/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-*.eep.hex
-*.obj
diff --git a/avr/devices/n23/0BUILD b/avr/devices/n23/0BUILD
deleted file mode 100644
index bed977a..0000000
--- a/avr/devices/n23/0BUILD
+++ /dev/null
@@ -1,22 +0,0 @@
-
-
-
-
-
- boot
- main
-
-
-
- aqua_n23.xml
-
-
-
- defs.asm
- README
-
-
-
-
-
-
diff --git a/avr/devices/n23/README b/avr/devices/n23/README
deleted file mode 100644
index be29416..0000000
--- a/avr/devices/n23/README
+++ /dev/null
@@ -1,14 +0,0 @@
-
-N23
-===
-
-- Role: Air quality and climate sensors
-- MCU: AtTiny84
-- Connection: RJ45
-- Predecessor: N19
-- Periphery:
- - PIR sensor (AMN31112)
- - TWI interface
- - SI7021 temperature and humidity sensor
- - CCS811 air quality sensor
-
diff --git a/avr/devices/n23/aqua_n23.xml b/avr/devices/n23/aqua_n23.xml
deleted file mode 100644
index 2fd9f35..0000000
--- a/avr/devices/n23/aqua_n23.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-
-
- AQUA
- N
- 23
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/avr/devices/n23/boot/0BUILD b/avr/devices/n23/boot/0BUILD
deleted file mode 100644
index d266259..0000000
--- a/avr/devices/n23/boot/0BUILD
+++ /dev/null
@@ -1,32 +0,0 @@
-
-
-
-
-
-
-
- -I $(builddir)
- -I $(srcdir)
- -I $(topsrcdir)/avr
- -I $(topbuilddir)/avr
-
-
-
-
- boot.asm
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/avr/devices/n23/boot/boot.asm b/avr/devices/n23/boot/boot.asm
deleted file mode 100644
index 39bb493..0000000
--- a/avr/devices/n23/boot/boot.asm
+++ /dev/null
@@ -1,134 +0,0 @@
-; ***************************************************************************
-; Source file for base system node on AtTiny 84
-;
-; This is for the maintenance system (i.e. the flash loader).
-;
-; All definitions and changes should go into this file.
-; ***************************************************************************
-
-.equ clock=1000000 ; Define the clock frequency
-
-.nolist
-.include "include/tn84def.inc" ; Define device ATtiny84
-.list
-
-.include "version.asm"
-.include "../defs.asm"
-.include "devices/all/defs.asm"
-
-.include "common/calls.asm"
-.include "common/utils_wait.asm"
-
-
-#define COM_ACCEPT_ALL_DEST
-
-
-
-; ***************************************************************************
-; defines
-
-; ---------------------------------------------------------------------------
-; LED
-
-.equ LED_DDR = DDRA
-.equ LED_PORT = PORTA
-.equ LED_PIN = PINA
-.equ LED_PINNUM = PORTA3
-
-
-; ***************************************************************************
-; code segment
-
-.cseg
-.org 0x0000
-
-
-
-; ---------------------------------------------------------------------------
-; Reset and interrupt vectors
-; rjmp start ; Reset vector
- rjmp main ; Reset vector
- reti ; EXT_INT0
- reti ; PCI0
- reti ; PCI1
- reti ; WATCHDOG
- reti ; ICP1
- reti ; OC1A
- reti ; OC1B
- reti ; OVF1
- reti ; OC0A
- reti ; OC0B
- reti ; OVF0
- reti ; ACI
- reti ; ADCC
- reti ; ERDY
- reti ; USI_STR
- reti ; USI_OVF
-
-
-devInfoBlock: ; 12 bytes
-devInfoManufacturer: .db 'A', 'Q', 'U', 'A'
-devInfoId: .db DEVICEINFO_ID, 0
-devInfoVersion: .db DEVICEINFO_VERSION, DEVICEINFO_REVISION ; version, revision
-firmwareVersion: .db FIRMWARE_VARIANT_BOOT, FIRMWARE_VERSION_MAJOR
- .db FIRMWARE_VERSION_MINOR, FIRMWARE_VERSION_PATCHLEVEL
-
-firmwareStart: rjmp main ; will be overwritten when flashing
-
-
-
-; ***************************************************************************
-; main code
-
-
-.org BOOTLOADER_ADDR
-
-
-main:
- rjmp bootLoader ; this routine is in modules/bootloader/main.asm
-
-
-
-; ***************************************************************************
-; includes
-
-.include "common/utils_wait_fixed.asm"
-.include "common/utils_copy_from_flash.asm"
-.include "common/utils_copy_sdram.asm"
-
-.include "modules/flash/defs.asm"
-.include "modules/flash/eeprom.asm"
-.include "modules/flash/io.asm"
-.include "modules/flash/io_attn.asm"
-.include "modules/flash/io_bitbang.asm"
-.include "modules/flash/flash1p.asm"
-.include "modules/flash/flashxp.asm"
-.include "modules/flash/flashprocess.asm"
-.include "modules/flash/wait.asm"
-.include "modules/bootloader/main.asm"
-.include "modules/network/msg/defs.asm"
-.include "modules/network/msg/crc.asm"
-
-;.include "common/debug.asm"
-
-
-
-systemSetSpeed:
-.if clock == 8000000
- ldi r16, (1<
-
-
-
-
-
-
- -I $(builddir)
- -I $(srcdir)
- -I $(topsrcdir)/avr
- -I $(topbuilddir)/avr
-
-
-
-
- main.asm
-
-
-
-
-
-
-
-
-
-
-
- data.asm
-
-
-
-
-
-
diff --git a/avr/devices/n23/main/data.asm b/avr/devices/n23/main/data.asm
deleted file mode 100644
index 31ccc2f..0000000
--- a/avr/devices/n23/main/data.asm
+++ /dev/null
@@ -1,14 +0,0 @@
-; ***************************************************************************
-; copyright : (C) 2025 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. *
-; ***************************************************************************
-
-
-
-.dseg
-
-
diff --git a/avr/devices/n23/main/main.asm b/avr/devices/n23/main/main.asm
deleted file mode 100644
index 895bb69..0000000
--- a/avr/devices/n23/main/main.asm
+++ /dev/null
@@ -1,221 +0,0 @@
-; ***************************************************************************
-; copyright : (C) 2024 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. *
-; ***************************************************************************
-
-
-
-
-; ***************************************************************************
-; Source file for temperature sensor node on AtTiny 84
-;
-; This is for the full system (i.e. not the boot loader).
-;
-; All definitions and changes should go into this file.
-;
-;
-; ***************************************************************************
-
-
-.equ clock=1000000 ; Define the clock frequency
-;.equ clock=8000000 ; Define the clock frequency
-
-
-
-.nolist
-.include "include/tn84def.inc" ; Define device ATtiny84
-.list
-
-.include "version.asm"
-.include "../defs.asm"
-.include "./data.asm"
-
-.include "devices/all/defs.asm"
-.include "common/calls.asm"
-.include "common/utils_io.asm"
-.include "common/utils_wait.asm"
-
-
-
-; ***************************************************************************
-; defines
-
-; ---------------------------------------------------------------------------
-; generic
-
-.equ NET_BUFFERS_NUM = 6
-
-.equ PROGRAM_SENSOR_INTERVAL_SECS = 60
-.equ PROGRAM_STATS_INTERVAL_MINS = 10
-
-
-
-; ---------------------------------------------------------------------------
-; firmware settings including list of modules used
-
-; #define MODULES_TIMER
-#define MODULES_CLOCK
-#define MODULES_LED_SIMPLE
-#define MODULES_NETWORK
-#define MODULES_UART_BITBANG
-#define MODULES_TWI_MASTER
-;#define MODULES_LCD
-;#define LCD_MINIMAL_FONT
-#define MODULES_SI7021
-#define MODULES_SGP30
-;#define MODULES_SGP40
-;#define MODULES_STATS
-;#define MODULES_OWI_MASTER
-;#define MODULES_DS18B20
-#define MODULES_MOTION
-;#define MODULES_CCS811
-
-#define APPS_NETWORK
-#define APPS_MOTION
-#define APPS_REPORTSENSORS
-#define APPS_STATS
-
-
-
-; ---------------------------------------------------------------------------
-; defines for values
-
-.equ VALUE_ID_SI7021_TEMP = 0x01
-.equ VALUE_ID_SI7021_HUM = 0x02
-
-.equ VALUE_ID_ADC = 0x03
-;.equ VALUE_ID_DS18B20_TEMP = 0x06
-.equ VALUE_ID_MOTION = 0x07
-
-.equ VALUE_ID_SGP40_TVOC = 0x08
-
-.equ VALUE_ID_SGP30_TVOC = 0x09
-.equ VALUE_ID_SGP30_CO2 = 0x0a
-
-;.equ VALUE_ID_REED_CONF = 0x81
-
-.equ VALUE_ID_DEBUG = 0x7f
-
-.equ VALUE_ID_LEDSIMPLE_TIMING = 0x88
-
-
-
-
-
-; ***************************************************************************
-; code segment
-
-.cseg
-.org 000000
-
-
-
-; ---------------------------------------------------------------------------
-; Reset and interrupt vectors (will be removed as soon as we can flash data over COM)
-
-; rjmp main ; Reset vector
- rjmp BOOTLOADER_ADDR ; Reset vector ; use this for flashed system
- reti ; EXT_INT0
- rjmp UART_BitBang_PcintIsr ; PCI0
- reti ; PCI1
- reti ; WATCHDOG
- reti ; ICP1
- reti ; OC1A
- reti ; OC1B
- reti ; OVF1
- rjmp baseTimerIrqOC0A ; OC0A
- reti ; OC0B
- reti ; OVF0
- reti ; ACI
- reti ; ADCC
- reti ; ERDY
- reti ; USI_STR
- reti ; USI_OVF
-
-
-devInfoBlock: ; 12 bytes
-devInfoManufacturer: .db 'A', 'Q', 'U', 'A'
-devInfoId: .db DEVICEINFO_ID, 0
-devInfoVersion: .db DEVICEINFO_VERSION, DEVICEINFO_REVISION ; version, revision
-firmwareVersion: .db FIRMWARE_VARIANT_TEMP_WINDOW, FIRMWARE_VERSION_MAJOR
- .db FIRMWARE_VERSION_MINOR, FIRMWARE_VERSION_PATCHLEVEL
-
-
-
-; ---------------------------------------------------------------------------
-; @routine firmwareStart @global
-
-firmwareStart:
- rjmp main
-; @end
-
-
-
-; ---------------------------------------------------------------------------
-; @routine onSystemStart
-
-onSystemStart:
- ret
-; @end
-
-
-
-; ---------------------------------------------------------------------------
-; @routine onMessageReceived
-;
-; Called on every message received
-
-onMessageReceived:
- clc
- ret
-; @end
-
-
-
-; ---------------------------------------------------------------------------
-; @routine onEvery100ms
-;
-; Called every 100ms. Add your routine calls here. No arguments, no results.
-
-onEvery100ms:
-onEverySecond:
-onEveryMinute:
-onEveryHour:
-onEveryDay:
- ret
-; @end
-
-
-
-; ---------------------------------------------------------------------------
-; @routine onEveryLoop
-;
-; Called on every loop (i.e. after awakening from sleep).
-;
-onEveryLoop:
- ret
-; @end
-
-
-
-
-
-; ***************************************************************************
-; includes
-
-.include "devices/all/hw_tn84.asm"
-.include "devices/all/includes.asm"
-
-
-
-; ---------------------------------------------------------------------------
-; defines for network interface
-
-.equ netInterfaceData = uart_bitbang_iface
-
-
-
diff --git a/avr/devices/r02/.gitignore b/avr/devices/r02/.gitignore
deleted file mode 100644
index 8e0618c..0000000
--- a/avr/devices/r02/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-*.eep.hex
-*.obj
diff --git a/avr/devices/r02/0BUILD b/avr/devices/r02/0BUILD
deleted file mode 100644
index c82f090..0000000
--- a/avr/devices/r02/0BUILD
+++ /dev/null
@@ -1,52 +0,0 @@
-
-
-
-
-
-
-
- -I $(builddir)
- -I $(srcdir)
- -I $(topsrcdir)/avr
- -I $(topbuilddir)/avr
-
-
-
-
- main.asm
-
-
-
-
-
-
-
-
-
-
- -I $(builddir)
- -I $(srcdir)
- -I $(topsrcdir)/avr
- -I $(topbuilddir)/avr
-
-
-
-
- boot.asm
-
-
-
-
-
-
-
-
-
-
- defs.asm
-
-
-
-
-
-
diff --git a/avr/devices/r02/boot.asm b/avr/devices/r02/boot.asm
deleted file mode 100644
index 5fb6ebe..0000000
--- a/avr/devices/r02/boot.asm
+++ /dev/null
@@ -1,163 +0,0 @@
-; ***************************************************************************
-; Source file for base system node on AtTiny 84
-;
-; This is for the maintenance system (i.e. the flash loader).
-;
-; All definitions and changes should go into this file.
-; ***************************************************************************
-
-.equ clock=1000000 ; Define the clock frequency
-
-.nolist
-.include "include/tn841def.inc" ; Define device ATtiny841
-.list
-
-.include "./defs.asm"
-.include "defs_all.asm"
-
-
-
-; ***************************************************************************
-; defines
-
-; ---------------------------------------------------------------------------
-; generic
-
-.include "common/utils_wait.asm"
-.include "modules/com2/defs.asm"
-.include "modules/comproto/defs.asm"
-
-
-
-; ---------------------------------------------------------------------------
-; firmware settings
-
-.equ FIRMWARE_VERSION_MAJOR = 0
-.equ FIRMWARE_VERSION_MINOR = 0
-.equ FIRMWARE_VERSION_PATCHLEVEL = 1
-
-
-
-; ---------------------------------------------------------------------------
-; LED
-
-.equ LED_DDR = DDRB
-.equ LED_PORT = PORTB
-.equ LED_PIN = PINB
-.equ LED_PINNUM = PORTB2
-
-
-; ***************************************************************************
-; code segment
-
-.cseg
-.org 0x0000
-
-
-
-; ---------------------------------------------------------------------------
-; Reset and interrupt vectors
-; rjmp start ; Reset vector
- rjmp main ; Reset vector
- reti ; EXT_INT0
- reti ; PCI0
- reti ; PCI1
- reti ; WATCHDOG
- reti ; ICP1
- reti ; OC1A
- reti ; OC1B
- reti ; OVF1
- reti ; OC0A
- reti ; OC0B
- reti ; OVF0
- reti ; ACI
- reti ; ADCC
- reti ; ERDY
- reti ; USI_STR
- reti ; USI_OVF
-
-
-devInfoBlock: ; 12 bytes
-devInfoManufacturer: .db 'A', 'Q', 'U', 'A'
-devInfoId: .db 'R', 0
-devInfoVersion: .db 2, 0 ; version, revision
-firmwareVersion: .db FIRMWARE_VARIANT_BOOT, FIRMWARE_VERSION_MAJOR
- .db FIRMWARE_VERSION_MINOR, FIRMWARE_VERSION_PATCHLEVEL
-
-firmwareStart: rjmp main ; will be overwritten when flashing
-
-
-
-; ***************************************************************************
-; main code
-
-
-.org BOOTLOADER_ADDR
-
-
-main:
-; rjmp debugStop
- rjmp bootLoader ; this routine is in modules/flash/proto.asm
-
-
-
-
-; ***************************************************************************
-; includes
-
-.include "modules/uart_bitbang/bytelevel.asm"
-.include "modules/uart_bitbang/packetlevel.asm"
-.include "modules/com2/crc.asm"
-.include "common/crc8.asm"
-.include "common/utils_wait_fixed.asm"
-.include "common/utils_copy_from_flash.asm"
-.include "common/utils_copy_sdram.asm"
-.include "modules/flash/bootloader.asm"
-.include "modules/flash/flash.asm"
-.include "modules/flash/recv.asm"
-.include "modules/flash/send.asm"
-.include "modules/flash/wait.asm"
-.include "modules/flash/hdl_flash_start.asm"
-.include "modules/flash/hdl_flash_data.asm"
-.include "modules/flash/hdl_flash_end.asm"
-.include "modules/flash/flash_rsp.asm"
-.include "modules/flash/flash_ready.asm"
-
-
-#if 1
-debugStop:
- cli
- sbi LED_SIMPLE_DDR, LED_SIMPLE_PINNUM ; out
- cbi LED_SIMPLE_PORT, LED_SIMPLE_PINNUM ; on
-
- cbi COM_ATTN_DDR, COM_ATTN_PIN ; set ATTN port as input
- cbi COM_ATTN_OUTPUT, COM_ATTN_PIN ; disable internal pullup for ATTN
-
- ldi r18, 0
-test_loop1:
- ldi r16, 100
-test_loop2:
- ldi r17, 100
-test_loop3:
- Utils_WaitNanoSecs 10000, 0, r22
- dec r17
- brne test_loop3
- dec r16
- brne test_loop2
- sbi LED_SIMPLE_PORTIN, LED_SIMPLE_PINNUM ; toggle
- inc r18
- mov r19, r18
- andi r19, 1
- brne test1
- sbi COM_ATTN_DDR, COM_ATTN_PIN
- cbi COM_ATTN_OUTPUT, COM_ATTN_PIN
- rjmp test_loop1
-test1:
- cbi COM_ATTN_DDR, COM_ATTN_PIN
- cbi COM_ATTN_OUTPUT, COM_ATTN_PIN
-
- rjmp test_loop1
-#endif
-
-
-
diff --git a/avr/devices/r02/defs.asm b/avr/devices/r02/defs.asm
deleted file mode 100644
index e331a5b..0000000
--- a/avr/devices/r02/defs.asm
+++ /dev/null
@@ -1,87 +0,0 @@
-; ***************************************************************************
-; copyright : (C) 2024 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. *
-; ***************************************************************************
-
-
-; ***************************************************************************
-;
-; AtTiny 841
-; -------
-; VCC 1 14 GND
-; PB0 2 13 PA0 ATTN0
-; PB1 3 12 PA1 TXD0 (UART0)
-; /RESET PB3 4 11 PA2 RXD0 (UART0)
-; LED PB2 5 10 PA3 ATTN1
-; 1-wire PA7 6 9 PA4 RXD1 (UART1) [SCK, PRG]
-; [MOSI,PRG] SDA (I2C) PA6 7 8 PA5 TXD1 (UART1) [MISO, PRG]
-; -------
-;
-; ***************************************************************************
-
-
-
-.equ BOOTLOADER_ADDR = 0xd00
-
-.equ FIRMWARE_VARIANT_BOOT = 0
-.equ FIRMWARE_VARIANT_TEMP_WINDOW = 1
-
-
-
-; ---------------------------------------------------------------------------
-; LED module
-
-.equ LED_SIMPLE_ONTIME = 2
-.equ LED_SIMPLE_OFFTIME = 30
-.equ LED_SIMPLE_DDR = DDRB
-.equ LED_SIMPLE_PORT = PORTB
-.equ LED_SIMPLE_PORTIN = PINB
-.equ LED_SIMPLE_PINNUM = PORTB2
-
-
-
-; ---------------------------------------------------------------------------
-; 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 = PORTA2
-
-.equ COM_ATTN_DDR = DDRA
-.equ COM_ATTN_INPUT = PINA
-.equ COM_ATTN_OUTPUT = PORTA
-.equ COM_ATTN_PIN = PORTA0
-
-.equ COM_IRQ_ADDR_ATTN = PCMSK0
-.equ COM_IRQ_BIT_ATTN = PCINT0 ; bit 7 in PCMSK0
-.equ COM_IRQ_GIFR_ATTN = PCIF0
-.equ COM_IRQ_GIMSK_ATTN = PCIE0
-
-
-
-; ---------------------------------------------------------------------------
-; LCD module
-
-.equ LCD_TWI_ADDRESS = 0x3c
-
-
-
-; ---------------------------------------------------------------------------
-; 1-Wire Master
-;
-
-.equ OWI_DDR = DDRA
-.equ OWI_PORTOUT = PORTA
-.equ OWI_PORTIN = PINA
-.equ OWI_PINNUM = PORTA7
-
-
-
diff --git a/avr/devices/r02/main.asm b/avr/devices/r02/main.asm
deleted file mode 100644
index cd2e59c..0000000
--- a/avr/devices/r02/main.asm
+++ /dev/null
@@ -1,448 +0,0 @@
-; ***************************************************************************
-; copyright : (C) 2024 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. *
-; ***************************************************************************
-
-
-
-
-; ***************************************************************************
-; Source file for temperature sensor node on AtTiny 84
-;
-; This is for the full system (i.e. not the boot loader).
-;
-; All definitions and changes should go into this file.
-;
-;
-; ***************************************************************************
-
-
-.equ clock=1000000 ; Define the clock frequency
-;.equ clock=8000000 ; Define the clock frequency
-
-
-
-.nolist
-.include "include/tn841def.inc" ; Define device ATtiny841
-.list
-
-.include "./defs.asm"
-.include "defs_all.asm"
-
-
-
-; ***************************************************************************
-; defines
-
-; ---------------------------------------------------------------------------
-; generic
-
-
-.include "common/utils_wait.asm"
-
-
-; ---------------------------------------------------------------------------
-; firmware settings including list of modules used
-
-.equ FIRMWARE_VERSION_MAJOR = 0
-.equ FIRMWARE_VERSION_MINOR = 0
-.equ FIRMWARE_VERSION_PATCHLEVEL = 1
-
-
-#define MODULES_TIMER
-#define MODULES_COM
-#define MODULES_COM_WITH_ADDR_PROTO
-;#define MODULES_LED
-#define MODULES_LED_SIMPLE
-;#define MODULES_TWI_MASTER
-;#define MODULES_LCD
-#define LCD_MINIMAL_FONT
-;#define MODULES_SI7021
-#define MODULES_STATS
-;#define MODULES_CNY70
-;#define MODULES_REED
-#define MODULES_OWI_MASTER
-;#define MODULES_DS18B20
-;#define MODULES_MOTION
-
-
-
-; ***************************************************************************
-; code segment
-
-.cseg
-.org 000000
-
-
-
-; ---------------------------------------------------------------------------
-; Reset and interrupt vectors (will be removed as soon as we can flash data over COM)
-
-; rjmp main ; Reset vector
- rjmp BOOTLOADER_ADDR ; Reset vector ; use this for flashed system
- reti ; EXT_INT0
- rjmp uartBitbangIsrPcint0 ; PCI0
- reti ; PCI1
- reti ; WATCHDOG
- reti ; ICP1
- reti ; OC1A
- reti ; OC1B
- reti ; OVF1
- rjmp baseTimerIrqOC0A ; OC0A
- reti ; OC0B
- reti ; OVF0
- reti ; ACI
- reti ; ADCC
- reti ; ERDY
- reti ; USI_STR
- reti ; USI_OVF
-
-
-devInfoBlock: ; 12 bytes
-devInfoManufacturer: .db 'A', 'Q', 'U', 'A'
-devInfoId: .db 'R', 0
-devInfoVersion: .db 2, 0 ; version, revision
-firmwareVersion: .db FIRMWARE_VARIANT_TEMP_WINDOW, FIRMWARE_VERSION_MAJOR
- .db FIRMWARE_VERSION_MINOR, FIRMWARE_VERSION_PATCHLEVEL
-
-firmwareStart: rjmp main
-
-
-; ***************************************************************************
-; includes
-
-.include "common/utils.asm"
-.include "common/utils_wait_fixed.asm"
-.include "common/utils_copy_from_flash.asm"
-.include "common/utils_copy_sdram.asm"
-.include "common/crc8.asm"
-
-.include "modules/basetimer/main.asm"
-
-#ifdef MODULES_TIMER
- .include "modules/timer/main.asm"
-#endif
-#ifdef MODULES_LED
-.include "modules/led/main.asm"
-#endif
-#ifdef MODULES_LED_SIMPLE
-.include "modules/led_simple/main.asm"
-#endif
-#ifdef MODULES_COM
- .include "modules/com2/defs.asm"
- .include "modules/com2/main.asm"
- .include "modules/com2/buffer.asm"
- .include "modules/uart_bitbang/defs.asm"
- .include "modules/uart_bitbang/main.asm"
- .include "modules/uart_bitbang/bytelevel.asm"
- .include "modules/uart_bitbang/packetlevel.asm"
- #ifdef MODULES_COM_WITH_ADDR_PROTO
- .include "modules/comproto/defs.asm"
- .include "modules/comproto/main.asm"
- .include "modules/comproto/addr.asm"
- .include "modules/comproto/msg_recvstats.asm"
- .include "modules/comproto/msg_sendstats.asm"
- .include "modules/comproto/msg_sysstats.asm"
- .include "modules/comproto/msg_memstats.asm"
- .include "modules/comproto/msg_pong.asm"
- .include "modules/comproto/msg_value.asm"
- .include "modules/comproto/msg_device.asm"
- .include "modules/comproto/msg_reboot.asm"
- #endif
- #ifdef MODULES_LCD
- .include "modules/com2/screen.asm"
- .include "modules/comproto/screen.asm"
- #endif
-#endif
-#ifdef MODULES_TWI_MASTER
- .include "modules/twimaster/main.asm"
-#endif
-#ifdef MODULES_OWI_MASTER
- .include "modules/owimaster/main.asm"
-#endif
-#ifdef MODULES_LCD
- .include "modules/lcd/main.asm"
-#endif
-#ifdef MODULES_SI7021
- .include "modules/si7021/main.asm"
-#endif
-#ifdef MODULES_DS18B20
- .include "modules/ds18b20/main.asm"
-#endif
-#ifdef MODULES_STATS
- .include "modules/stats/main.asm"
-#endif
-#ifdef MODULES_CNY70
- .include "modules/cny70/main.asm"
-#endif
-#ifdef MODULES_REED
- .include "modules/reed/main.asm"
-#endif
-
-#ifdef MODULES_MOTION
- .include "modules/motion/main.asm"
-#endif
-
-; test
-;#include "modules/uart_irq/defs.asm"
-;#include "modules/uart_irq/iface.asm"
-;#include "modules/uart_irq/iface1.asm"
-
-
-; ***************************************************************************
-; data in SRAM
-
-.dseg
-
-programRamBegin:
-#ifdef MODULES_LCD
- screenCounter: .byte 1
-#endif
-
-programRamEnd:
-
-
-
-#ifdef MODULES_LCD
- sramTimerWriteStats: .byte 2
- sramTimerScreen: .byte 2
-#endif
-#ifdef MODULES_SI7021
- sramTimerSI7021Measure: .byte 2
- sramTimerSI7021SendTemp: .byte 2
- sramTimerSI7021SendHumidity: .byte 2
-#endif
-#ifdef MODULES_CNY70
- sramTimerCny70SendAdc: .byte 2
-#endif
-#ifdef MODULES_LCD
- sramPeriodicalLcdMark: .byte 2
-#endif
-#ifdef MODULES_DS18B20
- sramDs18b20Timer: .byte 2
- sramSendDs18b20TempTimer: .byte 2
-#endif
-
-
-; ***************************************************************************
-; data in FLASH
-
-.cseg
-
-
-
-; ---------------------------------------------------------------------------
-; timer list
-
-
-timerList:
-; SRAM variable/counter routine flags secs (0=don't start or restart)
-#ifdef MODULES_COM_WITH_ADDR_PROTO
- .dw cproAddresModeTimer, CPRO_Address_OnTimer, 0, 0 ; (no restart)
-#endif
-#ifdef MODULES_STATS
- .dw statsSendTimer, Stats_Timer, TIMER_FLAGS_IF_ADDR, 9000 ; every 15m
-#endif
-#ifdef MODULES_LCD
-; .dw sramPeriodicalLcdMark, periodicalLcdMark, 0, 20 ; every 2s
-; .dw sramTimerWriteStats, writeStats, 0, 100
- .dw sramTimerScreen, printScreen, TIMER_FLAGS_IF_ADDR, 50 ; every 5s
-#endif
-#ifdef MODULES_SI7021
- .dw sramTimerSI7021Measure, SI7021_OnTimer, 0, 300 ; every 30s
- .dw sramTimerSI7021SendTemp, sendSI7021Temp, TIMER_FLAGS_IF_ADDR, 600 ; every 60s
- .dw sramTimerSI7021SendHumidity, sendSI7021Humidity, TIMER_FLAGS_IF_ADDR, 600 ; every 60s
-#endif
-#ifdef MODULES_CNY70
- .dw sramTimerCny70SendAdc, CNY70_OnTimer, TIMER_FLAGS_IF_ADDR, 50 ; every 5s
-#endif
-#ifdef MODULES_DS18B20
- .dw sramDs18b20Timer, Ds18b20_OnTimer, 0, 300 ; every 30s
- .dw sramSendDs18b20TempTimer, sendDs18b20Temp, TIMER_FLAGS_IF_ADDR, 600 ; every 60s
-#endif
- .dw 0 ; end of list
-
-
-
-
-
-.include "main_all.asm"
-
-
-
-systemSetSpeed:
-.if clock == 8000000
- ldi r16, (1<
-
-
-
-
- boot
- main
- test
-
-
-
- defs.asm
- README
-
-
-
- aqua_r04.xml
-
-
-
-
-
-
diff --git a/avr/devices/r04/README b/avr/devices/r04/README
deleted file mode 100644
index 388a291..0000000
--- a/avr/devices/r04/README
+++ /dev/null
@@ -1,13 +0,0 @@
-
-R04
-===
-
-- Role: Router
-- MCU: AtTiny841
-- Connection: RJ45
-- Predecessor: none
-- UART: comonuart0 (uart_hw2), comonuart1 (uart_hw2)
-- Periphery:
- - OWI interface
- - DS18B20 temperature sensor
-
diff --git a/avr/devices/r04/aqua_r04.xml b/avr/devices/r04/aqua_r04.xml
deleted file mode 100644
index a9b72ef..0000000
--- a/avr/devices/r04/aqua_r04.xml
+++ /dev/null
@@ -1,34 +0,0 @@
-
-
- AQUA
- R
- 4
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/avr/devices/r04/boot/0BUILD b/avr/devices/r04/boot/0BUILD
deleted file mode 100644
index b2940e7..0000000
--- a/avr/devices/r04/boot/0BUILD
+++ /dev/null
@@ -1,32 +0,0 @@
-
-
-
-
-
-
-
- -I $(builddir)
- -I $(srcdir)
- -I $(topsrcdir)/avr
- -I $(topbuilddir)/avr
-
-
-
-
- boot.asm
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/avr/devices/r04/boot/boot.asm b/avr/devices/r04/boot/boot.asm
deleted file mode 100644
index ac3da73..0000000
--- a/avr/devices/r04/boot/boot.asm
+++ /dev/null
@@ -1,152 +0,0 @@
-; ***************************************************************************
-; Source file for base system node on AtTiny 84
-;
-; This is for the maintenance system (i.e. the flash loader).
-;
-; All definitions and changes should go into this file.
-; ***************************************************************************
-
-;.equ clock=1000000 ; Define the clock frequency
-.equ clock=8000000 ; Define the clock frequency
-
-.nolist
-.include "include/tn841def.inc" ; Define device ATtiny841
-.list
-
-.include "version.asm"
-.include "../defs.asm"
-.include "devices/all/defs.asm"
-
-.include "common/calls.asm"
-.include "common/utils_wait.asm"
-
-
-
-; ***************************************************************************
-; defines
-
-
-;#define COM_ACCEPT_ALL_DEST 1
-
-
-
-; ---------------------------------------------------------------------------
-; LED
-
-.equ LED_DDR = DDRB
-.equ LED_PORT = PORTB
-.equ LED_PIN = PINB
-.equ LED_PINNUM = PORTB2
-
-
-
-; ***************************************************************************
-; code segment
-
-.cseg
-.org 0x0000
-
-
-
-; ---------------------------------------------------------------------------
-; Reset and interrupt vectors
-
- rjmp main ; 1: RESET Reset vector use this for flashed system
- reti ; 2: INT0 External Interrupt Request 0
- reti ; 3: PCINT0 Pin Change Interrupt 0
- reti ; 4: PCINT1 Pin Change Interrupt 1
- reti ; 5: WDT Watchdog Time-out
- reti ; 6: TIM1_CAPT Timer/Counter1 Capture Event
- reti ; 7: TIM1_COMPA (OC1A) Timer/Counter1 Compare Match A
- reti ; 8: TIM1_COMPB (OC1B) Timer/Counter1 Compare Match B
- reti ; 9: TIM1_OVF (OVF1) Timer/Counter1 Overflow
- reti ; 10: TIM0_COMPA (OC0A) Timer/Counter0 Compare Match A
- reti ; 11: TIM0_COMPB (OC0B) Timer/Counter0 Compare Match B
- reti ; 12: TIM0_OVF (OVF0) Timer/Counter0 Overflow
- reti ; 13: ANA_COMP0 Analog Comparator 0
- reti ; 14: ADC_READY ADC Conversion Complete
- reti ; 15: EE_RDY (ERDY) EEPROM Ready
- reti ; 16: ANA_COMP1 Analog Comparator 1
- reti ; 17: TIM2_CAPT Timer/Counter2 Capture Event
- reti ; 18: TIM2_COMPA (OC2A) Timer/Counter2 Compare Match A
- reti ; 19: TIM2_COMPB (OC2B) Timer/Counter2 Compare Match B
- reti ; 20: TIM2_OVF (OVF2) Timer/Counter2 Overflow
- reti ; 21: SPI SPI Serial Transfer Complete
- reti ; 22: USART0_RXS USART0 Rx Start
- reti ; 23: USART0_RXC USART0 Rx Complete
- reti ; 24: USART0_DRE USART0 Data Register Empty
- reti ; 25: USART0_TXC USART0 Tx Complete
- reti ; 26: USART1_RXS USART1 Rx Start
- reti ; 27: USART1_RXC USART1 Rx Complete
- reti ; 28: USART1_DRE USART1 Data Register Empty
- reti ; 29: USART1_TXC USART1 Tx Complete
- reti ; 30: TWI Two-Wire-Interface
- reti ; 31: RESERVED reserved
-
-
-
-devInfoBlock: ; 12 bytes
-devInfoManufacturer: .db 'A', 'Q', 'U', 'A'
-devInfoId: .db DEVICEINFO_ID, 0
-devInfoVersion: .db DEVICEINFO_VERSION, DEVICEINFO_REVISION ; version, revision
-firmwareVersion: .db FIRMWARE_VARIANT_BOOT, FIRMWARE_VERSION_MAJOR
- .db FIRMWARE_VERSION_MINOR, FIRMWARE_VERSION_PATCHLEVEL
-
-firmwareStart:
- rjmp main ; will be overwritten when flashing
-
-
-
-; ***************************************************************************
-; main code
-
-
-.org BOOTLOADER_ADDR
-
-
-main:
- rjmp bootLoader ; this routine is in modules/bootloader/main.asm
-
-
-
-
-; ***************************************************************************
-; includes
-
-.include "common/utils_wait_fixed.asm"
-.include "common/utils_copy_from_flash.asm"
-.include "common/utils_copy_sdram.asm"
-
-.include "modules/flash/defs.asm"
-.include "modules/flash/eeprom.asm"
-.include "modules/flash/io.asm"
-.include "modules/flash/io_attn.asm"
-.include "modules/flash/io_bitbang.asm"
-.include "modules/flash/flashxp.asm"
-.include "modules/flash/flash4p.asm"
-.include "modules/flash/flashprocess.asm"
-.include "modules/flash/wait.asm"
-.include "modules/bootloader/main.asm"
-.include "modules/network/msg/defs.asm"
-.include "modules/network/msg/crc.asm"
-
-
-
-systemSetSpeed:
-.if clock == 1000000
- ldi r17, 0xd8
- ldi r16, (1<
-
-
-
-
-
-
- -I $(builddir)
- -I $(srcdir)
- -I $(topsrcdir)/avr
- -I $(topbuilddir)/avr
-
-
-
-
- main.asm
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/avr/devices/r04/main/main.asm b/avr/devices/r04/main/main.asm
deleted file mode 100644
index 2aeb170..0000000
--- a/avr/devices/r04/main/main.asm
+++ /dev/null
@@ -1,418 +0,0 @@
-; ***************************************************************************
-; copyright : (C) 2024 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. *
-; ***************************************************************************
-
-
-
-
-; ***************************************************************************
-; Source file for temperature sensor node on AtTiny 84
-;
-; This is for the full system (i.e. not the boot loader).
-;
-; All definitions and changes should go into this file.
-;
-;
-; ***************************************************************************
-
-
-;.equ clock=1000000 ; Define the clock frequency
-.equ clock=8000000 ; Define the clock frequency
-
-
-.nolist
-.include "include/tn841def.inc" ; Define device ATtiny841
-.list
-
-.include "../defs.asm"
-.include "version.asm"
-;.include "defs_all.asm"
-
-.include "devices/all/defs.asm"
-
-.include "common/calls.asm"
-.include "common/utils_wait.asm"
-.include "common/utils_io.asm"
-
-
-
-; ***************************************************************************
-; defines
-
-; ---------------------------------------------------------------------------
-; generic
-
-.equ COMONUART0_IFACENUM = 1
-.equ COMONUART1_IFACENUM = 2
-
-
-; ---------------------------------------------------------------------------
-; firmware settings including list of modules used
-
-
-#define MAIN_WITHOUT_MSG_HANDLING ; we do message handling ourselfes
-#define APP_STATS_NETDEV2
-
-#define MODULES_CLOCK
-;#define MODULES_COM
-;#define MODULES_COM_WITH_ADDR_PROTO
-;#define MODULES_LED
-#define MODULES_LED_SIMPLE
-;#define MODULES_TWI_MASTER
-;#define MODULES_LCD
-;#define LCD_MINIMAL_FONT
-;#define MODULES_SI7021
-;#define MODULES_STATS
-;#define MODULES_CNY70
-;#define MODULES_REED
-;#define MODULES_OWI_MASTER
-;#define MODULES_DS18B20
-;#define MODULES_MOTION
-#define MODULES_NETWORK
-;#define MODULES_TTYONUART1
-#define MODULES_COMONUART0
-#define MODULES_COMONUART1
-
-#define APPS_STATS
-#define APPS_NETWORK
-;#define APPS_REPORTSENSORS
-
-
-
-.equ NET_BUFFERS_NUM = 9
-
-.equ UART_HW_MSGNUMINBUF_SIZE = 8
-.equ UART_HW_MSGNUMOUTBUF_SIZE = 8
-
-
-
-; ---------------------------------------------------------------------------
-; defines for values
-
-.equ VALUE_ID_DS18B20_TEMP = 0x06
-
-.equ VALUE_ID_LEDSIMPLE_TIMING = 0x88
-
-
-; ***************************************************************************
-; code segment
-
-.cseg
-.org 000000
-
-
-
-; ---------------------------------------------------------------------------
-; Reset and interrupt vectors
-
- rjmp BOOTLOADER_ADDR ; 1: RESET Reset vector use this for flashed system
- reti ; 2: INT0 External Interrupt Request 0
- rjmp onAttnChangeIsr ; 3: PCINT0 Pin Change Interrupt 0
- reti ; 4: PCINT1 Pin Change Interrupt 1
- reti ; 5: WDT Watchdog Time-out
- reti ; 6: TIM1_CAPT Timer/Counter1 Capture Event
- reti ; 7: TIM1_COMPA (OC1A) Timer/Counter1 Compare Match A
- reti ; 8: TIM1_COMPB (OC1B) Timer/Counter1 Compare Match B
- reti ; 9: TIM1_OVF (OVF1) Timer/Counter1 Overflow
- rjmp baseTimerIrqOC0A ; 10: TIM0_COMPA (OC0A) Timer/Counter0 Compare Match A
- reti ; 11: TIM0_COMPB (OC0B) Timer/Counter0 Compare Match B
- reti ; 12: TIM0_OVF (OVF0) Timer/Counter0 Overflow
- reti ; 13: ANA_COMP0 Analog Comparator 0
- reti ; 14: ADC_READY ADC Conversion Complete
- reti ; 15: EE_RDY (ERDY) EEPROM Ready
- reti ; 16: ANA_COMP1 Analog Comparator 1
- reti ; 17: TIM2_CAPT Timer/Counter2 Capture Event
- reti ; 18: TIM2_COMPA (OC2A) Timer/Counter2 Compare Match A
- reti ; 19: TIM2_COMPB (OC2B) Timer/Counter2 Compare Match B
- reti ; 20: TIM2_OVF (OVF2) Timer/Counter2 Overflow
- reti ; 21: SPI SPI Serial Transfer Complete
- reti ; 22: USART0_RXS USART0 Rx Start
- rjmp ComOnUart0_RxCharIsr ; 23: USART0_RXC USART0 Rx Complete
- rjmp ComOnUart0_TxUdreIsr ; 24: USART0_DRE USART0 Data Register Empty
- rjmp ComOnUart0_TxCharIsr ; 25: USART0_TXC USART0 Tx Complete
- reti ; 26: USART1_RXS USART1 Rx Start
- rjmp ComOnUart1_RxCharIsr ; 27: USART1_RXC USART1 Rx Complete
- rjmp ComOnUart1_TxUdreIsr ; 28: USART1_DRE USART1 Data Register Empty
- rjmp ComOnUart1_TxCharIsr ; 29: USART1_TXC USART1 Tx Complete
- reti ; 30: TWI Two-Wire-Interface
- reti ; 31: RESERVED reserved
-
-
-
-devInfoBlock: ; 12 bytes
-devInfoManufacturer: .db 'A', 'Q', 'U', 'A'
-devInfoId: .db DEVICEINFO_ID, 0
-devInfoVersion: .db DEVICEINFO_VERSION, DEVICEINFO_REVISION ; version, revision
-firmwareVersion: .db FIRMWARE_VARIANT_TEMP_WINDOW, FIRMWARE_VERSION_MAJOR
- .db FIRMWARE_VERSION_MINOR, FIRMWARE_VERSION_PATCHLEVEL
-
-
-
-; ---------------------------------------------------------------------------
-; @routine firmwareStart @global
-
-firmwareStart:
- rjmp main
-; @end
-
-
-
-; ---------------------------------------------------------------------------
-; @routine onSystemStart
-
-onSystemStart:
- ; set interface number for UART0
- ldi r16, COMONUART0_IFACENUM
- sts comOnUart0_iface+NET_IFACE_OFFS_IFACENUM, r16
- ; set interface number for UART1
- ldi r16, COMONUART1_IFACENUM
- sts comOnUart1_iface+NET_IFACE_OFFS_IFACENUM, r16
-
- ret
-; @end
-
-
-
-
-
-
-
-onEvery100ms:
-onEverySecond:
-onEveryHour:
-onEveryDay:
- ret
-
-
-
-onEveryMinute:
- rcall sendPacketsIface2In
-; rcall sendErrorsIface2
- rcall sendDeviceUart1
- ret
-; @end
-
-
-
-; ---------------------------------------------------------------------------
-; @routine onEveryLoop
-;
-; Called on every loop (i.e. after awakening from sleep).
-
-onEveryLoop:
- rcall checkRecvdMsg
- ret
-; @end
-
-
-
-; ---------------------------------------------------------------------------
-; @routine onMessageReceived
-;
-; Called on every message received
-
-onMessageReceived:
- clc
- ret
-; @end
-
-
-
-; ---------------------------------------------------------------------------
-; @routine onAttnChange @global @isr
-;
-; Called whenever PCINT0 is activated.
-; This code assumes that both ATTN pins are on the same port which is true for
-; R04 nodes.
-
-onAttnChangeIsr:
- push r15
- in r15, SREG
- push r16
- inr r16, COM_ATTN1_INPUT
- sbrs r16, COM_ATTN1_PIN
- rcall ComOnUart1_HandleAttnChange ; (none)
-
- inr r16, COM_ATTN0_INPUT
- sbrs r16, COM_ATTN0_PIN
- rcall ComOnUart0_HandleAttnChange ; (none)
- pop r16
- out SREG, r15
- pop r15
- reti
-; @end
-
-
-
-; ---------------------------------------------------------------------------
-; @routine checkRecvdMsg
-;
-; Read messages from either interface and forward to the other one.
-
-checkRecvdMsg:
- rcall NET_PeekNextIncomingMsgNum ; check read queue (bufNum->r16)
- brcc checkRecvdMsg_end ; no msg, jmp
- rcall NET_Buffer_Locate ; (R17)
- ; let system handle incoming messages
- push r16
- push xl
- push xh
- adiw xh:xl, 1
- rcall letSysHandleMsg
- pop xh
- pop xl
- pop r16
-
- ; forward to other interface
- ld r17, X
- andi r17, (1<
-
-
-
-
-
-
- -I $(builddir)
- -I $(srcdir)
- -I $(topsrcdir)/avr
- -I $(topbuilddir)/avr
-
-
-
-
- main.asm
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/avr/devices/r04/test/main.asm b/avr/devices/r04/test/main.asm
deleted file mode 100644
index 795a5e8..0000000
--- a/avr/devices/r04/test/main.asm
+++ /dev/null
@@ -1,259 +0,0 @@
-; ***************************************************************************
-; copyright : (C) 2025 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. *
-; ***************************************************************************
-
-
-
-
-; ***************************************************************************
-; Source file for temperature sensor node on AtTiny 84
-;
-; This is for the full system (i.e. not the boot loader).
-;
-; All definitions and changes should go into this file.
-;
-;
-; ***************************************************************************
-
-
-;.equ clock=1000000 ; Define the clock frequency
-.equ clock=8000000 ; Define the clock frequency
-
-
-.nolist
-.include "include/tn841def.inc" ; Define device ATtiny841
-.list
-
-.include "../defs.asm"
-.include "version.asm"
-;.include "defs_all.asm"
-
-.include "devices/all/defs.asm"
-
-.include "common/calls.asm"
-.include "common/utils_wait.asm"
-.include "common/utils_io.asm"
-
-
-
-; ***************************************************************************
-; defines
-
-; ---------------------------------------------------------------------------
-; generic
-
-.equ COMONUART0_IFACENUM = 1
-.equ COMONUART1_IFACENUM = 2
-
-
-; ---------------------------------------------------------------------------
-; firmware settings including list of modules used
-
-
-;#define MAIN_WITHOUT_MSG_HANDLING ; we do message handling ourselfes
-;#define APP_STATS_NETDEV2
-
-#define MODULES_CLOCK
-;#define MODULES_COM
-;#define MODULES_COM_WITH_ADDR_PROTO
-;#define MODULES_LED
-#define MODULES_LED_SIMPLE
-;#define MODULES_TWI_MASTER
-;#define MODULES_LCD
-;#define LCD_MINIMAL_FONT
-;#define MODULES_SI7021
-;#define MODULES_STATS
-;#define MODULES_CNY70
-;#define MODULES_REED
-#define MODULES_OWI_MASTER
-#define MODULES_DS18B20
-;#define MODULES_MOTION
-#define MODULES_NETWORK
-;#define MODULES_TTYONUART1
-;#define MODULES_COMONUART0
-#define MODULES_COMONUART1
-
-#define APPS_STATS
-#define APPS_NETWORK
-#define APPS_REPORTSENSORS
-
-
-
-.equ NET_BUFFERS_NUM = 8
-
-.equ UART_HW_MSGNUMINBUF_SIZE = 8
-.equ UART_HW_MSGNUMOUTBUF_SIZE = 8
-
-
-
-; ---------------------------------------------------------------------------
-; defines for values
-
-.equ VALUE_ID_DS18B20_TEMP = 0x06
-
-.equ VALUE_ID_LEDSIMPLE_TIMING = 0x88
-
-
-; ***************************************************************************
-; code segment
-
-.cseg
-.org 000000
-
-
-
-; ---------------------------------------------------------------------------
-; Reset and interrupt vectors
-
- rjmp BOOTLOADER_ADDR ; 1: RESET Reset vector use this for flashed system
- reti ; 2: INT0 External Interrupt Request 0
- rjmp onAttnChangeIsr ; 3: PCINT0 Pin Change Interrupt 0
- reti ; 4: PCINT1 Pin Change Interrupt 1
- reti ; 5: WDT Watchdog Time-out
- reti ; 6: TIM1_CAPT Timer/Counter1 Capture Event
- reti ; 7: TIM1_COMPA (OC1A) Timer/Counter1 Compare Match A
- reti ; 8: TIM1_COMPB (OC1B) Timer/Counter1 Compare Match B
- reti ; 9: TIM1_OVF (OVF1) Timer/Counter1 Overflow
- rjmp baseTimerIrqOC0A ; 10: TIM0_COMPA (OC0A) Timer/Counter0 Compare Match A
- reti ; 11: TIM0_COMPB (OC0B) Timer/Counter0 Compare Match B
- reti ; 12: TIM0_OVF (OVF0) Timer/Counter0 Overflow
- reti ; 13: ANA_COMP0 Analog Comparator 0
- reti ; 14: ADC_READY ADC Conversion Complete
- reti ; 15: EE_RDY (ERDY) EEPROM Ready
- reti ; 16: ANA_COMP1 Analog Comparator 1
- reti ; 17: TIM2_CAPT Timer/Counter2 Capture Event
- reti ; 18: TIM2_COMPA (OC2A) Timer/Counter2 Compare Match A
- reti ; 19: TIM2_COMPB (OC2B) Timer/Counter2 Compare Match B
- reti ; 20: TIM2_OVF (OVF2) Timer/Counter2 Overflow
- reti ; 21: SPI SPI Serial Transfer Complete
- reti ; 22: USART0_RXS USART0 Rx Start
-; rjmp ComOnUart0_RxCharIsr ; 23: USART0_RXC USART0 Rx Complete
- reti ; 23: USART0_RXC USART0 Rx Complete
-; rjmp ComOnUart0_TxUdreIsr ; 24: USART0_DRE USART0 Data Register Empty
- reti ; 24: USART0_DRE USART0 Data Register Empty
-; rjmp ComOnUart0_TxCharIsr ; 25: USART0_TXC USART0 Tx Complete
- reti ; 25: USART0_TXC USART0 Tx Complete
- reti ; 26: USART1_RXS USART1 Rx Start
- rjmp ComOnUart1_RxCharIsr ; 27: USART1_RXC USART1 Rx Complete
-; reti ; 27: USART1_RXC USART1 Rx Complete
- rjmp ComOnUart1_TxUdreIsr ; 28: USART1_DRE USART1 Data Register Empty
-; reti ; 28: USART1_DRE USART1 Data Register Empty
- rjmp ComOnUart1_TxCharIsr ; 29: USART1_TXC USART1 Tx Complete
-; reti ; 29: USART1_TXC USART1 Tx Complete
- reti ; 30: TWI Two-Wire-Interface
- reti ; 31: RESERVED reserved
-
-
-
-devInfoBlock: ; 12 bytes
-devInfoManufacturer: .db 'A', 'Q', 'U', 'A'
-devInfoId: .db DEVICEINFO_ID, 0
-devInfoVersion: .db DEVICEINFO_VERSION, DEVICEINFO_REVISION ; version, revision
-firmwareVersion: .db FIRMWARE_VARIANT_TEMP_WINDOW, FIRMWARE_VERSION_MAJOR
- .db FIRMWARE_VERSION_MINOR, FIRMWARE_VERSION_PATCHLEVEL
-
-
-
-; ---------------------------------------------------------------------------
-; @routine firmwareStart @global
-
-firmwareStart:
- rjmp main
-; @end
-
-
-
-; ---------------------------------------------------------------------------
-; @routine onSystemStart
-
-onSystemStart:
- ; set interface number for UART0
-; ldi r16, COMONUART0_IFACENUM
-; sts comOnUart0_iface+NET_IFACE_OFFS_IFACENUM, r16
- ; set interface number for UART1
- ldi r16, COMONUART1_IFACENUM
- sts comOnUart1_iface+NET_IFACE_OFFS_IFACENUM, r16
-
- ret
-; @end
-
-
-
-
-
-
-
-onEvery100ms:
-onEverySecond:
-onEveryMinute:
-onEveryHour:
-onEveryDay:
- ret
-
-
-
-
-; ---------------------------------------------------------------------------
-; @routine onEveryLoop
-;
-; Called on every loop (i.e. after awakening from sleep).
-
-onEveryLoop:
- ret
-; @end
-
-
-
-; ---------------------------------------------------------------------------
-; @routine onMessageReceived
-;
-; Called on every message received
-
-onMessageReceived:
- clc
- ret
-; @end
-
-
-
-; ---------------------------------------------------------------------------
-; @routine onAttnChange @global @isr
-;
-; Called whenever PCINT0 is activated.
-; This code assumes that both ATTN pins are on the same port which is true for
-; R04 nodes.
-
-onAttnChangeIsr:
- push r15
- in r15, SREG
- rcall ComOnUart1_HandleAttnChange ; (none)
-; rcall ComOnUart0_HandleAttnChange ; (none)
- out SREG, r15
- pop r15
- reti
-; @end
-
-
-
-
-; ***************************************************************************
-; includes
-
-.include "devices/all/hw_tn841.asm"
-.include "devices/all/includes.asm"
-
-
-
-
-; ---------------------------------------------------------------------------
-; defines for network interface
-
-.equ netInterfaceData = comOnUart1_iface
-;.equ netInterfaceData2 = comOnUart1_iface
-
-
diff --git a/avr/devices/x03/0BUILD b/avr/devices/x03/0BUILD
deleted file mode 100644
index b317b73..0000000
--- a/avr/devices/x03/0BUILD
+++ /dev/null
@@ -1,11 +0,0 @@
-
-
-
-
-
- uart
- ccs811
-
-
-
-
diff --git a/avr/devices/x03/ccs811/0BUILD b/avr/devices/x03/ccs811/0BUILD
deleted file mode 100644
index 6329fc6..0000000
--- a/avr/devices/x03/ccs811/0BUILD
+++ /dev/null
@@ -1,52 +0,0 @@
-
-
-
-
-
-
-
- -I $(builddir)
- -I $(srcdir)
- -I $(topsrcdir)/avr
- -I $(topbuilddir)/avr
-
-
-
-
- main.asm
-
-
-
-
-
-
-
-
-
-
- -I $(builddir)
- -I $(srcdir)
- -I $(topsrcdir)/avr
- -I $(topbuilddir)/avr
-
-
-
-
- boot.asm
-
-
-
-
-
-
-
-
-
-
- defs.asm
-
-
-
-
-
-
diff --git a/avr/devices/x03/ccs811/boot.asm b/avr/devices/x03/ccs811/boot.asm
deleted file mode 100644
index b887867..0000000
--- a/avr/devices/x03/ccs811/boot.asm
+++ /dev/null
@@ -1,124 +0,0 @@
-; ***************************************************************************
-; Source file for base system node on AtTiny 85
-;
-; This is for the maintenance system (i.e. the flash loader).
-;
-; All definitions and changes should go into this file.
-;
-;
-; ***************************************************************************
-
-.equ clock=1000000 ; Define the clock frequency
-
-.nolist
-.include "include/tn84def.inc" ; Define device ATtiny84
-.list
-
-.include "./defs.asm"
-.include "defs_all.asm"
-
-
-
-; ***************************************************************************
-; defines
-
-; ---------------------------------------------------------------------------
-; generic
-
-.include "common/utils_wait.asm"
-.include "modules/com2/defs.asm"
-.include "modules/comproto/defs.asm"
-
-
-; ---------------------------------------------------------------------------
-; firmware settings
-
-.equ FIRMWARE_VERSION_MAJOR = 0
-.equ FIRMWARE_VERSION_MINOR = 0
-.equ FIRMWARE_VERSION_PATCHLEVEL = 1
-
-
-; ---------------------------------------------------------------------------
-; LED
-
-.equ LED_DDR = DDRA
-.equ LED_PORT = PORTA
-.equ LED_PIN = PINA
-.equ LED_PINNUM = PORTA3
-
-
-
-; ***************************************************************************
-; code segment
-
-.cseg
-.org 0x0000
-
-
-
-; ---------------------------------------------------------------------------
-; Reset and interrupt vectors
- rjmp main ; Reset vector
- reti ; EXT_INT0
- reti ; PCI0
- reti ; OC1A
- reti ; OVF1
- reti ; OVF0
- reti ; ERDY
- reti ; ACI
- reti ; ADCC
- reti ; OC1B
- reti ; OC0A
- reti ; OC0B
- reti ; WATCHDOG
- reti ; USI_STR
- reti ; USI_OVF
-
-devInfoBlock: ; 12 bytes
-devInfoManufacturer: .db 'A', 'Q', 'U', 'A'
-devInfoId: .db 'N', 0
-devInfoVersion: .db 14, 0 ; version, revision
-firmwareVersion: .db FIRMWARE_VARIANT_BOOT, FIRMWARE_VERSION_MAJOR
- .db FIRMWARE_VERSION_MINOR, FIRMWARE_VERSION_PATCHLEVEL
-
-firmwareStart: rjmp main ; will be overwritten when flashing
-
-
-
-; ***************************************************************************
-; main code
-
-
-.org BOOTLOADER_ADDR
-
-
-main:
- rjmp bootLoader ; this routine is in modules/flash/proto.asm
-
-
-
-
-; ***************************************************************************
-; includes
-
-.include "modules/uart_bitbang/bytelevel.asm"
-.include "modules/uart_bitbang/packetlevel.asm"
-.include "modules/com2/crc.asm"
-.include "common/crc8.asm"
-.include "common/utils_wait_fixed.asm"
-.include "common/utils_copy_from_flash.asm"
-.include "common/utils_copy_sdram.asm"
-.include "modules/flash/bootloader.asm"
-.include "modules/flash/flash.asm"
-.include "modules/flash/recv.asm"
-.include "modules/flash/send.asm"
-.include "modules/flash/wait.asm"
-.include "modules/flash/hdl_flash_start.asm"
-.include "modules/flash/hdl_flash_data.asm"
-.include "modules/flash/hdl_flash_end.asm"
-.include "modules/flash/flash_rsp.asm"
-.include "modules/flash/flash_ready.asm"
-
-
-
-
diff --git a/avr/devices/x03/ccs811/defs.asm b/avr/devices/x03/ccs811/defs.asm
deleted file mode 100644
index 9d7ae13..0000000
--- a/avr/devices/x03/ccs811/defs.asm
+++ /dev/null
@@ -1,134 +0,0 @@
-; ***************************************************************************
-; copyright : (C) 2023 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. *
-; ***************************************************************************
-
-
-; ***************************************************************************
-;
-; AtTiny84
-; --------
-; VCC 1 14 GND
-; PB0 2 13 PA0 AUX-A0
-; PIR PB1 3 12 PA1 COM-DATA
-; /RESET PB3 4 11 PA2
-; AUX-B2 PB2 5 10 PA3 LED
-; COM_ATTN PA7 6 9 PA4 TWI-SCL
-; TWI-SDA PA6 7 8 PA5
-; --------
-;
-; ***************************************************************************
-
-
-
-.equ BOOTLOADER_ADDR = 0xd00
-
-.equ FIRMWARE_VARIANT_BOOT = 0
-.equ FIRMWARE_VARIANT_MAIN = 1
-
-
-
-; ---------------------------------------------------------------------------
-; LED module
-
-.equ LED_SIMPLE_ONTIME = 1 ; shorter
-.equ LED_SIMPLE_OFFTIME = 50 ; longer
-.equ LED_SIMPLE_DDR = DDRA
-.equ LED_SIMPLE_PORT = PORTA
-.equ LED_SIMPLE_PORTIN = PINA
-.equ LED_SIMPLE_PINNUM = PORTA3
-
-
-.equ LED_DEBUG_DDR = DDRA
-.equ LED_DEBUG_PORT = PORTA
-.equ LED_DEBUG_PORTIN = PINA
-.equ LED_DEBUG_PINNUM = PORTA5
-
-
-
-; ---------------------------------------------------------------------------
-; 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 = PORTA1
-
-.equ COM_ATTN_DDR = DDRA
-.equ COM_ATTN_INPUT = PINA
-.equ COM_ATTN_OUTPUT = PORTA
-.equ COM_ATTN_PIN = PORTA7
-
-.equ COM_IRQ_ADDR_ATTN = PCMSK0
-.equ COM_IRQ_BIT_ATTN = PCINT7 ; bit 7 in PCMSK0
-.equ COM_IRQ_GIFR_ATTN = PCIF0
-.equ COM_IRQ_GIMSK_ATTN = PCIE0
-
-
-
-; ---------------------------------------------------------------------------
-; TWI master module
-
-;.equ TWI_BIT_LENGTH = 10000 ; 100000 and 200000 works for display: 10000, 100000, 200000
-.equ TWI_BIT_LENGTH = 1 ; 10, 100, 500, 100000 and 200000 works for display: 10000, 100000, 200000
-
-.equ TWI_DDR_SCL = DDRA
-.equ TWI_PORT_SCL = PORTA
-.equ TWI_PIN_SCL = PINA
-.equ TWI_PINNUM_SCL = PORTA4
-
-.equ TWI_DDR_SDA = DDRA
-.equ TWI_PORT_SDA = PORTA
-.equ TWI_PIN_SDA = PINA
-.equ TWI_PINNUM_SDA = PORTA6
-
-
-
-; ---------------------------------------------------------------------------
-; LCD module
-
-.equ LCD_TWI_ADDRESS = 0x3c
-
-
-
-; ---------------------------------------------------------------------------
-; SI 7021
-
-.equ SI7021_ADDR = 0x40
-
-
-
-; ---------------------------------------------------------------------------
-; 1-Wire Master
-;
-
-.equ OWI_DDR = DDRB
-.equ OWI_PORTOUT = PORTB
-.equ OWI_PORTIN = PINB
-.equ OWI_PINNUM = PORTB2
-
-
-
-; ---------------------------------------------------------------------------
-; Motion Sensor
-;
-
-.equ MOTION_DDR = DDRB
-.equ MOTION_INPUT = PINB
-.equ MOTION_OUTPUT = PORTB
-.equ MOTION_PIN = PORTB1
-
-
-
-
-.equ CCS811_ADDR = 0x5a ; or 0x5b
-
-
-
diff --git a/avr/devices/x03/ccs811/main.asm b/avr/devices/x03/ccs811/main.asm
deleted file mode 100644
index a6d0463..0000000
--- a/avr/devices/x03/ccs811/main.asm
+++ /dev/null
@@ -1,344 +0,0 @@
-; ***************************************************************************
-; copyright : (C) 2024 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. *
-; ***************************************************************************
-
-
-; ***************************************************************************
-; Source file for LED controller node on AtTiny 85
-;
-; This is for the full system (i.e. not the boot loader).
-; ***************************************************************************
-
-.equ clock=1000000 ; Define the clock frequency
-
-
-
-.nolist
-.include "include/tn84def.inc" ; Define device ATtiny84
-.list
-
-.include "./defs.asm"
-.include "defs_all.asm"
-.include "common/utils_wait.asm" ; wait macro
-
-
-
-; ***************************************************************************
-; defines
-
-; ---------------------------------------------------------------------------
-; firmware settings including list of modules used
-
-.equ FIRMWARE_VERSION_MAJOR = 0
-.equ FIRMWARE_VERSION_MINOR = 0
-.equ FIRMWARE_VERSION_PATCHLEVEL = 1
-
-
-#define MODULES_TIMER
-#define MODULES_COM
-#define MODULES_COM_WITH_ADDR_PROTO
-#define MODULES_LED_SIMPLE
-#define MODULES_TWI_MASTER
-;#define MODULES_SI7021
-#define MODULES_STATS
-; #define MODULES_OWI_MASTER
-; #define MODULES_DS18B20
-; #define MODULES_SK6812
-; #define MODULES_MOTION_LIGHT
-
-; #define COM_ACCEPT_ALL_DEST
-#define MODULES_CCS811
-
-
-; ---------------------------------------------------------------------------
-; defines for modules
-
-.equ VALUE_ID_CO2 = 0x07
-.equ VALUE_ID_TVOC = 0x08
-
-.equ VALUE_ID_DEBUG = 0x7f
-
-;.equ VALUE_ID_SI7021_TEMP = 0x01
-;.equ VALUE_ID_SI7021_HUM = 0x02
-
-;.equ VALUE_ID_ADC = 0x03
-;.equ VALUE_ID_REED1 = 0x04
-;.equ VALUE_ID_REED2 = 0x05
-;.equ VALUE_ID_DS18B20_TEMP = 0x06
-
-;.equ VALUE_ID_LED_NUMLEDS = 0x82
-;.equ VALUE_ID_LED_RGBW_VALUE = 0x83
-;.equ VALUE_ID_MAL_RGBW_VALUE = 0x84
-;.equ VALUE_ID_MAL_ONTIME = 0x85
-;.equ VALUE_ID_MAL_SOURCE1 = 0x86
-;.equ VALUE_ID_MAL_SOURCE2 = 0x87
-
-
-; ***************************************************************************
-; code segment
-
-.cseg
-.org 000000
-
-
-
-; ---------------------------------------------------------------------------
-; Reset and interrupt vectors
-
- rjmp BOOTLOADER_ADDR ; Reset vector ; use this for flashed system
- reti ; EXT_INT0
- rjmp uartBitbangIsrPcint0 ; PCI0
- reti ; OC1A
- reti ; OVF1
- reti ; OVF0
- reti ; ERDY
- reti ; ACI
- reti ; ADCC
- reti ; OC1B
- rjmp baseTimerIrqOC0A ; OC0A
- reti ; OC0B
- reti ; WATCHDOG
- reti ; USI_STR
- reti ; USI_OVF
-
-
-devInfoBlock: ; 12 bytes
-devInfoManufacturer: .db 'A', 'Q', 'U', 'A'
-devInfoId: .db 'N', 0
-devInfoVersion: .db 18, 0 ; version, revision
-firmwareVersion: .db FIRMWARE_VARIANT_MAIN, FIRMWARE_VERSION_MAJOR
- .db FIRMWARE_VERSION_MINOR, FIRMWARE_VERSION_PATCHLEVEL
-
-firmwareStart: rjmp main
-
-
-; ***************************************************************************
-; includes
-
-.include "common/utils.asm"
-.include "common/utils_wait_fixed.asm"
-.include "common/utils_copy_from_flash.asm"
-.include "common/utils_copy_sdram.asm"
-.include "common/crc8.asm"
-
-.include "modules/basetimer/main.asm"
-
-#ifdef MODULES_TIMER
- .include "modules/timer/main.asm"
-#endif
-#ifdef MODULES_LED_SIMPLE
-.include "modules/led_simple/main.asm"
-#endif
-#ifdef MODULES_COM
- .include "modules/com2/defs.asm"
- .include "modules/com2/main.asm"
- .include "modules/com2/buffer.asm"
- #ifdef MODULES_STATS
- .include "modules/comproto/msg_recvstats.asm"
- .include "modules/comproto/msg_sendstats.asm"
- .include "modules/comproto/msg_sysstats.asm"
- .include "modules/comproto/msg_memstats.asm"
- #endif
- .include "modules/comproto/msg_pong.asm"
- .include "modules/comproto/msg_value.asm"
- .include "modules/comproto/msg_device.asm"
- .include "modules/comproto/msg_reboot.asm"
- .include "modules/uart_bitbang/defs.asm"
- .include "modules/uart_bitbang/main.asm"
- .include "modules/uart_bitbang/bytelevel.asm"
- .include "modules/uart_bitbang/packetlevel.asm"
- #ifdef MODULES_COM_WITH_ADDR_PROTO
- .include "modules/comproto/defs.asm"
- .include "modules/comproto/main.asm"
- .include "modules/comproto/addr.asm"
- #endif
-#endif
-#ifdef MODULES_STATS
- .include "modules/stats/main.asm"
-#endif
-#ifdef MODULES_TWI_MASTER
- .include "modules/twimaster/main.asm"
-#endif
-#ifdef MODULES_OWI_MASTER
- .include "modules/owimaster/main.asm"
-#endif
-#ifdef MODULES_SI7021
- .include "modules/si7021/main.asm"
-#endif
-#ifdef MODULES_DS18B20
- .include "modules/ds18b20/main.asm"
-#endif
-#ifdef MODULES_SK6812
- .include "modules/sk6812/main.asm"
-#endif
-#ifdef MODULES_MOTION_LIGHT
- .include "modules/ma_light/main.asm"
-#endif
-#ifdef MODULES_CCS811
- .include "modules/ccs811/main.asm"
-#endif
-
-
-
-; ***************************************************************************
-; data in SRAM
-
-.dseg
-
-
-#ifdef MODULES_DS18B20
- sramDs18b20Timer: .byte 2
- sramSendDs18b20TempTimer: .byte 2
-#endif
-
-
-; ***************************************************************************
-; data in FLASH
-
-.cseg
-
-
-
-; ---------------------------------------------------------------------------
-; timer list
-
-
-timerList:
-; SRAM variable/counter routine flags secs (0=don't start or restart)
-#ifdef MODULES_COM_WITH_ADDR_PROTO
- .dw cproAddresModeTimer, CPRO_Address_OnTimer, 0, 0 ; (no restart)
-#endif
-#ifdef MODULES_STATS
- .dw statsSendTimer, Stats_Timer, TIMER_FLAGS_IF_ADDR, 9000 ; every 15m
-#endif
-#ifdef MODULES_DS18B20
- .dw sramDs18b20Timer, Ds18b20_OnTimer, 0, 300 ; every 30s
- .dw sramSendDs18b20TempTimer, sendDs18b20Temp, TIMER_FLAGS_IF_ADDR, 600 ; every 60s
-#endif
- .dw 0 ; end of list
-
-
-
-
-
-.include "main_all.asm"
-
-
-; ---------------------------------------------------------------------------
-; Called early on system startup. No arguments, no results.
-
-systemSetSpeed:
-.if clock == 8000000
- ldi r16, (1<
-
-
-
-
-
-
- -I $(builddir)
- -I $(srcdir)
- -I $(topsrcdir)/avr
- -I $(topbuilddir)/avr
-
-
-
-
- main.asm
-
-
-
-
-
-
-
-
-
-
- -I $(builddir)
- -I $(srcdir)
- -I $(topsrcdir)/avr
- -I $(topbuilddir)/avr
-
-
-
-
- boot.asm
-
-
-
-
-
-
-
-
-
-
- defs.asm
-
-
-
-
-
-
diff --git a/avr/devices/x03/uart/boot.asm b/avr/devices/x03/uart/boot.asm
deleted file mode 100644
index 8e833a4..0000000
--- a/avr/devices/x03/uart/boot.asm
+++ /dev/null
@@ -1,162 +0,0 @@
-; ***************************************************************************
-; Source file for base system node on AtTiny 84
-;
-; This is for the maintenance system (i.e. the flash loader).
-;
-; All definitions and changes should go into this file.
-; ***************************************************************************
-
-.equ clock=1000000 ; Define the clock frequency
-
-.nolist
-.include "include/tn84def.inc" ; Define device ATtiny84
-.list
-
-.include "defs_all.asm"
-.include "./defs.asm"
-
-
-
-; ***************************************************************************
-; defines
-
-; ---------------------------------------------------------------------------
-; generic
-
-.include "common/utils_wait.asm"
-.include "modules/com2/defs.asm"
-.include "modules/comproto/defs.asm"
-
-
-
-; ---------------------------------------------------------------------------
-; firmware settings
-
-.equ FIRMWARE_VERSION_MAJOR = 0
-.equ FIRMWARE_VERSION_MINOR = 0
-.equ FIRMWARE_VERSION_PATCHLEVEL = 1
-
-
-
-; ---------------------------------------------------------------------------
-; LED
-
-.equ LED_DDR = DDRA
-.equ LED_PORT = PORTA
-.equ LED_PIN = PINA
-.equ LED_PINNUM = PORTA3
-
-
-; ***************************************************************************
-; code segment
-
-.cseg
-.org 0x0000
-
-
-
-; ---------------------------------------------------------------------------
-; Reset and interrupt vectors
-; rjmp start ; Reset vector
- rjmp main ; Reset vector
- reti ; EXT_INT0
- reti ; PCI0
- reti ; PCI1
- reti ; WATCHDOG
- reti ; ICP1
- reti ; OC1A
- reti ; OC1B
- reti ; OVF1
- reti ; OC0A
- reti ; OC0B
- reti ; OVF0
- reti ; ACI
- reti ; ADCC
- reti ; ERDY
- reti ; USI_STR
- reti ; USI_OVF
-
-
-devInfoBlock: ; 12 bytes
-devInfoManufacturer: .db 'A', 'Q', 'U', 'A'
-devInfoId: .db 'X', 0
-devInfoVersion: .db 3, 0 ; version, revision
-firmwareVersion: .db FIRMWARE_VARIANT_BOOT, FIRMWARE_VERSION_MAJOR
- .db FIRMWARE_VERSION_MINOR, FIRMWARE_VERSION_PATCHLEVEL
-
-firmwareStart: rjmp main ; will be overwritten when flashing
-
-
-
-; ***************************************************************************
-; main code
-
-
-.org BOOTLOADER_ADDR
-
-
-main:
- rjmp bootLoader ; this routine is in modules/flash/proto.asm
-
-
-
-
-; ***************************************************************************
-; includes
-
-.include "modules/uart_bitbang/bytelevel.asm"
-.include "modules/uart_bitbang/packetlevel.asm"
-.include "modules/com2/crc.asm"
-.include "common/crc8.asm"
-.include "common/utils_wait_fixed.asm"
-.include "common/utils_copy_from_flash.asm"
-.include "common/utils_copy_sdram.asm"
-.include "modules/flash/bootloader.asm"
-.include "modules/flash/flash.asm"
-.include "modules/flash/recv.asm"
-.include "modules/flash/send.asm"
-.include "modules/flash/wait.asm"
-.include "modules/flash/hdl_flash_start.asm"
-.include "modules/flash/hdl_flash_data.asm"
-.include "modules/flash/hdl_flash_end.asm"
-.include "modules/flash/flash_rsp.asm"
-.include "modules/flash/flash_ready.asm"
-
-
-#if 0
-debugStop:
- cli
- sbi LED_SIMPLE_DDR, LED_SIMPLE_PINNUM ; out
- cbi LED_SIMPLE_PORT, LED_SIMPLE_PINNUM ; on
-
- cbi COM_ATTN_DDR, COM_ATTN_PIN ; set ATTN port as input
- cbi COM_ATTN_OUTPUT, COM_ATTN_PIN ; disable internal pullup for ATTN
-
- ldi r18, 0
-test_loop1:
- ldi r16, 100
-test_loop2:
- ldi r17, 100
-test_loop3:
- Utils_WaitNanoSecs 10000, 0, r22
- dec r17
- brne test_loop3
- dec r16
- brne test_loop2
- sbi LED_SIMPLE_PORTIN, LED_SIMPLE_PINNUM ; toggle
- inc r18
- mov r19, r18
- andi r19, 1
- brne test1
- sbi COM_ATTN_DDR, COM_ATTN_PIN
- cbi COM_ATTN_OUTPUT, COM_ATTN_PIN
- rjmp test_loop1
-test1:
- cbi COM_ATTN_DDR, COM_ATTN_PIN
- cbi COM_ATTN_OUTPUT, COM_ATTN_PIN
-
- rjmp test_loop1
-#endif
-
-
-
diff --git a/avr/devices/x03/uart/defs.asm b/avr/devices/x03/uart/defs.asm
deleted file mode 100644
index df7903b..0000000
--- a/avr/devices/x03/uart/defs.asm
+++ /dev/null
@@ -1,72 +0,0 @@
-; ***************************************************************************
-; copyright : (C) 2023 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. *
-; ***************************************************************************
-
-
-; ***************************************************************************
-;
-; AtTiny84
-; --------
-; VCC 1 14 GND
-; PB0 2 13 PA0 COM_ATTN1
-; PB1 3 12 PA1 COM-DATA1
-; /RESET PB3 4 11 PA2
-; COM_ATTN2 PB2 5 10 PA3 LED
-; COM_DATA2 PA7 6 9 PA4
-; PA6 7 8 PA5
-; --------
-;
-; ***************************************************************************
-
-
-
-.equ BOOTLOADER_ADDR = 0xd00
-
-.equ FIRMWARE_VARIANT_BOOT = 0
-.equ FIRMWARE_VARIANT_ROUTER = 1
-
-
-
-; ---------------------------------------------------------------------------
-; LED module
-
-.equ LED_SIMPLE_DDR = DDRA
-.equ LED_SIMPLE_PORT = PORTA
-.equ LED_SIMPLE_PORTIN = PINA
-.equ LED_SIMPLE_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 = PORTA1
-
-.equ COM_ATTN_DDR = DDRA
-.equ COM_ATTN_INPUT = PINA
-.equ COM_ATTN_OUTPUT = PORTA
-.equ COM_ATTN_PIN = PORTA0
-
-.equ COM_DATA2_DDR = DDRA
-.equ COM_DATA2_INPUT = PINA
-.equ COM_DATA2_OUTPUT = PORTA
-.equ COM_DATA2_PIN = PORTA7
-
-.equ COM_ATTN2_DDR = DDRB
-.equ COM_ATTN2_INPUT = PINB
-.equ COM_ATTN2_OUTPUT = PORTB
-.equ COM_ATTN2_PIN = PORTB2
-
-
-
diff --git a/avr/devices/x03/uart/main.asm b/avr/devices/x03/uart/main.asm
deleted file mode 100644
index 1606d2c..0000000
--- a/avr/devices/x03/uart/main.asm
+++ /dev/null
@@ -1,221 +0,0 @@
-; ***************************************************************************
-; copyright : (C) 2024 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. *
-; ***************************************************************************
-
-
-
-
-; ***************************************************************************
-; Source file for temperature sensor node on AtTiny 84
-;
-; This is for the full system (i.e. not the boot loader).
-;
-; All definitions and changes should go into this file.
-;
-;
-; ***************************************************************************
-
-
-; .equ clock=1000000 ; Define the clock frequency
-.equ clock=8000000 ; Define the clock frequency
-
-
-
-.nolist
-.include "include/tn84def.inc" ; Define device ATtiny84
-.list
-
-.include "defs_all.asm"
-.include "./defs.asm"
-
-
-
-; ***************************************************************************
-; defines
-
-; ---------------------------------------------------------------------------
-; generic
-
-
-.include "common/utils_wait.asm"
-
-
-; ---------------------------------------------------------------------------
-; firmware settings including list of modules used
-
-.equ FIRMWARE_VERSION_MAJOR = 0
-.equ FIRMWARE_VERSION_MINOR = 0
-.equ FIRMWARE_VERSION_PATCHLEVEL = 1
-
-
-
-
-; ***************************************************************************
-; code segment
-
-.cseg
-.org 000000
-
-
-
-; ---------------------------------------------------------------------------
-; Reset and interrupt vectors (will be removed as soon as we can flash data over COM)
-
-; rjmp main ; Reset vector
- rjmp BOOTLOADER_ADDR ; Reset vector ; use this for flashed system
- reti ; EXT_INT0
- reti ; PCI0
- reti ; PCI1
- reti ; WATCHDOG
- reti ; ICP1
- reti ; OC1A
- reti ; OC1B
- reti ; OVF1
- rjmp uartIrqIsrOC0A ; OC0A
- reti ; OC0B
- reti ; OVF0
- reti ; ACI
- reti ; ADCC
- reti ; ERDY
- reti ; USI_STR
- reti ; USI_OVF
-
-
-devInfoBlock: ; 12 bytes
-devInfoManufacturer: .db 'A', 'Q', 'U', 'A'
-devInfoId: .db 'X', 0
-devInfoVersion: .db 3, 0 ; version, revision
-firmwareVersion: .db FIRMWARE_VARIANT_ROUTER, FIRMWARE_VERSION_MAJOR
- .db FIRMWARE_VERSION_MINOR, FIRMWARE_VERSION_PATCHLEVEL
-
-firmwareStart: rjmp main
-
-
-; ***************************************************************************
-; includes
-
-.include "common/utils.asm"
-.include "common/utils_wait_fixed.asm"
-;.include "common/utils_copy_from_flash.asm"
-;.include "common/utils_copy_sdram.asm"
-.include "common/crc8.asm"
-
-#include "modules/uart_irq/defs.asm"
-#include "modules/uart_irq/iface.asm"
-#include "modules/uart_irq/iface1.asm"
-#include "modules/uart_irq/iface2.asm"
-
-
-; ***************************************************************************
-; data in SRAM
-
-.dseg
-
-programRamBegin:
-ledTimer: .byte 1
-programRamEnd:
-
-
-
-; ***************************************************************************
-; data in FLASH
-
-.cseg
-
-
-main:
- ldi xh, HIGH(programRamBegin)
- ldi xl, LOW(programRamBegin)
- clr r16
- ldi r17, (programRamEnd-programRamBegin)
- rcall Utils_FillSram
- rcall init
- sbi LED_SIMPLE_DDR, LED_SIMPLE_PINNUM ; out
- cbi LED_SIMPLE_PORT, LED_SIMPLE_PINNUM ; on
- clr r16
- sts ledTimer, r16
- sei
-main_loop:
-; rcall writeTestByteToIface2
-; rcall copyFromIface1To2
-; brcc main_sleep
-; rjmp main_loop
-
-main_sleep:
- ; only modify SE, SM1 and SM0
- cli
- in r16, MCUCR
- ldi r17, (1<