App Intel

NetSimple

LiveFerdinand Stueckler22 apps · 397.9K installsCommunicationFreecom.ip.netsimple

Network Remote Control for sending positional information to microcontroller.

Alert me★ WatchOpen in Play ↗
Total installs
273
exact · Play shows 100+
Installs / day
0
since last crawl
Rating
—★
— ratings · — reviews
Released
23 Mar 2016
10.6y ago
Last update
29 Mar 2016
v1.0 · 10.5y ago
Countries
—
not checked yet

Install history

exact counter from Google Play
266.7325383.3441.750010 Oct12 Oct13 Oct
266.7325383.3441.750010 Oct12 Oct13 Oct

Installs per day · last 90 days

00.30.50.8111 Oct12 Oct13 Oct

Change timeline

Full history

No changes recorded yet. We compare every crawl with the previous one and list title, icon, screenshots, description, version, price and availability changes here.

Country availability

Availability has not been checked for this app yet. “Check all countries” looks the app up in about 140 Google Play storefronts and shows where it is live, listed but not installable, or missing — plus any country-specific (custom) store listings.

Top countries

Country data will be available soon.

We estimate where downloads come from using the app’s position in Google Play’s top charts in about 140 countries. This app is not in any chart we have collected yet; the estimate appears as soon as it is.

Top chart positions

Not in any tracked top chart.

App manifest

Read this app's manifest from Google Play: permissions, declared SDKs, components and AdMob app ID. Saved analysis appears here automatically.

Manifest analysis reads only the required APK ranges. Base APK downloads may need separate device splits to install.

Data safety

declared by the developer on Google Play
  • No data shared with third parties
  • No data collected
  • Follows the Play Families Policy

This is the developer's own declaration, summarised from the Play listing. The permissions below show what the app is technically able to access.

Permissions

1 in 1 group
0 Sensitive0 Notable1 Routine
OtherRoutine1

Access to miscellaneous device features that don't fit other categories

  • Connect to the internet to load content and send datafull network access · INTERNET

Sensitive = can reach personal data, location, camera/mic or act on your behalf. Notable = changes how your device behaves. Routine = normal for almost every app. Source: Google Play's permission list for all versions of this app.

Store listing

Full description
The purpose of the app is to control remote hardware like Arduino, Netduino, Raspberry Pi ... The protocol is TCP/IP (Client). UP: 0, power, 0 DOWN: 0, -power, 0 LEFT: -power, power, 0 RIGHT: power, power, 0 MIDDLE: 0, 0, 0 or 0, 0, power (Zero active) Byte Mode: 3 positions are transfered as 3 bytes (default) ASCII Mode: 3 positions are transfered as text seperated by comma (ended by \n) Session inactive: Each transmission in a serated connection Session active: Connection never closed, but if necessary automatic reconnect (default) Zero inactive: No return to zero values after release Zero active: Auto return to zero values after release Sample code for a server on Raspberry Pi: #include "stdio.h" #include "stdlib.h" #include "string.h" #include "unistd.h" #include "sys/types.h" #include "sys/socket.h" #include "netinet/in.h" void error(const char *msg) { perror(msg); exit(1); } int main(int argc, char *argv[]) { int sockfd, newsockfd, portno,n; socklen_t clilen; char buffer[256]; struct sockaddr_in serv_addr, cli_addr; sockfd = socket(AF_INET, SOCK_STREAM, 0); if (sockfd < 0) error("ERROR opening socket"); bzero((char *) &serv_addr, sizeof(serv_addr)); portno = 12345; serv_addr.sin_family = AF_INET; serv_addr.sin_addr.s_addr = INADDR_ANY; serv_addr.sin_port = htons(portno); if (bind(sockfd, (struct sockaddr *) &serv_addr, sizeof(serv_addr)) < 0) error("ERROR on binding"); while(1) { listen(sockfd,5); clilen = sizeof(cli_addr); newsockfd = accept(sockfd, (struct sockaddr *) &cli_addr, &clilen); if (newsockfd < 0) error("ERROR on accept"); while(1) { bzero(buffer,256); n = read(newsockfd,buffer,3); if (n < 3) { error("ERROR reading from socket"); break; } float tmp1 = (float)buffer[0]; if (tmp1 > 127) tmp1 -= 256; float tmp2 = (float)buffer[1]; if (tmp2 > 127) tmp2 -= 256; float tmp3 = (float)buffer[2]; if (tmp3 > 127) tmp3 -=256; printf("%d %d %d\n",(int)tmp1,(int)tmp2,(int)tmp3); } close(newsockfd); } close(sockfd); return 0; }

Growing in Communication

Category →