SDKCentraisDeAlarmeIntelbras v1.0.1

Fazer download em xlsx, pdf ou txt
Fazer download em xlsx, pdf ou txt
Você está na página 1de 29

1 Descrição do protocolo IsecNet V1

1.1 Definições gerais


As centrais de alarme da Intelbras possuem conexão com a internet através de dois meios de comunicação:
1 - Rede cabeada Ethernet/Wifi
2 - Rede celular (GPRS, 3G, 4G)
Para os dois meios de comunicação a conexão da central de alarme com o mundo extetrior é feita através de um socket TCP/IP e a central pode
se conectar com até dois softwares de monitoramento diferentes.
- O software de monitoramento irá atuar como servidor e deve disponibilizar uma porta para receber as conexões das centrais de alarme
- Ao ser ligada, a central de alarme irá iniciar a conexão com o software de monitoramento conforme descrito na aba "2-Receber eventos" e irá
manter essa conexão ativa indefinidamente. Para garantir que a conexão continua disponível, periodicamente será enviada uma mensagem de
Heartbeat/KeepAlive/Teste de Link e se não receber nenhuma resposta será iniciada uma nova conexão com o software de monitoramento
- Os valores exibidos em todos os exemplos deste documento estão no formato hexadecimal. A notação 0x é omitida para reduzir o tamanho
do texto

1.2 Formato do protocolo


O protocolo IsecNet V1 foi desenvolvido pela Intelbras e os dados são enviados no formato binário/hexadecimal.
O frame padrão segue o formato abaixo:

Num Bytes Comando Dados ChkSum


1 byte 1 byte 0 a 200 bytes 1 byte

Num Bytes - Número de bytes, representa a soma da quantidade de bytes dos campos Comando e Dados. Os campo ChkSum e Num Bytes não
são incluídos na soma. Tamanho = 1 byte
Exemplo 1: (Num Bytes = 1 byte) + (Comando = 1 byte) + (Dados = 0 bytes) + (ChkSum = 1 byte) - neste caso o frame é formado por 3 bytes, mas o
número de bytes será enviado como 0x01,pois representa a soma dos campos Comando + Dados - 1 byte + 0 byte = 0x01
Exemplo 2: (Num Bytes = 1 byte) + (Comando = 1 byte) + (Dados = 20 bytes) + (ChkSum = 1 byte) - neste caso o frame é formado por 23 bytes,
mas o número de bytes será enviado como 0x15 (21 em hexadecimal) , pois representa a soma dos campos Comando + Dados
- 1 byte + 20 bytes = 21 = 0x15

Comando - Identifica a operação que será executada. Tamanho = 1 byte.


Dados - Dados necessários para a execução do Comando. O tamanho deste campo é variável de acordo com o Comando enviado. Tamanho 0
a 200 bytes
ChkSum - Ver descrição no item 1.3.Tamanho 1 byte.

1.3 Cálculo do Check Sum


O checksum do frame que é calculado executando uma operação XOR entre todos os bytes do frame e um XOR com o valor 0xFF ao final.
Este campo é utilizado para verificar a integridade dos dados enviados. Tamanho 1 byte.
Exemplo : Calcular o check sum do frame 02 D1 10
02 XOR D1 = D3
D3 XOR 10 = C3 - Resultado XOR entre todos os bytes do frame
Executar XOR com o valor 0xFF -> C3 XOR FF = 3C
Frame final incluinfo o checkSum = 02 D1 10 3C

Veja abaixo o exemplo de uma rotina de cálculo do checksum em linguagem C

uint8_t calculaCheckSum(uint8_t buffer[], uint8_t tamanho){


uint8_t checkSum = 0;
for(uint8_t contador = 0 ; contador < tamanho ; contador++){
checkSum ^= buffer[contador];
}
checkSum ^= 0xFF;
return checkSum;
}

