Author Topic: Can an arduino go on the internet by itself?  (Read 2024 times)

0 Members and 1 Guest are viewing this topic.

Offline BeaminTopic starter

  • Super Contributor
  • ***
  • Posts: 1567
  • Country: us
  • If you think my Boobs are big you should see my ba
Can an arduino go on the internet by itself?
« on: June 08, 2018, 06:15:56 pm »
I saw a project without much in the way of technical details where you connect an arduino to a sensor on your door and you get a text on your phone that the door opened. What is involved in this? It seems the makers of the  kits don't want you to figure this out. First you would need a chip with a radio for wifi. Then you would need to connect to that something that can do ip? Or is that an all in one device? Then that somehow communicates with the Arduino that sends data to it that its IO line has changed? What's the protocol for the Arduino to communicate with outside devices can it handle ethernet or USB? I always try to explain to people that an Arduino can really do anything but how and the limitations of a microcontroller vs a raspberry pi baffle me. What kinds of computer stuff can it do? Very vague but still working gout the differences in a micro vs FPGA which really can do anything within limits of how many arrays it has. Do all micros fit some sort of standard that sets them apart from asic's? I know can it can do more then then: this input is low so set this output high. How much can it think or can't it and it's just a glorified set of relays that react to inputs? If an Arduino was a computer would it be like a commodore 64 needing a video card?
Max characters: 300; characters remaining: 191
Images in your signature must be no greater than 500x25 pixels
 

Offline Wilksey

  • Super Contributor
  • ***
  • Posts: 1329
Re: Can an arduino go on the internet by itself?
« Reply #1 on: June 08, 2018, 06:24:34 pm »
Depends on your Arduino (including clones).

Some come with Ethernet, capability, some come with WiFi capability, some come with built on board GSM.

The basic Arduino UNO comes with neither of the above, so would need to be connected to 1 or more shields to do the deed.

Sending a text message can either be via GSM or via the internet by way of email2sms gateways.
 

Online hans

  • Super Contributor
  • ***
  • Posts: 1640
  • Country: nl
Re: Can an arduino go on the internet by itself?
« Reply #2 on: June 08, 2018, 06:42:01 pm »
If we make a hard split with software and hardware, then all an Arduino needs is some chip that can receive and transmit ethernet frames. It can be via Wifi or wired ethernet, it doesn't matter. The rest is "just" software sauce; i.e. a TCP/IP stack; that handles IPv4, ARP, DHCP, DNS, TCP, UDP, etc.

