mirror of
https://github.com/OpenEPaperLink/OpenEPaperLink.git
synced 2026-03-21 00:04:28 +01:00
193 lines
6.8 KiB
C
Executable File
193 lines
6.8 KiB
C
Executable File
|
|
// OEPL TAG TYPES
|
|
// The 'OG' tags in OEPL (mostly M2 tags)
|
|
#define SOLUM_154_SSD1619 0
|
|
#define SOLUM_29_SSD1619 0x01
|
|
#define SOLUM_M2_BWR_29_UC8151 0x11
|
|
#define SOLUM_42_SSD1619 0x02
|
|
#define SOLUM_SEG_UK 0xF0
|
|
#define SOLUM_SEG_EU 0xF1
|
|
|
|
// overflow
|
|
#define SOLUM_M2_BWR_16 0x20
|
|
#define SOLUM_M2_BW_29_LOWTEMP 0x21 // low temperature version of the 2.9 M2 tag
|
|
#define SOLUM_M2_BWR_27 0x22
|
|
#define SOLUM_M2_BWR_29 0x23
|
|
#define SOLUM_M2_BWR_42 0x24
|
|
#define SOLUM_M2_BW_16 0x25
|
|
#define SOLUM_M2_BW_75 0x26
|
|
#define SOLUM_M2_BW_29 0x27
|
|
|
|
#define SOLUM_M3_BWR_97 0x2E
|
|
#define SOLUM_M3_BWR_43 0x2F
|
|
|
|
// M3 Tags
|
|
#define SOLUM_M3_BWR_16 0x30
|
|
#define SOLUM_M3_BWY_16 0x38
|
|
#define SOLUM_M3_BWR_22 0x31
|
|
#define SOLUM_M3_BWY_22 0x39
|
|
#define SOLUM_M3_BWR_26 0x32
|
|
#define SOLUM_M3_BWY_26 0x3A
|
|
#define SOLUM_M3_BWR_29 0x33 // the 'standard' SSD1619 version
|
|
#define SOLUM_M3_BWY_29 0x3B
|
|
#define SOLUM_M3_BW_29 0x40
|
|
#define SOLUM_M3_BWR_42 0x34
|
|
#define SOLUM_M3_BWY_42 0x3C
|
|
#define SOLUM_M3_BWR_58 0x41
|
|
#define SOLUM_M3_BW_58 0x42
|
|
#define SOLUM_M3_BWR_60 0x35
|
|
#define SOLUM_M3_BWY_60 0x3D
|
|
#define SOLUM_M3_BWR_75 0x36
|
|
#define SOLUM_M3_BWY_75 0x3E
|
|
#define SOLUM_M3_BWR_116 0x37
|
|
#define SOLUM_M3_BWY_116 0x3F
|
|
|
|
// M3 Tags overflow
|
|
#define SOLUM_M3_BW_29 0x40
|
|
#define SOLUM_M3_BWR_58 0x41
|
|
#define SOLUM_M3_BW_58 0x42
|
|
#define SOLUM_M3_PEGHOOK_BWR_13 0x43
|
|
|
|
// Types using modchip
|
|
#define MODCHIP_HD150_BWR_58 0x50
|
|
|
|
// Hanshow Nebular types
|
|
#define HS_NEBULAR_BWY_35 0x60
|
|
#define HS_NEBULAR_BWR_35 0x61
|
|
#define HS_NEBULAR_BW_35 0x62
|
|
|
|
// Gicisky / PICKSMART BLE Types
|
|
#define GICI_BLE_EPD_21_BW 0xB0
|
|
#define GICI_BLE_EPD_21_BWR 0xB1
|
|
#define GICI_BLE_EPD_29_BW 0xB2
|
|
#define GICI_BLE_EPD_29_BWR 0xB3
|
|
#define GICI_BLE_EPD_29_BWR1 0xB3
|
|
#define GICI_BLE_EPD_BW_42 0xB4
|
|
#define GICI_BLE_EPD_BWR_42 0xB5
|
|
#define GICI_BLE_TFT_BW_42 0xB6
|
|
#define GICI_BLE_TFT_BWR_42 0xB7
|
|
#define GICI_BLE_EPD_BW_74 0xB8
|
|
#define GICI_BLE_EPD_BWR_74 0xB9
|
|
#define GICI_BLE_TFT_21_BW 0xBA
|
|
#define GICI_BLE_EPD_BWR_29_SILABS 0xBD
|
|
#define GICI_BLE_UNKNOWN 0xBF
|
|
|
|
// Solum types - customer data byte 16 in M3 (nRF) UICR
|
|
#define STYPE_SIZE_016 0x40
|
|
#define STYPE_SIZE_022 0x41
|
|
#define STYPE_SIZE_026 0x43
|
|
#define STYPE_SIZE_029 0x42
|
|
#define STYPE_SIZE_029_BW 0x4E
|
|
#define STYPE_SIZE_029_FREEZER 0x22
|
|
#define STYPE_SIZE_042 0x46
|
|
#define STYPE_SIZE_043 0x47
|
|
#define STYPE_SIZE_058 0x63
|
|
#define STYPE_SIZE_058_FREEZER 0x24
|
|
#define STYPE_SIZE_060 0x48
|
|
#define STYPE_SIZE_075 0x4C
|
|
#define STYPE_SIZE_097 0x64
|
|
#define STYPE_SIZE_013 0x4D
|
|
|
|
// Various types
|
|
#define ATC_MI_THERMOMETER 0xBE
|
|
#define RESERVED_TESTING 0xFE
|
|
#define SOLUM_NODISPLAY 0xFF
|
|
#define ESP32_C6 0xC6
|
|
|
|
#define BWRY_29 0xC0
|
|
#define ACEP_40 0xC1
|
|
#define SPECTRA_73 0xC2
|
|
|
|
|
|
|
|
|
|
// Capability flags
|
|
#define CAPABILITY_HAS_LED 0x01
|
|
#define CAPABILITY_SUPPORTS_COMPRESSION 0x02
|
|
#define CAPABILITY_SUPPORTS_CUSTOM_LUTS 0x04
|
|
#define CAPABILITY_ALT_LUT_SIZE 0x08
|
|
#define CAPABILITY_HAS_EXT_POWER 0x10
|
|
#define CAPABILITY_HAS_WAKE_BUTTON 0x20
|
|
#define CAPABILITY_HAS_NFC 0x40
|
|
#define CAPABILITY_NFC_WAKE 0x80
|
|
#define CAPABILITY_IS_BLE 0x0100
|
|
|
|
#define DATATYPE_NOUPDATE 0
|
|
#define DATATYPE_IMG_BMP 2 // ** deprecated
|
|
#define DATATYPE_FW_UPDATE 3
|
|
#define DATATYPE_IMG_DIFF 0x10 // always 1BPP ** deprecated
|
|
#define DATATYPE_IMG_RAW_1BPP 0x20 // 2888 bytes for 1.54" / 4736 2.9" / 15000 4.2"
|
|
#define DATATYPE_IMG_RAW_2BPP 0x21 // 5776 bytes for 1.54" / 9472 2.9" / 30000 4.2"
|
|
#define DATATYPE_IMG_RAW_3BPP 0x22 // ACEP
|
|
#define DATATYPE_IMG_RAW_4BPP 0x23 // Spectra
|
|
#define DATATYPE_IMG_ZLIB 0x30 // compressed format.
|
|
// [uint32_t uncompressed size][2 byte zlib header][zlib compressed image]
|
|
// image format: [uint8_t header length][uint16_t width][uint16_t height][uint8_t bpp (lower 4)][img data]
|
|
|
|
#define DATATYPE_IMG_G5 0x31 // G5 compressed 1BPP
|
|
|
|
#define DATATYPE_UK_SEGMENTED 0x51 // Segmented data for the UK Segmented display type (contained in availableData Reply)
|
|
#define DATATYPE_EU_SEGMENTED 0x52 // Segmented data for the EU/DE Segmented display type (contained in availableData Reply)
|
|
#define DATATYPE_NFC_RAW_CONTENT 0xA0 // raw memory content for the NT3H1101
|
|
#define DATATYPE_NFC_URL_DIRECT 0xA1 // URL format for NT3H1101
|
|
#define DATATYPE_TAG_CONFIG_DATA 0xA8 // Config data for tag
|
|
#define DATATYPE_COMMAND_DATA 0xAF // Command for the tag to execute (contained in availableData Reply)
|
|
#define DATATYPE_CUSTOM_LUT_OTA 0xB0 // Custom OTA updated LUT
|
|
#define DATATYPE_TIME_RAW_DATA 0xC0 // Used for showning the time and preparation for more data
|
|
#define DATATYPE_CONFIG_DATA_TEST 0xC1 // Used to receive Display configurations to test
|
|
#define DATATYPE_CONFIG_DATA_SAVE 0xC2 // Used to receive Display configurations to save in flash an reboot
|
|
|
|
#define CMD_DO_REBOOT 0
|
|
#define CMD_DO_SCAN 1
|
|
#define CMD_DO_RESET_SETTINGS 2
|
|
#define CMD_DO_DEEPSLEEP 3
|
|
#define CMD_DO_LEDFLASH 4
|
|
#define CMD_ERASE_EEPROM_IMAGES 5
|
|
#define CMD_ENTER_SLIDESHOW_FAST 0x06
|
|
#define CMD_ENTER_SLIDESHOW_MEDIUM 0x07
|
|
#define CMD_ENTER_SLIDESHOW_SLOW 0x08
|
|
#define CMD_ENTER_SLIDESHOW_GLACIAL 0x09
|
|
#define CMD_ENTER_NORMAL_MODE 0x0F
|
|
#define CMD_ENTER_WAIT_RFWAKE 0x20
|
|
#define CMD_GET_BATTERY_VOLTAGE 0x21
|
|
|
|
#define WAKEUP_REASON_TIMED 0
|
|
#define WAKEUP_REASON_GPIO 2
|
|
#define WAKEUP_REASON_NFC 3
|
|
#define WAKEUP_REASON_BUTTON1 4
|
|
#define WAKEUP_REASON_BUTTON2 5
|
|
#define WAKEUP_REASON_RF 0x0F
|
|
#define WAKEUP_REASON_FAILED_OTA_FW 0xE0
|
|
#define WAKEUP_REASON_FIRSTBOOT 0xFC
|
|
#define WAKEUP_REASON_NETWORK_SCAN 0xFD
|
|
#define WAKEUP_REASON_WDT_RESET 0xFE
|
|
|
|
#define EPD_LUT_DEFAULT 0
|
|
#define EPD_LUT_NO_REPEATS 1
|
|
#define EPD_LUT_FAST_NO_REDS 2
|
|
#define EPD_LUT_FAST 3
|
|
#define EPD_LUT_OTA 0x10
|
|
|
|
// these are the 'custom image' arguments that will be sent in addition to their 'type'.
|
|
#define CUSTOM_IMAGE_NOCUSTOM 0x00 // regular image type
|
|
#define CUSTOM_IMAGE_SPLASHSCREEN 0x01 // will show at first boot/powerup
|
|
#define CUSTOM_IMAGE_LOST_CONNECTION 0x02 // this image will be shown (if it exists on the tag) if the tag looses its connection
|
|
#define CUSTOM_IMAGE_APFOUND 0x03 // this image will be shown during bootup if an AP was found
|
|
#define CUSTOM_IMAGE_NOAPFOUND 0x04 // shown if during bootup no AP was found
|
|
#define CUSTOM_IMAGE_LONGTERMSLEEP 0x05 // shown if long term sleep is entered via command
|
|
// UNUSED: 0x06-0x0F
|
|
#define CUSTOM_IMAGE_SLIDESHOW 0x0F // image is part of a slideshow
|
|
#define CUSTOM_IMAGE_BUTTON1 0x10
|
|
#define CUSTOM_IMAGE_BUTTON2 0x11
|
|
// UNUSED: 0x12 to 0x1B
|
|
#define CUSTOM_IMAGE_RF_WAKE 0x1C
|
|
#define CUSTOM_IMAGE_GPIO 0x1D
|
|
#define CUSTOM_IMAGE_NFC_WAKE 0x1E
|
|
|
|
#define TAG_CUSTOM_MODE_NONE 0x00
|
|
#define TAG_CUSTOM_SLIDESHOW_FAST 0x06
|
|
#define TAG_CUSTOM_SLIDESHOW_MEDIUM 0x07
|
|
#define TAG_CUSTOM_SLIDESHOW_SLOW 0x08
|
|
#define TAG_CUSTOM_SLIDESHOW_GLACIAL 0x09
|
|
#define TAG_CUSTOM_MODE_WAIT_RFWAKE 0x20
|