Se tiver dúvidas utilize a aba "A-Cálculo CheckSum" para verificar se o cheksum está sendo calculado corretamente. Basta preencher as células com
o valor de cada byte enviado (em hexadecimal) e o checksum será cálculado automaticamente conforme exemplo existente
Definições gerais
- Este documento descreve o processo para receber a conexão de uma central de alarme Intelbras bem como o processo de recebimento
de eventos e solicitação de informções básicas da central

1 Comandos enviados pela central (Tx) para o Software de


monitoramento (Rx)
1.1 Incio e manutenção da conexão com o software de monitoramento

1.2 Envio de eventos

1.3 Ajuste de data e hora

Requisições do software de monitoramento (Tx) para a


2 central de alarme (Rx)
2.1 Stauts
Definições gerais
- O protocolo decrito nesta aba deverá ser usado somente nas situações abaixo:
1 - se estiver desenvolvendo um aplicativo para conexão com uma central de alarme via Receptor IP
Neste caso o APP deverá enviar os comandos descritos nos itens 1.1, 1.2 e 1.3 para que o Intelbras Receptor IP permita a comunicação
com a central
2 - se estiver desenvolvendo um software de monitoramento que irá receber a conexão dos APPs AMT Mobile V3 e AMT Remoto e redirecionar
as informações recebidas para a central de alarme
Neste caso o software de monitoramento deverá ser capaz responder os comandos descritos nos itens 1.1, 1.2 e 1.3 e após isso
encaminhar as solicitações do APP para a central de alarme e vice versa.

Obs.: Se desejar enviar solicitações diretamente do software de monitoramento para central de alarme, consulte as abas 4 e 5

- O software Receptor IP implementa um Socket TCP Server na porta 9010 (default) e o software AMT Remoto ou Amt Mobile V3 um socket
TCP Client.
- O AMT Remoto ou AMT Mobile V3 deve se conectar ao Receptor IP nesta porta
- Uma vez estabelecida a conexão com o software AMT Remoto, se o mesmo fechar o socket TCP o Receptor IP finaliza o link definido no
comando “E4”.

Início conexão Receptor IP/Software monitoramento


1 Tx - AMT Remoto ou AMT Mobile
Rx - Receptor IP

Encaminhar comandos APP X Central de alarme (via


Receptor IP)
2 APP - AMT Remoto ou AMT Mobile (Tx)
Central de alarme (Rx)
Encaminhar comandos APP X Central de alarme (via
Receptor IP)
2 APP - AMT Remoto ou AMT Mobile (Tx)
Central de alarme (Rx)

Notificação push
3 Tx - AMT Mobile / Rx - Receptor IP
1 Protocolo ISECMobile
Definições gerais
- Este documento descreve o protocolo utilizado para a comunicação de APPs para smartphone e as centrais de alarme Intelbras
- Esse protocolo só aceita a senha master ou uma senha de usuário, a senha de acesso remoto só é aceita no protocolo de programação
descrito na aba "5-Programar central via APP"

Protocolo ISECMobile
O frame ISECMobile é encapsulado no frame ISECNet V1 utilizando o comando 0xE9 descrito na aba "3-Conectar a central via Rec IP" item 2.2.
Veja o exemplo abaixo:
Número de bytes Comando Conteúdo Checksum
1 byte 0xE9 Frame ISECMobile descrito logo abaixo 1 byte

O frame ISECMobile é formado pelos campos abaixo e tem como limitadores de início e fim de frame o caractere "!" (0x21 em hexadecimal)
O frame padrão segue o formato abaixo:

Inicio do frame Senha Comando Conteúdo Fim do frame


0x21 (!) 4 a 6 bytes 1 byte 0 a 130 bytes 0x21 (!)

<Inicio frame> - valor fixo 0x21 ( "!" em ASCII)


<Senha> - Senha do usuário com 4 ou seis dígitos no formato ASCII. Exemplo: a senha 5678 será enviada como 0x35 0x36 0x37 0x38.
O número de dígitos da senha é configurado na central de alarme
<Comando>
<Particao> - Define qual partição será ativada. Se este campo não for incluído todas as partições serão ativadas
0x41 - Ativa a partição "A"
0x42 - Ativa a partição "B"
0x43 - Ativa a partição "C" (disponível somente na AMT 4010)
0x44- Ativa a partição "D" (disponível somente na AMT 4010)
<Final frame> - valor fixo 0x21 ("!" em ASCII)
2 Respostas de confirmação(ACK) e erros(NACK)

3 Solicitação de status e leitura EEPROM

4 Ativar desativar a central de alarme

5 Pânico, PGM, bypass e sirene


1 Protocolo ISECProgram
1.1 Definições gerais
- Este documento descreve o protocolo utilizado para a comunicação de aplicativos para programação e as centrais de alarme Intelbras
- Esse protocolo só aceita a senha de acesso remoto , a senha master ou uma senha de usuário só são aceitas no protocolo descrito na aba
"4-Comandar central via APP"

1.2 Protocolo ISECProgram


O frame ISECProgram é encapsulado no frame ISECNet V1 utilizando o comando 0xE7 descrito na aba "3-Conectar a central via Rec IP" item 2.1.
Veja o exemplo abaixo:
Número de bytes Comando Conteúdo Checksum
1 byte 0xE7 Frame ISECProgram descrito logo abaixo 1 byte

O frame ISECMobile é similar ao protocolo ISECNet V1 a principal diferença é que ao invés do checkSum um CRC é calculado e adicionado ao
final do frame.
O frame padrão segue o formato abaixo:

Num bytes Comando Dados CRC Hi CRC Lo


1 byte 1 byte 0 a 191 bytes 1 byte 1 byte

<Num bytes> - O campo NumBytes representa representa o número de bytes dos campos comandos e dados e não conta os bytes ocupados
pelo CRC nem pelo próprio campo(NumBytes).
<Comando> - Indica a a função que será executada todos os comandos enviados para centrals tem uma resposta correspondente

<CRC Hi> - byte superior do CRC calculado, ver item "1.3 Cálculo CRC"
<CRC Lo> - byte inferior do CRC calculado, ver item "1.3 Cálculo CRC"

1.2 Cálculo CRC


O CRC é calculado conforme exemplo em Java abaixo. O parâmetro dadosEntrada representa os bytes dos campos Num Bytes, Comando
e Dados.

private static short calcularCRC(List < Integer > dadosEntrada) {


List < Short > listaComZeros = new ArrayList < Short > ();
for (int i = 0; i < dadosEntrada.size(); i++) {
listaComZeros.add((short)(dadosEntrada.get(i) & 0xFF));
}
listaComZeros.add((short) 0);
listaComZeros.add((short) 0);
int CRC = 0;

int CRCByteCount = 0;
for (int i = 0; i < listaComZeros.size(); i++) {
/*
* na primeira chamada preenche o byte 2
* na segunda o byte 1
* e nas demais preenche o byte 0
*/
int leftShift = 8 * (2 - CRCByteCount);
CRC = CRC & (((int) 0xFF << leftShift) ^ (int) 0xFFFFFFFF);
CRC = (CRC | (listaComZeros.get(i) << leftShift));
if (CRCByteCount < 2) {
CRCByteCount++;
} else {// quando os bytes de 0 a 2 estiverem preenchidos
for (int j = 0; j < 8; j++) { // desloca o valor armazenado 8 posic¸o~es para a esquerda, 1 bit por vez
CRC = (CRC << 1);
if ((CRC & 0x1000000) == 0x1000000) {// se o bit menos significativo do byte 3 estiver em 1
CRC = (CRC ^ 0x00800500);// executa um XOR do valor armazenado com a constante 0x00800500
}
}
}
}
CRC = ((((CRC >>> 16) & 0xFF) << 8) | ((CRC >>> 8) & 0xFF));
return (short)(CRC & 0xFFFF);
}

/**
* Retorna a parte "Hi" do CRC.
* @param CRC
* @return Parte "Hi" do CRC.
*/
private static int extrairCRCHi(short CRC) {
return (byte)((CRC & 0xFF00) >>> 8);
}

/**
* Retorna a parte "Low" do CRC.
* @param CRC
* @return Parte "Low" do CRC.
*/
private static int extrairCRCLo(short CRC) {
return (byte)(CRC & 0x00FF);
}

