Arduino publishing to Ubuntu through WIFI
I was able to make a connection through TCP between Ubuntu and Arduino, both connected to the same router via WIFI. I know there's rosserial_arduino, but it utilizes USB connection, where I want to use WIFI. On Arduino, there's WIFI library that has basic client/server functionailties, such as read(), write(). And also there's socket library adapted for Arduino, I am wondering if I can modify rosserial_embeddedlinux or rosserial_arduino to get Arduino talking to ROS on ubuntu, can anyone give me some directions to it?
I am a beginner to both ROS and TCP/IP, please forgive me for misusing terminologies.
I haven't done this myself but you could try to modify rosserial_arduino such that it communicates via the WiFi library instead of the UART. rosserial_arduino and rosserial_embeddedlinux are both customized versions of rosserial_client: http://wiki.ros.org/rosserial
I tried modifying rosserial_arduino's ArduinoHardware.h: https://gist.github.com/anonymous/c2c... , but it went unsuccessfully, my Arduino Uno just stalls.
Anyone ever find a solution to this? I think it's pretty important (arduino wifi + ROS = HOLYOMFGWTFBBQ)
I implemented my own server/client structure through TCP/IP back in September, and the node on PC side acted as a client for the Arduino server and broadcast the messages to ROS. It should be the other way around to ensure stability, but I haven't had time to implement that.
And couldn't change ArduinoHardware.h successfully to make a native Arduino node using WIFI, but it works. In theory it can be done like what rosserial does.
any progress in doing this? i also need to publish data via wifi to ros from an arduino
There's been some progress in this question getting rosserial_arduino to work over the arduino wifi shield.