It depends on what you're trying to do.
The biggest gap is that a microcontroller you mentioned (such as Arduino) does not run a multitasking operating system such as Linux. This means if your application depends on multitasking or multithreading, this may be much harder or even impossible to run on Arduino.
The second gap is hardware support. For example, ...
PuTTY is actually quite secure - the session itself is encrypted. That's part of what SSH gives you "out of the box". I do a lot of this type of thing myself, and here are a few hit-points I would suggest:
Don't open port 22 to the world - configure your SSH server to listen on a non-standard port (e.g. 22022 or 2222) on your WAN interface
The Postscapes IoT Hardware Guidebook lists quite a few:
Judging by the names, there are a few derivatives of the Arduino. Furthermore, all devices running Linux should be ...
The other answers cover a lot of the technologies that you can use to protect your system. Here are some more general thoughts/philosophies.
A DMZ is your friend - In almost every case where you have a service facing an external network a DMZ (see a.) will be very beneficial. In this case it will both minimize the attack surface and minimize the damage. By ...
The device itself isn't really particularly important here. While the boundaries between 'IoT' and just a normal network connection are a bit fuzzy around the edges, the general consensus is that the main requirement is that you're interacting with the physical environment in some way.
How you reach that goal is up to you, and so it doesn't really matter if ...
ESP8266 can be a very good candidate for your project.
For increasing the battery life with ESP8226 you can follow this Open Home Automation article.
Ways to save power save highlighted by this article are:
make measurements at intervals (every 10 minutes for example), and sleep the rest of the time.
getting rid of the LED drops consumption to 77 uA,...
A Raspberry Pi 3 is a pretty serious bit of kit when you think about it
Quad core Arm Cortex
1gb of RAM
a onboard GPU
That is a huge amount of memory, easily more than enough to run a MQTT broker and something like Node-RED to interface between a LoRa radio and the broker.
We have a commercial gateway (MultiTech MultiConnect Conduit) in the office which ...
Adding to George's comprehensive answer and point 2) hardware support. Even if the desired hardware (e.g. ethernet, WiFi, SD card) is added to the microcontroller/Arduino via shields or similar extension boards the libraries to operate them are putting quite a strain on the small memory (i.e. ATMEGA328 (a typical Arduino controller) has 32Kb of FLASH and 2Kb ...
Your approach seems to be the best you can do, since the models you've listed don't support any sort of integration with Alexa (and I think it would be infeasible to modify the TV/cinema system directly to connect it to your network).
The Logitech Harmony Hub seems to take a very similar approach of simply sending infrared signals to control 'dumb' devices (...
The Google Home and Amazon Echo use microphone arrays to enhance 'far-field recognition' (i.e. recognising your voice from a reasonable distance with good accuracy).
The Echo uses a 7-microphone array (image from iFixit, with the microphones in green) and the Google Home uses a 2-mic array (iFixit; in yellow).
Amazon's 7-Mic Array is open for developers ...
Turns out there is no broker running on the Arch system whereas installing mosquitto on Raspbian automatically starts it. Simply enable and start the broker.
Start the systemd service.
systemctl start mosquitto
Enable the systemd service to run on boot.
systemctl enable mosquitto
Yes, you can significantly improve the security of pretty much any low level protocol using software - but any home-brew solution is always likely to have some flaws.
You need to consider at least 3 attack possibilities.
Denial of service. Maybe there is a fall-back mode of operation you want to use if the radio channel is blocked. You might also be able ...
The question 'Securing small home automation setup' provides a useful reference for general security tips, but there are also some specific steps you should follow to keep your Raspberry Pi secure.
Steve Robillard's answer to a question on Raspberry Pi Stack Exchange outlines some of the specific issues with using a Pi that you can address, such as changing ...
The solution is to install mosquitto-clients as well.
pi@raspberrypi:/ $ apt-get install mosquitto-clients
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
The following NEW packages will be installed:
libc-ares2 libmosquitto1 mosquitto-...
You could try Raspberry Pi with .NET Core. Microsoft has published decent automation libraries, including speech recognition. This is of course more hands-on, but combine it with other sensors and software, and you could do some pretty cool stuff.
Microsoft also utilize their speech recognition libraries in their Bing APIs, so you could potentially use the ...
Push vs Poll
Your proposed solution of sending frequent AJAX requests sounds a lot like polling - you're sending a request every so often to check if the state has changed. It would make far more sense to push changes to the server when the piezo sensor detects a change.
It's the difference between this:
Server: Is there someone at the door?
I'll assume that the processing requirements on the device are near enough zero. It sounds like you're using some acceleration input to determine how often to wake up the GSM device.
Ideally, you want an MCU which can be triggered from the accelerometer to wake from sleep, and then determine when to send a location ping. Any micro-python based device should ...
YES, it is a big jump from programming in Python to programming using the typical C-based language tools on micro-controller. In fact, in many cases you may need to write some, if not all, of your application in assembly language.
As already pointed out in the other answers, micro-controllers are very much resource constrained and thus you lose all the ...
Yes, big difference
The difference is like day and night, both in regards to hardware and software. No valid comparison at all.
When to use which
Use an Arduino, if...
Space constraints make a Pi infeasible.
The power usage of a Pi would be too much.
Money is an issue (especially if you need several or many individual controllers in your project, each ...
One way to debug this would be to run mosquitto manually with the same options as your init system is using, then look at the output. For example:
mosquitto -v -c <path to config file>
Adding -v will ensure that you have verbose logging, regardless of the config file settings.
The lightwaveRF lighting protocol is simple OOK at 433 Mhz, I think. It's documented, so you could use them. Maybe a little bit more expensive than other options though.
Here is an Arduino/Raspberry Pi library.
This is of course a solution with zero authentication or encryption, which ought to make it less attractive.
There also seem to be some WiFi ...
It is said already in other answers that you should use MQTT in your case.
MQTT is The Protocol if your things are behind a firewall in a private network . All tricks are an outbound rule for port 1833 or with some configuration maybe not even that .
How will the things change after taking MQTT and not http?
You will need one block more to ...
Aurora0001's great answer got me doing some more research and I found some really good information on a lot of mic arrays, including benchmarks.
Seeed ReSpeaker Mic Array
Conexant 4-Mic Development Kit
(Tonor Stereo Condenser Microphone)
medium.com did some awesome benchmarking on these. For ...
I can strongly recommend the particle products! Official website
They are all open source (Hardware and Software) and there is a great community.
They offer the particle photon which is a wifi development board and the particle electron, a cellular development board.
The main requirement is to be fully compatible with any of the broadly
After some further investigation, I think the issue in the question is that although the power (rate of energy transfer) was reduced, the overall energy consumption was increased by using Docker, so there is no benefit in terms of reduced electricity costs.
Based on the paper's figures for 100,000 requests, we can calculate the energy usage through the ...
You must have an RF interface to communicate with your skylights and unless you are an official partner I doubt that you can obtain all necessary information to build one specially for the Pi.
Also it does not seem to be an ordinary wireless communication technology.
Two-way radio communication complying with the EN 300-220 standard
I think something to consider is the following: Can someone send information over the 433 MHz freq to the Raspberry Pi? What information can be sent? Is there a vulnerability in the application that translates messages between the Pi OS and the light switch? Basically, does the 433 MHz receiver give an attacker a foothold into the rest of your network? I ...
Anything that involves a direction is going to require at least two sensors. I implemented something like this a while ago but we had the advantage of UHF RFID cards. We had employees with the RFID cards on them and a "choke point" - i.e. a hallway with a sensor at both ends. We could then see direction of people based on the timestamp difference of each ...
I believe there are a few points that haven't been specified explicitly yet.
The development environment is completely different. You can actually develop Pi software ON the Pi—you can even use a GUI if you like. There are advanced debugging tools built in as well as—well an awful lot of what is available for any computer system.
The controllers are ...
Ok here goes
Install MQTT on your Raspberry Pi
Look if it is already running on your Rpi linux flavor or install it
Expose your MQTT port
Look at which port MQTT is installed and open this port using port forwarding with your broadband modem
Connect your cloud server to your local MQTT
Test your sensors
I don't know how the temperature sensor will be ...