Para conferência, é possível utilizar sites na internet, tais como o https://crccalc.com/. Abaixo está o exemplo de como usá-lo.
return (byte)(CRC & 0x00FF);
}

Para conferência, é possível utilizar sites na internet, tais como o https://crccalc.com/. Abaixo está o exemplo de como usá-lo.
2 Início ,manutenção e finalização da conexão

3 Ativação/desativação e solicitação de status

4 Bypass, PGM, sirene, memória disparos, data e hora

5 Dispositivos sem fio

6 Dispositivos do barramento

7 Atualização de firmware via cloud

8 Gravação e leitura de configurações


1 Descrição do protocolo IsecNet V2

1.1 Definições gerais


- Este protocolo é uma evolução do protocolo ISECNet V1 e a única diferença é o formato do pacote. Ele é utilizado para a comunicação com as
centrais de alarme da linha AMT 8000
- Para recebimento de eventos a AMT 8000 utiliza o mesmo protocolo das demais centrais de alarme (ver aba "2-Receber eventos")

1.2 Formato do protocolo


O protocolo IsecNet V2 foi desenvolvido pela Intelbras e os dados são enviados no formato binário/hexadecimal.
O frame padrão segue o formato abaixo:

DST ID SRC ID Num. Bytes Command Data ChkSum


2 bytes 2 bytes 2 bytes 2 bytes 0 a 1000 bytes (depende do modelo da central) 1 byte

<DST ID> - Endereço destino, para o uso deste documento será sempre 0x0000. Tamanho = 2 bytes
<SRC ID> - Endereço origem, para o uso deste documento será sempre 0x0000. Tamanho = 2 bytes
<Num Bytes> - Número de bytes, representa a soma da quantidade de bytes dos campos Comando e Dados. Os campo DST ID, SRC ID, ChkSum e
Num Bytes não são incluídos na soma. Tamanho = 2 bytes
Comando - Identifica a operação que será executada. Tamanho = 2 bytes.
Dados - Dados necessários para a execução do Comando. O tamanho deste campo é variável de acordo com o Comando enviado. Tamanho 0
a 1000 bytes dependendo do modelo da central de alarme
ChkSum - Ver descrição no item 1.3.Tamanho 1 byte.
1.3 Cálculo do Check Sum
O check Sum do frame que é calculado executando uma operação XOR entre todos os bytes do frame e um XOR com o valor 0xFF ao final.
Este campo é utilizado para verificar a integridade dos dados enviados. Tamanho 1 byte.
Exemplo : Calcular o check sum do frame 02 D1 10
02 XOR D1 = D3
D3 XOR 10 = C3 - Resultado XOR entre todos os bytes do frame
Executar XOR com o valor 0xFF -> C3 XOR FF = 3C
Frame final incluinfo o checkSum = 02 D1 10 3C

Veja abaixo o exemplo de uma rotina de cálculo do checksum em linguagem C

uint8_t calculaCheckSum(uint8_t buffer[], uint8_t tamanho){


uint8_t checkSum = 0;
for(uint8_t contador = 0 ; contador < tamanho ;contador++){
checkSum ^= buffer[contador];
}
checkSum ^= 0xFF;
return checkSum;
}

Se tiver dúvidas utilize a aba "A-Cálculo CheckSum" para verificar se o cheksum está sendo calculado corretamente. Basta preencher as células com
o valor de cada byte enviado e o checksum será cálculado automaticamente conforme exemplo existente
1 AMT 8000
1.1 Definições gerais
- Para receber as fotos associadas a um evento da AMT 8000 envie os comandos descritos nos itens 2.1, 2.2 e 2.3 em sequência
- Ao receber um evento como foto associada (comando 0xB5) é necessário se autenticar utilizando o comando F0F0 descrito no item 2.1
- Após autenticar enviar o comando 0BB0 descrito no item 2.2 informando o índice recebido no evento e solicite os fragmentos da foto
- Ao finalizar o recebimento de todos os fragmentos, desconectar da central usando o comando F0F1 descrito no item 2.3
- Quando o sensor dispara, a foto ainda não está disponível na central, leva em torno de 15 Segundos para cada foto ser enviado para central.
Ao tentar ler a foto da central durante este processo, será respondido o comando de NACK 0xF0FD com ERRO 0x28: ERRO_GRAVANDO_FOTO,
neste caso é necessário aguardar 10 segundos e enviar o comando novamente
- Uma lista com todos erros possíveis (NACK) está descrita no item 2.4

