pfod app

I generally only use Apple equipment. It seems that the prod app is written for an Android. Is there an Apple equivalent?

if there isn't and I have to buy an android will it work ok on a tablet or does it only work well on a phone re screen size.

regards
Max
 
You can try out the Processing/Java version (Processing runs on PC, Mac, Linux): http://wiki.ardumower.de/index.php?title=Bluetooth#PC_remote_control_application
The code can be found at: https://github.com/Ardumower/ardumower/tree/master/code/Test_und_Entwicklung/processing_remote
Processing can be downloaded here: https://processing.org/
After the code runs within Processing, you can create a standalone version for Mac using Processing. Please send us a link to that Mac version so others can use it without Processing :)
 
Thanks for that but I still need some help

I have a arduino mega connected to my mac via usb. I have adrumower -1.0a7 running . I have the serial console displaying various data

I have processing running with the "processing-remote” code. When I press run in processing I get an black and white navigation screen
Also the processing code is configured to connect to a Raspberry Pi. see code sample below

// configuration
String comPort = "dev/cu.usbmodem1D1141";
int comBaud = 19200;
boolean useTcp = true;
String tcpHost = "raspberrypi.local";
//String tcpHost = "localhost";
int tcpPort = 8083;
boolean demo = false;

what do I need to do to get this working

regards
 
You need to change "useTcp=true" to "useTcp=false" if you want to use serial port. Also, the code in Github (https://github.com/Ardumower/ardumower/tree/master/code/Test_und_Entwicklung/processing_remote) has this as default, so try to use the latest code from there.
 
I just added a new option in the Github code, so maybe you have to disable the device chooser on Mac:


Code:
// -------- configuration ---------
boolean useTcp = false;  // use TCP (true) or serial (false)
boolean useChooseDevice = true; // you will be prompted to choose a serial device
String comPort = "COM9"; 
int comBaud = 19200;   
String tcpHost = "raspberrypi.local"; // TCP host
//String tcpHost = "localhost";  // TCP host
int tcpPort = 8083;   // TCP port
boolean demo = false; // demo mode
// ---------------------------------
 
Nero76 thanks for your help
same set up as before but now using the version of the processing code that you linked to. Now I get a screen that gives me a choice of the ports I have available. Alter selecting the screen does not move on to anything more useful i.e. data.
In this test I do not connect the serial port to the arduino as I assume the processing code will do that and we can only have one connection at a time to the board. I am only using a serial cable and do not as yet have a bluetooth set up.
I am not a processing expert so I do not know how to copy the console or error text to give you better feedback. I will try some more to take a screen shot
you assistance is appreciated
regards
Max
 
I will aso add my question, because is very sinilar to this discussion :
I have my own a visual basic app for "Inteligent house" where I want implement informations about mower status.
Is possible that mower is connected to the house router and I can communicate with mower via IP adress ?

Alex
 
Max, you need a bluetooth module on the robot and a bluetooth receiver/dongle on the PC/Mac because the pfodApp protocol/language that we use via Bluetooth is configured for Serial2 by default (see mower.h). Or you change the mower configuration (in mower.h) to use pfodApp protocol/language for serial/USB instead (so swapping Serial2 and Serial):


Code:
#define Bluetooth Serial   // use pfodApp protocol/language on Serial (USB)
#define Console Serial2  // use console protocol/language on Serial2
 
Alex, you can use a WIFI module and the pfodApp protocol/language as well for this: http://wiki.ardumower.de/index.php?title=WIFI
 
nero76 schrieb:
I have written down some tutorial here: http://wiki.ardumower.de/index.php?title=Azurit_pfodApp_protocol - For full details, please look into pfod.cpp

So I will send to IP of mower only "{.}" ?

as describet in wiki :

Code:
1. App requests main menu: {.}
2. Robot sends main menu to App: {.title`1000|key1~text1|key2~text2|key3~text3}
   The App will visualize the main menu like this:


I also checked http://www.forward.com.au/pfod/, but it's unclear page for me.

Alex

edit: maybe this is right document : http://www.forward.com.au/pfod/pfodSpecification.pdf
but what isn't clear for me is, if I will send command to ip of the mower and mower will answer on ip where from he received a command ?
 
Zuletzt bearbeitet von einem Moderator:
Hello,
I spent last days to understand how communication with mower is working, but I'm lost.
Please can somebody explain me principle of the communication via WIFI ?
Is mower with ESP8266 connected to local network nad has own IP ? If yes, on this IP I'm sending request for main menu {.} ?
This request is received via ESP and sent to mower ? ... and mower will answer to ESP {.title`1000|key1~text1|key2~text2|key3~text3} ?
This answer is automaticaly sent to .... how ESP knows where send a answer ?
sorry, a lot of questions.
Every help will be helpfull
Alex
 
The IP connection is a point-to-point connection, one client (IP) and one server (IP). The client (app) starts the request (the client IP is transmitted within the IP protocol), and the server (ESP) will answer to the client IP. And yes, the pfodApp communication is the same as with Bluetooth. For the ESP, you will need to upload a special firmware (unfortuneately, the stock firmware on the ESP modules is never the same from module to module):
https://github.com/FredericG-BE/ardumower/wiki/Using-ESP8266-WIFI-module-on-Ardumower
 
So I'm able programm ESP8266, I can upload blink example and also simple programm to switch off/on led via webserver, but now I'm trying upload ESP8266SerialWifiBridge.ino for communication with ardumower and pfod, but during compilation I have a error :
Vstiek_2017-07-13.JPG


Alex
Attachment: https://forum.ardumower.de/data/media/kunena/attachments/1183/Vstiek_2017-07-13.JPG/
 
Zuletzt bearbeitet von einem Moderator:
Try to add this to the top of the code:


Code:
#define min(X, Y) (((X)<(Y))?(X):(Y))
#define max(X, Y) (((X)>(Y))?(X):(Y))
 
On the Mac, you can use telnet (Command+N) to send any characters via TCP/IP:

telnet 192.168.1.130 8080

On the Android, you can use pfodApp to connect via TCP/IP and it will do the processing and visualization of the menus for you:
https://play.google.com/store/apps/details?id=au.com.forward.pfodApp
 
Oben