You are here

ENC28J60 filtering xPL messages

I could program the enc28J60 filters to deal with xPL messages only, that can reduce overload problems,
here is the code to filer xPL message

writeRegByte(ERXFCON, ERXFCON_ANDOR|ERXFCON_CRCEN|ERXFCON_PMEN);
// writeReg(EPMO, 0x0000);
writeReg(EPMM0, 0x3000); // 0C = 08:00 = IP
writeReg(EPMM2, 0x0080); // 17 = 11 = UDP
writeReg(EPMM4, 0x3C30); // 24 = 0F:19 = Port xPL
// 2A = 78:70:6C:2D = "xpl-"
writeReg(EPMM6, 0x001C); // 32 = 0A:7B:0A = "/n{/n"*/
 
writeReg(EPMCS, 0xB4F7); //checksum

and this code to filter only xpl-cmnd messages, to get away of flying xpl-stat/xpl-trig messages that can flood the small arduino.

writeRegByte(ERXFCON, ERXFCON_ANDOR|ERXFCON_CRCEN|ERXFCON_PMEN);
// writeReg(EPMO, 0x0000);
writeReg(EPMM0, 0x3000); // 0C = 08:00 = IP
writeReg(EPMM2, 0x0080); // 17 = 11 = UDP
writeReg(EPMM4, 0xFC30); // 24 = 0F:19 = Port xPL
// 2A = 78:70:6C:2D:63:6D = "xpl-cm"
writeReg(EPMM6, 0x001F); // 32 = 6E:64:0A:7B:0A = "nd/n{/n"*/
 
writeReg(EPMCS, 0xE325);