2 Recebimento de fotos
Descrição

Exemplo status parcial central de alarme 08 e9 21 31 32 33 34 5a 21


CheckSum
FF
40
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
Comando montado
FF
08e921313233345a2140
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
FF
Enter + 90 + X + Enter
Eventos de falha/ disparo
Evento
X Índice Descrição
Q + XYZ
128 1 401 Desativação do Usuário
129 NA NA
130 1 130 Disparo de Zona
131 1 133 Disparo de Zona 24h
0
132 NA NA
133 1 131 Disparo de cerca elétrica
134 1 371 Corte de Fiação dos Sensores
135 1 372 Curto-circuito na fiação dos sensores
136 1 383 Tamper do sensor
137 1 333 Problema no dispositivo do barramento
138 1 145 Tamper modulo de expansão
139 1 570 Anulação temporária da zona
1
140 1 573 Anulação por disparo
141 1 301 Falha na rede elétrica
142 1 302 Bateria principal baixa ou em curto-cicuito
143 1 311 Bateria principal ausente ou invertida
144 1 300 Sobrecarga na saída auxiliar
145 1 321 Corte ou curto-circuito na sirene
146 1 351 Falha na linha telefônica
147 1 384 Bateria baixa de sensor sem fio
2
148 1 407 Desativação remota
149 1 403 Auto-desativação
150 NA NA
151 1 100 Emergência médica
152 1 110 Disparo ou pânico de incêndio
153 1 121 Senha de coação
154 1 122 Pânico Silencioso
155 1 120 Pânico audível ou silencioso
3
156 1 305 Reset pelo modo de programação
157 1 306 Alteração da programação do painel
158 1 354 Falha ao comunicar eventos
159 1 461 Senha incorreta
160 1 410 Acesso remoto pelo software de download/ upload
161 NA NA
162 1 601 Teste manual
163 1 602 Teste periódico
4
164 1 616 Solicitação de manutenção
165 1 621 Reset de buffer de eventos
166 NA NA
4

167 1 625 Data e hora foram reiniciadas


168 NA NA
169 NA NA
170 1 147 Falha da supervisão Smart
171 1 422 Acionamento de PGM
5
172 1 322 Toque de porteiro
173 NA NA
174 1 360 Falha no Keep Alive do GPRS
175 1 361 Falha no Keep Alive da Eth
176 1 342 Falha rede elétrica módulo expansão
177 1 533 Inclusão de dispositivo RF
178 1 534 Inclusão/cadastro de senha
179 1 416 Atualização do FW com sucesso
6
180 1 417 Falha na atualização do FW
181 1 535 Zona habilitada
182
183

Relacionado com usuário


