Close

The status of the project....so far.

A project log for Cheap Ethernet IO extension board for smarthome

Cheap low power smarthome extension board with Ethernet/Modbus/1-wire/DMX512/Wifi connection

markbngmarkbng 05/02/2017 at 19:250 Comments

It has been quiet for some time, but I have made some progress. This is the current status of project. I am making the schematics in Altium designer. These are the features I will add to the project:

* main controller is the ATSAMD21G18A-AUT. I want to make the schematic Arduino M0/Arduino zero compatible. Controller and SWD connections have been drawn (controller is now in PCB library).

* 64 IO's with IO expanders. I can make them with 3v3 or 5v level output. I chose for the 5v level for a better robustness against interference. The IO's are expanded by PCAL6416APW,118 IO expanders (16 IO's). These expanders can also generate an interrupt when an input changes and can therefore react very fast when a button is pushed. I have 64 IO's, so this means 4 expanders. There is only 1 addr line on the I2C device, so actually I can only have 2 expanders on 1 I2C bus. I solved this by using the 4053 that switches between I2C-group1 (expanders 1 and 2) and I2C-group2 (expanders 3 and 4). The IO's are NOT protected against 220VAC or 24VDC, but have a normal ESD protection. These digital IO's can be connected to a relais board or SSR board (I will make this board afterwards). The inputs can be connected to an optocoupler board to separate the safe electric zone of the IO expander with the unsafe zone, but you can also switch the 5V directly with the momentary switches from the outside (less safe). The IO expander schematic is finished. I use 1 sercom for this I2C connection and the I2C from this sercom is only for the expenders.

* Ethernet. The ethernet connection is provided by the ENC28J60 board from aliexpress. Cheap and fully functional. I have to add this to the schematic

* RS485/Modbus/DMX. Since we have ethernet, it may be possible to make an ethernet to MODBUS and/or DMX interface. I have added 2 RS485 connections. One for the Modbus and the other for the DMX bus. The RS485 will be half duplex and will be connected to 2 sercom uart interfaces. The RS485 interface IC's are the MAX485CSA or the ST1480ACDR. I have already added this to the schematic.

* 1-wire. I will also add a DS2484R+T device. This is an I2C to 1 wire interface. Most home automation systems have the DS18S20 thermometer sensors to measure the temperature. This will also be possible with our device. I2C will be connected to a sercom. I can optionally add an I2C graphic LCD. Please leave a comment if you think this is useful. I have only drawn the D2484 in the library.

* KNX. I wanted to add KNX to this device. But it doesn't make sense to address KNX devices from this device (since the Loxone can do that) and I think the main connection to the outside will be TCPIP, so making the KNX device connection to the Loxone will also not be an option. Please leave a comment if you think it is useful that this device will functions as a KNX device. It's also more expensive due to the software stack. No KNX connection is present in the current schematic.

* Wifi. I will use ethernet, but I think that many people want Wifi on this device. I chose for the 'old' ESP8266 and not the ESP32 (with BLE). I will add the ESP12 module. I have added this to the schematic.

* USB. I want to make board with the ATSAMD21 arduino M0 compatible, but I don't know if we need an host USB connection. It's a small effort to make it possible to make this connector host capable, but then I have to use micro USB. I prefer the good old USB B connector to make the connector more tough. This means the ATSAMD21 will only be an USB device. Do you use the host function?

* Power. DC-DC synchronous switches will convert 24VDC to 5VDC and 3V3. This has not been implemented yet.

Schematics will be shown here on a short notice.

Just a question....I have muliple functions added to this PCB. It will have an ethernet to 1-wire function, ethernet to Modbus, ethernet to DMX and ethernet to IO function. Is it possible to have all these function with 1 ethernet connection?

Discussions