Похоже это следствие ошибки в ReadPersistentStorage - если записи с заданным ключом нет, то возвращается пустая строка, а не NULL. Правильным вариантом кода будет
ReadPersistentStorage($event->dciId . "_0x" . right(d2x($node->id), 8, "0"));
Предварительно можно еще проверить что $event->dciId не NULL.
ReadPersistentStorage($event->dciId . "_0x" . right(d2x($node->id), 8, "0"));
Предварительно можно еще проверить что $event->dciId не NULL.