A normal desktop OS has all of these protocols built in, as well as device drivers for a wide variety of hardware peripherals. For ease of use, configuration is done automatically using device IDs. In order to make a computer general purpose, it has a file system that can be stored data and applications. The OS takes care that each process can execute safely without crashing the computer (in most cases), and also that it cannot touch other processes 'too much' (i.e. read a password while you're logged in, without admin rights).

If you don't need any of this flexibility or security, then a custom solution can be significantly smaller. Some IOT devices that have an smartphone app sometimes talk to a server in "the cloud", which could be as simple as a hardcoded IP (or better: a hardcoded domain which it performs a DNS look up for) that it talks to. You don't need a massive OS for that; you can code this up in an Arduino with a few kB of code size probably, while running sufficiently fast for simple applications.

FPGAs don't offer any direct benefit in this. FPGA's are just a huge sea of gates, a logic fabric, in which you can create custom processors, data processing applications and other custom digital hardware. Mapping tasks with a lot of choices in them (control dominated) is not very ineffective in a FPGA.
« Last Edit: June 08, 2018, 06:43:58 pm by hans »
 

Offline donotdespisethesnake

  • Super Contributor
  • ***
  • Posts: 1093
  • Country: gb
  • Embedded stuff
Re: Can an arduino go on the internet by itself?
« Reply #3 on: June 08, 2018, 10:49:41 pm »
I saw a project without much in the way of technical details where you connect an arduino to a sensor on your door and you get a text on your phone that the door opened. What is involved in this?

An Arduino and a GSM shield, to send a text message.

Quote
If an Arduino was a computer would it be like a commodore 64 needing a video card?
Yes, and a keyboard, and all the other stuff...

Another way to look at it is an AVR is the CPU from a Commodore with a little RAM and Flash to store the program, and an Arduino is an AVR on a PCB with a voltage regulator and some connectors.
Bob
"All you said is just a bunch of opinions."
 

Offline bitseeker

  • Super Contributor
  • ***
  • Posts: 9057
  • Country: us
  • Lots of engineer-tweakable parts inside!
Re: Can an arduino go on the internet by itself?
« Reply #4 on: June 08, 2018, 11:29:28 pm »
I saw a project without much in the way of technical details where you connect an arduino to a sensor on your door and you get a text on your phone that the door opened. What is involved in this?

In the Arduino world, add-on boards are referred to as shields. There are shields for Ethernet, Wi-Fi, GSM cellular, LoRA, etc. to enable communication via these methods.

Quote
First you would need a chip with a radio for wifi. Then you would need to connect to that something that can do ip? Or is that an all in one device?

Typically, the shield would have support for the required protocols, thereby reducing the amount of RAM needed by the microcontroller.

Quote
Then that somehow communicates with the Arduino that sends data to it that its IO line has changed?

Software libraries (from the Arduino project or third-party) enable you to interact with the shield to send/receive data.

Quote
What's the protocol for the Arduino to communicate with outside devices can it handle ethernet or USB?

Yes, just buy or build the appropriate shield for the type of communication you desire. Alternatively, look for an Arduino-compatible board with what you need already built onboard.

Quote
I always try to explain to people that an Arduino can really do anything but how and the limitations of a microcontroller vs a raspberry pi baffle me. What kinds of computer stuff can it do?

Note that Arduino is a platform (hardware and software specifications/standards) and there are many boards that are compatible. The processor on the boards vary and, hence, their capabilities can vary quite a bit as well.

Typically, microcontrollers have very little memory and less processing capability as compared to microprocessor-based systems. So, although microcontrollers can do many things, they can't do everything. A Raspberry Pi uses a microprocessor, has much more memory, and typically runs a desktop or server operating system. It's essentially a computer on a PCB, which is very different (significantly more powerful) from a microcontroller.

Microcontrollers are good for small, simple tasks that may be time-sensitive.

Microprocessors are good for large, computationally intensive tasks that aren't highly time-sensitive.

Quote
Very vague but still working gout the differences in a micro vs FPGA which really can do anything within limits of how many arrays it has. Do all micros fit some sort of standard that sets them apart from asic's? I know can it can do more then then: this input is low so set this output high. How much can it think or can't it and it's just a glorified set of relays that react to inputs?

ASIC: Application-specific integrated circuit. It can contain whatever is needed to accomplish a computational task such as processors or various kinds of memory. It's manufactured in a factory and cannot be altered thereafter.

FPGA: Field-programmable gate array. It can be thought of as an ASIC that can be changed after it's manufactured. It's between a microprocessor (very flexible and general purpose as it's primarily software driven) and an ASIC (fixed to the purpose it was initially made for, purely hardware).

A microcontroller or microprocessor can be implemented in an ASIC. Add the RAM, ROM, and other support hardware into the ASIC and you get an SoC (System on Chip).

Quote
If an Arduino was a computer would it be like a commodore 64 needing a video card?

Yes, an Arduino board would be like the C64's motherboard, only much more compact due to modern electronics. In fact, one could make a rudimentary computer with an Arduino board like this https://makezine.com/2014/11/13/an-arduino-based-computer/
TEA is the way. | TEA Time channel
 

Offline Dingo

  • Newbie
  • Posts: 7
Re: Can an arduino go on the internet by itself?
« Reply #5 on: June 10, 2018, 09:38:06 am »
Yup - Buy a 5 dollar ESP8266 and it gives you an Arduino in the sense of having digital and analog interfaces plus can act as a host or client or both on WiFi...
 

Offline BeaminTopic starter

  • Super Contributor
  • ***
  • Posts: 1567
  • Country: us
  • If you think my Boobs are big you should see my ba
Re: Can an arduino go on the internet by itself?
« Reply #6 on: June 10, 2018, 12:20:49 pm »
Quote
Then that somehow communicates with the Arduino that sends data to it that its IO line has changed?

Software libraries (from the Arduino project or third-party) enable you to interact with the shield to send/receive data.

Quote
What's the protocol for the Arduino to communicate with outside devices can it handle ethernet or USB?

Yes, just buy or build the appropriate shield for the type of communication you desire. Alternatively, look for an Arduino-compatible board with what you need already built onboard.



My question is specifically what kinds of protocalls can it use?
There must be a limitation on speed and type. For eithernet I'm guessing you use two digital IO lines to a shield that goes out to eight pins?
Max characters: 300; characters remaining: 191
Images in your signature must be no greater than 500x25 pixels
 

Offline bitseeker

  • Super Contributor
  • ***
  • Posts: 9057
  • Country: us
  • Lots of engineer-tweakable parts inside!
Re: Can an arduino go on the internet by itself?
« Reply #7 on: June 11, 2018, 12:18:38 am »
The protocol support depends on the specific shield being used. Some may have more capability on board, thereby offloading the microcontroller. You'll have to look at specific products for more specific answers.

At an extreme, a $2 Arduino board could use a couple of wires to command a supercomputer to run a weather simulation and give it back a particular result. So, it all depends on the implementation.
TEA is the way. | TEA Time channel
 

Offline amyk

  • Super Contributor
  • ***
  • Posts: 8275
Re: Can an arduino go on the internet by itself?
« Reply #8 on: June 11, 2018, 02:08:42 am »
It's notable that adding a GSM module to an Arduino is like putting a big-block V8 into a kid's toy car --- even the cheapest GSM processor will have orders of magnitude more power.

https://www.bunniestudios.com/blog/?p=3040

Also worth pondering... https://hackaday.com/2014/08/29/bit-banging-ethernet-on-an-attiny85/
 

Offline westfw

  • Super Contributor
  • ***
  • Posts: 4199
  • Country: us
Re: Can an arduino go on the internet by itself?
« Reply #9 on: June 11, 2018, 09:08:41 am »
Quote
what kinds of protocalls can it use?
There must be a limitation on speed and type
Not really.  You can put "arbitrary" amounts of processing power in the "peripheral."  The "standard" ethernet shield for Arduino includes a processor that implements all of TCP and IP, and the usual wireless modules include Wireless protocols, IP, and TCP as well.  As Amyk said, it's very common for the modules to contain MUCH more processing power than the Arduino itself.
The easiest way to implement the original target application:
Quote
you get a text on your phone that the door opened.
is probably to connect to a suitable cell phone using the Arduino Serial port.  At one point, I think it was common for relatively dumb phones to support sending SMS via commands input on a serial expansion connector.  (More or less the same as a GSM module, I guess, but ... cheap phones are cheaper than GSM modules...)
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf