Upload Arduino sketch over-the-air (GPRS SIM900) - upload

I have an Arduino in a remote location and would like to upload new code via GPRS (a SIM900 is connected to the Arduino via serial interface). I am clueless of how to accomplish this.
Can anyone point me in the right direction? Maybe even someone have accomplished this already and can share their knowledge?

I haven't done it myself, but some googling pointed to this article:
http://baldwisdom.com/bootloading/.
Questions are:
did you connect all the additionally required lines from the serial port (DTR and RTS)?
can you use these control lines?

I had came across AVR-FOTA-Bootloader v2.0. The description of the video says
Firmware Over The Air (FOTA) v2.0 Bootloader for ATmega128 and SIMCOM Sim900 GPRS using UUENCODE by Goran Jurkovi
but there is no other information.

I did it few years back with Neoway modems. Here is the bootloader . I modified this implementation of stk500 and added TCP/IP support. But unfortunately I do not have the code for remote OTA server now.

Related

How to capture and send packets via Macbook

I want to capture and send some packets to the access point for testing purposes. I have the packet captures made via wireshark but I do not know how to proceed to be able to send these packets from my macbook.
I tried things like scapy, colasoft etc, but they do not seem to work as they require an external wifi adapter to be able to relay these packets outwards.
Two main questions:
Is it possible to send custom packets from macbook to a required access point. (Without using external network adapter).
If yes, what are some tooling/Scripting options that I can look at ? Any recommendations?
I am networking novice so please pardon me if the question is trivial. Thank you!
Your builtin Wifi adapter likely does not support Wifi injection.
You can check this by googling the Wifi chip that is within your computer (there are various methods to get that info depending on your OS) whether it supports Wifi injection or not.
So yeah, you'll likely need an external card (check the specs before buying it)

ARP replies (Unicast) not seen in Wireshark, any ideas?

[I had to repost this from the ask.wireshark.org as my questions do not come up there, still not sure why].
Hi All,
I'll try my luck here.
I'm trying to solve a similar problem to the one described in "how to work around unicast messages" question, albeit in my case I'm not seeing an ARP reply (unicast) in Wireshark.
I need to say that I have read everything that was suggested in that thread (wireshark help and a set of other documents on Ethernet Capturing/Hubs vs Switches vs Taps, etc.) and still puzzled, so basically would love to hear any ideas thrown at me by experts.
So:
it is Ethernet;
3 devices:
1. a custom device (running embedded linux)
2. a PC (WinXP) where wireshark is running (promiscuous mode, capture all)
3. a PC where a server application is running to which the custom device communicates.
all 3 connected to [what is believed to be] a simple hub "CentreCom MR415T repeater" 10BASE-T only (not dual speed).
I'm seeing all the traffic I expect to see in Wireshark but NO ARP replies (unless they are sent to the Wireshark PC).
For the problem I'm trying to nail it is crucial to tell whether there are NO replies to ARP requests sent by custom device (1) or it (the device) is unable to correctly handle these replies (which is quite possible).
All other symptoms point to the latter but I need to actually SEE and be able to SHOW this as a proof.
Thanks in advance to anyone who replies,
Alexei
UPD. 2016/06/09: In advanced settings of Panda Firewall found a tick box "SmartARP" - unticked and this solved the issue.
The ultimate reason of not seeing ARP replies in Wireshark turned out to be: Panda End Point Protection Plus Firewall. Not the most flexible piece of software as far as I can see, creating a User rule for Wireshark to allow both incoming/outcoming does not help in the slightest, but disabling the firewall - does.

arduino + adafruit cc3000 connect to network

I have one arduino and one module wifi adafruit cc3000, I'm researching about this equipment and I want a web page to control a led(on/off).
I was researching on google and found this tutorial that helped me a lot:
http://www.openhomeautomation.net/wireless-relay-arduino-wifi/
But that works localhost and i want access this in any network i'm conected, anyone can help me or give me advices than i want' to do?
These might help, they are ways of connecting to the arduino from the web.
http://www.adafruit.com/blog/2014/03/20/homecaster-using-the-adafruit-wifi-shield-to-send-messages-from-the-web-to-arduino-cc3000-iot/
http://www.adafruit.com/blog/2014/01/13/ardustat-web-controlled-wireless-arduino-based-thermostat-featuring-adafruit-cc3000-arduino/
http://bitknitting.wordpress.com/2013/09/16/test-send-data-from-arduino-to-a-web-server/
You could also telnet into the arduino via the internet and customise this program to be a controller.
https://github.com/plotly/arduino-api/blob/master/plotly_streaming_cc3000/Adafruit_CC3000/examples/ChatServer/ChatServer.ino

iOS virtual button to Arduino

What would be the best way of sending a signal from an iPad to an Arduino?
I am trying to use XBee, with iPad and Arduino to send a wireless signal.
I want to make a big red virtual button on an iPad that, when pressed, turns on an LED on the Arduino.
I am a total newbie when it comes to iOS, but OK with Arduino and XBee.
So I'm not sure if I understood correctly, but in my meaning there is only one simple way to solve the problem:
Connect an XBee to a Computer and another to the Arduino. On the computer you launch a webserver, which will be accesible from the iPad over Safari. This server handles the clickes and writes to the XBee Com Port, for communication.
Here are some examples, people already made:
http://www.projectallusion.com/1/post/2009/11/iphone-controlled-solar-powered-arduino-tank.html
http://www.sparkfun.com/tutorials/152 (not with xbee, but you can implement that by yourself)
I know it's been a while but I just came across to this question and yesterday I was doing the exact same thing so I'll share the method I used and the source of it.
In order to set a LED on or off in an Arduino board from the iPad you really don't need anything more than a browser. This is of course if you have a way to connect that Arduino to the local network.
Today you have at least two options. The WiFi and the Ethernet shields. Once you have your Arduino board inside the network you can send the instructions (HIGH or LOW) to the board form the browser.
These are my two boards connected waiting to be plugged to the local network:
Of course, you'll have to code the board to process those instructions. There are many examples on how to configure network settings and state instructions:
If you have a bit of time and want to do something more elaborated you could create a simple app to graphically control the state of those LED(s).
Inside you'll basically do the same thing, create the URL command and send it to the Arduino IP but it'd look much nicer. If you integrate later more controls the sky in the limit.
My experiment is a combination of what I learned from this nice tutorial and some tips I've read here and there.
I hope it becomes also useful to someone else.
Cheers,
Since you need to use a network connection from the iPad, a possibly simpler way to do this would be to use a WiFi module on the Arduino to poll a web script, and have the iPad write a state (button press) to that web script.
There's a handy WiFi module called the RN-XV that's designed like an XBee. I wrote up two tutorials on it:
http://log.liminastudio.com/programming/getting-started-with-the-rn-xv-wifi-module-node-js
http://log.liminastudio.com/itp/physical-computing/using-the-rn-xv-wifi-module-as-a-remote-switch

remote desktop connection programatically simulate windows c++

My question is: How you can create same basic functionality with the remote computer, like using the same mouse, so when i take move on my computer that will appear at same moment on remote computer, like on the team viewer. Can anyone explain what is the philosophy behind all remote desktop shared programs, how i can see what I'm done on the remote computer...
Codes & link's will be appriciate too... :)
You could take a look at the code of mRemote, a remote connection manager for a number of protocols (RDP, VNC, ssh and more). Maybe that will answer some of your questions?
Cheers,
Sebastiaan

Resources