Open hardware LPC1114 board with Ethernet interface using ENC28J60

Here I present a design of a multipurpose board with LPC1114FBD48 connected via SPI to an Ethernet module based on ENC28J60. The board provides connections to ADC channels, GPIO, temperature sensors, rotational encoder, button, LED, I2C, second SPI, and through the I2C expander 23017 also to LCD display and keyboard. As one example, it can be used to augment a dumb UPS to make a 'smart' one, which can monitor line power, battery voltage, temperature and report problems via email.

I decided to employ LPC1114FBD48 since it is relatively cheap, yet enough powerful for this purpose. For the Ethernet connection, I decided to use the pre-built module with ENC28J60, which can be obtained from Aliexpress for USD 2.50 and free shipping, since just the ENC28J60 chip on the module would cost substantially more when purchased in small quantities, not to speak about the RJ jack with transformers and rest of the small components.

The schematics is ethernetinterface.pdf and the open hardware Kicad design files are ethernetinterface.zip .

Concerning the software, I have modified the Arduino's etherShield, porting it to the LPC1114 chip, and adding some functionality for TCP SMTP session. One tricky point was that ARM-cortex M0 does not support load/store of uint32_t from unaligned address (not multiple of 4 bytes) and the CPU hangs. So I had to replace some uint32_t memory operations with memcpy/memcmp calls.

Presently there is a test program for ICMP ping.c and proof-of-concept SMTP program email.c. Later I may add some other applications. The whole sources (including other programs for LPC11xx) are in a tar file arm_lpc111x.tar.gz my contributions are under the GPLv3 license, some other parts may be under other open source licenses, cf. individual files.

Mains power monitor with email reporting as a supplement of dumb UPS

I have developed a mains power monitor with email reporting based on the aforementioned Kicad schematics . It is powered by a 5V adapter connected at output of the UPS, while another plug adaptor senses the mains line before UPS. The corresponding software is powerwatch.c in the tar file arm_lpc111x.tar.gz.

This is the view of the board from both sides:






My LPC1xxx page


My Electronics page


My hobby page


My main page with e-mail contact


TOP of my family pages