Maybe this answer will suffice

\documentclass[a4paper]{article}
\usepackage[siunitx, RPvoltages]{circuitikz}
\usetikzlibrary{positioning, arrows.meta}
\begin{document}
\begin{circuitikz}[scale=1.2]
\draw [short, *-, green!50!black, ultra thick]
(0,0) coordinate(left)
to [
twoport,
t={$K^{th}$ branch element},
bipoles/twoport/width = 2.5, name=port, fill=blue!30
]
(10,0)
to [short,-*]
(10,0) coordinate(right) ;
\coordinate [above=of port] (ab);
\coordinate [below=of port] (cd);
\draw [
->, thick, red!50!black,
shorten >=0.5cm,
shorten <=0.5cm,
>=stealth,
out=45,
in=180,
looseness=1
]
(left)
to (ab) node[fill=blue!20, circle, ]{$v_k$};
\draw [
->, thick, red!50!black,
shorten >=0.5cm,
shorten <=0.5cm,
>=stealth,
out=0,
in=135,
looseness=1
]
(ab) to (right);
\draw [
->, thick, red!50!black,
shorten >=0.5cm,
shorten <=0.5cm,
>=stealth,
out=-45,
in=180,
looseness=1
]
(left)
to node[pos=0.5, fill=blue!20, circle]{$v_k$} (cd) ;
\draw [
->, thick, red!50!black,
shorten >=0.5cm,
shorten <=0.5cm,
>=stealth,
out=0,
in=225,
looseness=1
]
(cd)
to node[pos=0.5, fill=blue!20, circle]{$v_k$} (right) ;
\draw (cd) node[circ]{}node[eground]{} ;
\node [above=4pt of left, fill=red!20, circle]{$+$}
node[below=4pt of left,fill=red!20, circle]{$+$}
node[left=4pt of left, draw, circle,fill=blue!20]{$i$};
\node [above=4pt of right,fill=red!20, circle]{$-$}
node[below=4pt of right,fill=red!20, circle]{$+$}
node[right=4pt of right, draw, circle,fill=blue!20]{$j$};
\node [ below right=4pt and 0.5cm of cd,fill=red!20, circle]{$-$}
node[below left=4pt and 1.2cm of cd,fill=red!20, circle]{$-$}
node[below left=4pt and 0.5cm of cd, draw, circle,fill=blue!20]{$o$};
\end{circuitikz}
\end{document}