Thursday, November 5, 2015

Redesigned UI


Last week I put some effort into creating fresh new look with CSS. I was so happy with the look, that I have rewrote all the UI into it. Look at the screen capture below, it is best viewed in HD. Just remember that the web service is provided by the 8bit ATmega MCU, still amazing. I'm not showing the Key and Phone parts, as this is unit is already guarding my property and the iButtons codes and phone numbers are listed there.


As always, I will push all updates to GitHub.

Tuesday, October 27, 2015

New design

It has been a while when I started real world testing of the whole system.  I have polished the code, fixed few bugs. Now I'm deciding that do next. I have few things on mind:

1. Design new PCB, bigger with all things on it. I have moved from Eagle to KiCad, and curently designing something like this:
It has WizNet W5500 Ethernet chip, SIM900 for GSM, and also some other improvements like better analogue protection. Size would be 10x15cm and it will be drop in replacement for any old wired burglar alarm.

2. Move the software to Arduino 1.6 to resolve the last bug with SPI transactions. Ethernet library disables interrupts and very seldom some interrupts are missed, causing a radio or RS485 packet to be not seen.  That would mean to rewrite libraries too, namely W5500 and RFM12B.

3. Port the RTOS from Nil to newer version called ChibiOS RT that allows dynamic threads and dynamic allocation of memory. This would eliminate the static allocation of memory for sensors and keys taking up RAM even if not needed.

For me all that work for many months is just fine, but I would like this to maybe become some kind of community project, so I'm not alone in this. I would gladly accept any hints, help in coding or design, or give some help to anyone.

Let me know...

Friday, August 14, 2015

Code update

There is small update to code for mainboard. I have added to global setup user and password prompts to allow user do basic authentication. The function is derived from Webduino functionality, and secure all pages provided by system. I guess the added security is fine on home networks, and no one should allow outside world to connect to your private security interface. New code has been pushed to GitHub.

Thursday, May 28, 2015

Remote unit demo

I have shot a short video that show how the authentication works on the remote unit. As you can see there is red and green LED in the probe that helps to show current state, and piezo that is mounted inside. Slow green flashes without sound means that group/zone is disarmed. After touching the probe with a valid iButton, the group is being set to arm state with the configurable delay, as shown red flashes with sound. When the delay passes it switches to arm state, slow red flashes without sound. Then tripping a zone, here opening front door, shows another state awaiting authorization. The delay of wait state is configurable in 3 to 0 times of authentication delay time, which is configurable in seconds as well. Every such wait state is represented by faster LED flashes and also faster sound.


As you can see in the video I have the unit mounted next to switches, directly in the wall. I found it very fast and easy to arm/disarm the group. My 5 year old daughter still finds it funny after 3 months of use and she ask for my keys to do it.

Thursday, May 14, 2015

GSM and uptime

Just today, I have accidentally discovered that the GSM service provider had
some problems with his network. Luckily the thread that check GSM status handled the network failure just well, and recovered from it without issues.

I have the system up and running for 96 days with all threads working. I
must say the NilRTOS is really robust.I'm planning some software updates, but I have to create remote ISP first.


Also recently I have got W5500 chip and Wiz550IO and I'm very tempted to create a new mainboard together with SIM900. This would be all included alarm board that can simply replace old alarms and offer many features with open firmware and hardware.

Tuesday, April 7, 2015

Web interface - home

Here on the right side is the home page of my security screen. There is not to much to set in terms of system functionality. There is system time, which is NTP synchronized on startup or whenever you hit the "Get NTP time" button (Connection to Internet is needed :). There are also information about the last system start up time and calculated uptime. Then information about power supply and battery state. Another section is about radio and GSM module statuses. Rather self-explaining I guess.

More important are the last three buttons. Starting from "Reset to default" that will wipe all configuration that is kept in the system RAM and replace it with "factory default". You would do it only in case you really want to start from beginning. The "factory default" must be confirmed by pressing any "Save all" button, so the changes are just loaded into RAM but not stored into EEPROM. You can go and take the last stored configuration in EEPROM by "Load last" button. "Load last" can also be used when you change temporarily any configuration in RAM for test cases. Just remember that in case of power loss the system stores current configuration form RAM to EEPROM just before the main backup battery is depleted.

Tuesday, March 3, 2015

Test run - stability

I've been a little busy at work and with family recently. This led into an unintended testing period of the software and hardware. I'm happy to say that the system is working now for 25 day without any problems. Groups, zones, sensors are doing what they should. The communication with wired and wireless modules is working. GSM modem is sending SMS, LAN is responding and sending data through MQTT. All is just working. Big success for me!

This brings me to an idea, does anyone want to have PCB for this project? Let me know, I have some spare ones, and will send them to you for 6-8 EUR (10$), depending on your location.