% Tikz File final_structure.tex
\documentclass{standalone}
\usepackage{tikz, graphicx}
\usetikzlibrary{decorations.pathreplacing, calc, positioning}

\begin{document}
\begin{tikzpicture}
    %\draw[gray,very thin] (-3,-3) grid (12,12);
    
    % Frame
    \coordinate (frame) at (3,1);
    \filldraw[color=gray!10, fill=gray!10] (frame) rectangle +(4,8.0);
    \node (text_rpi) at (5,8.5) {\huge Raspberry Pi};
    
    %node-red-dashboard
    \coordinate (nrd) at (3.25,7.1);
    \filldraw[color=red, fill=red] (nrd) rectangle +(3.5,0.8);
    \node (text-nrd) at (5,7.5) {Node-Red-dashboard};
    
    %node-red
    \coordinate (nr) at (3.25,6.1);
    \filldraw[color=red, fill=red] (nr) rectangle +(3.5,0.8);
    \node (text-nr) at (5,6.5) {Node-Red};
    
    %mosquitto
    \coordinate (mq) at (3.25,4.6);
    \filldraw[color=yellow, fill=yellow] (mq) rectangle +(3.5,0.8);
    \node (text-mq) at (5,5) {Mosquitto};
    
    %homegear
    \coordinate (hg) at (3.25,2.1);
    \filldraw[color=cyan!50, fill=cyan!50] (hg) rectangle +(3.5/2-0.25,1.8);
    \node (text-hg) at (4,3) {Homegear};
    
    %pivccu
    \coordinate (pi) at (5.25,2.1);
    \filldraw[color=cyan!50, fill=cyan!50] (pi) rectangle +(3.5/2-0.25,1.8);
    \node (text-pi) at (6,3) {piVCCU};
    
    %ss-dashboard
    \coordinate (ss-nrd) at (9.8,8-0.5);
    \node[inner sep=0pt] (img-ss-nrd) at (ss-nrd)
        {\includegraphics[width=0.2\textwidth]{images/ss_dashboard.jpg}};
        
    %ss-nodered
    \coordinate (ss-nr) at (0.5,7);
    \node[inner sep=0pt] (img-ss-nr) at (ss-nr)
        {\includegraphics[width=0.2\textwidth]{images/ss_nodered.jpg}};
    
    %ss-homematic
    \coordinate (ss-hm) at (9.8,3);
    \node[inner sep=0pt] (img-ss-hm) at (ss-hm)
        {\includegraphics[width=0.2\textwidth]{images/ss_homematic.jpg}};
    
    %esp
    \coordinate (esp-c) at (0.5,3);
    \node[inner sep=0pt] (esp) at (esp-c)
        {\includegraphics[width=0.2\textwidth]{images/esp8266.png}};
    
    % arrows
    \draw[black,thick,<->] (text-nrd) -- (text-nr);
    \draw[black,thick,<->] (text-nr) -- (text-mq);
    \draw[black,thick,<->] (text-mq) -- (text-hg);
    \draw[black,thick,<->] (text-mq) -- (text-pi);
    
    \draw[black,thick,->] (esp.12) -- (text-mq.west) node[thick,midway,rotate=36,yshift=2mm,xshift=-1mm]{smarthome-Wifi};
    \draw[black,thick,->] (img-ss-hm) -- (text-pi.east) node[thick,midway,yshift=2mm,xshift=1mm]{Eduroam};
    \draw[black,thick,->] (img-ss-nr.-22) -- (text-nr.west) node[thick,midway,yshift=2mm,xshift=-5mm]{Eduroam};
    \draw[black,thick,->] (img-ss-nrd) -- (text-nrd.east) node[thick,midway,yshift=2mm,xshift=1mm]{Eduroam};
    
\end{tikzpicture}
\end{document}