Relacionado com zona
Relacionado com disp. de barramento
PGM irá no campo Partição e qual usuário que ativou irá no campo Usuário
Relacionado com os Ips de conexão
Se estiver de 0-99 é relacionado a zona; se estiver de 100-200 é relacionado ao usuário
Sem relação
Enter + 91 + X + Enter
Eventos de restauração
Evento
Índice Descrição
Q + XYZ
0 3 401 Ativação do Usuário
1 3 456 Ativação Parcial
2 3 130 Restauração de Disparo de Zona
3 3 133 Restauração de Disparo de Zona 24h
4 NA NA
5 3 131 Restauração de Disparo de cerca elétrica
6 NA NA
7 3 372 Restauração do curto-circuito na fiação dos sensores
8 3 383 Restauração do tamper do sensor
9 3 333 Restauração do problema no dispositivo do barramento
10 3 145 Restauração do tamper módulo de expansão
11 NA NA
12 NA NA
13 3 301 Restauração da falha na rede elétrica
14 3 302 Restauração da bateria principal baixa ou em curto-cicuito
15 3 311 Restauração do bateria principal ausente ou invertida
16 3 300 Restauração da sobrecarga na saída auxiliar
17 3 321 Restauração do corte ou curto-circuito na sirene
18 3 351 Restauração da falha na linha telefônica
19 3 384 Restauração da bateria baixa de sensor sem fio
20 3 407 Ativação remota
21 3 403 Auto-ativação
22 3 408 Ativação por uma tecla
23 NA NA
24 3 110 Restauração do disparo ou pânico de incêndio
25 NA NA
26 NA NA
27 NA NA
28 NA NA
29 NA NA
30 NA NA
31 NA NA
32 NA NA
33 NA NA
34 NA NA
35 NA NA
36 NA NA
37 NA NA
38 NA NA
39 NA NA
40 NA NA
41 NA NA
42 3 147 Restauração da supervisão Smart
43 3 422 Desacionamento de PGM
44 NA NA
45 3 531 Dispositivo encontrado
46 3 360 Restauração da falha no Keep Alive do GPRS
47 3 361 Restauração da falha no Keep Alive da Eth
48 3 342 Restauração rede elétrica módulo expansão
49 3 533 Exclusão de dispositivo RF
50 3 534 Exclusão de senha
51 NA NA
52 NA NA
53 3 535 Zona desabilitada
54
55

rio

ado ao usuário
Modelos de centrais que enviam estes eventos

Todas
Todas
Todas
Todas
Todas
Todas
Todas
Todas
Todas
Todas
Todas
Todas
Todas
Todas
Todas
Todas
Todas
Todas
Todas
Todas
Todas
Todas
Todas
Todas
Todas
Todas
Todas
Todas
Todas
Todas
Todas
Todas
Todas
Todas
Todas
Todas
Todas
Todas
Todas
Todas
----
----
AMT 4010 SMART, AMT 1000 SMART, AMT 2018 E SMART
AMT 4010 SMART, AMT 1000 SMART, AMT 2018 E SMART
AMT 4010 SMART, AMT 1000 SMART, AMT 2018 E SMART
AMT 4010 SMART, AMT 1000 SMART, AMT 2018 E SMART
AMT 4010 SMART, AMT 1000 SMART, AMT 2018 E SMART
AMT 4010 SMART, AMT 1000 SMART, AMT 2018 E SMART
AMT 4010 SMART
AMT 1000 SMART, AMT 2018 E SMART
AMT 1000 SMART, AMT 2018 E SMART
AMT 1000 SMART, AMT 2018 E SMART
AMT 1000 SMART, AMT 2018 E SMART
AMT 1000 SMART, AMT 2018 E SMART
----
----
Esta aba pode ser utilizada para entender as mensagens recebidas ou enviadas para a central de alarme durante o desenvolvime
Ela irá separar dividir os bytes da mensagem e identificar o seu significado no protocolo. Para utiliza-la basta copiar a mensagem
seu ambiente de desenvolvimento, colar na célula em amarelo e clicar no sinal "+" correspondente ao protocolo desejado. Após
abrir a lista role a tela até o início

Insira na celula abaixo a mensagem recebida

Nibble superior
Nibble inferior
Hexadecimal
00, 81, 00, 00, 00, 13, 35, 63, FF, 00, 00, 00, 00, 00, 00, 00, 00, 00, 00, 00, 00, 00, 00,
00, 00, 44

Bit 7
Bit 6
Bit 5
Bit 4
Receber eventos e Conectar a central via Rec IP

Comandar central via APP requisição

Comandar central via APP resposta da central

Programar central via APP

PROTOCOLO IsecNetV2

PROTOCOLO IsecNetV2 encapsulado no comando 0xE7


e o desenvolvimento.
opiar a mensagem do
o desejado. Após
Bit 3
Bit 2
Bit 1
Bit 0

Você também pode gostar

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy