Posted by Marcus.Barkowsky
What steps will reproduce the problem?
WebIOPi version used? => Latest git read-only checkout version as of 09/05/2013
Python version used? => Python 2.7.3 (default, Jan 13 2013, 11:20:46) [GCC 4.6.3] on linux2
Distro used? (WebIOPi has only been tested on Raspbian Wheezy) => 2013-02-09-wheezy-raspbian.zip
Raspberry Pi board revision? (1 or 2) => 2
For Javascript side bugs, Browser? => firefox, linux
Please provide any additional information below.
The response type for GET in the read function has not been defined, therefore the function returned an XML Document instead of a file. Adding
from webiopi.decorators.rest import request, response
and the @response line in:
@request("GET", "")
@response("%s")
def read(self):
Solves the problem. Attached, the changed file.
Thanks for your great work on webiopi!
Files attached
Posted by dt.photoclix
Hi, First of all, thank you very much for your great product.
Second : even after making this change, I still can't get my Serial-Monitor to show me the serial data that comes in.
Any ideas on what I would need to check ?
Thx.
Posted by Marcus.Barkowsky
Hi,
it is difficult to judge your progress in debugging from your question. So, unfortunately, I can only explain how I tackled the problem.
Before trying with webiopi, I made sure that my serial communication worked flawlessly with the terminal program "minicom" and that I was also able to read/write with simple "cat" commands after the serial interface was configured (baudrate, parity, etc.). It's some time ago, so I do not remember whether I changed something in the /etc/webiopi/config configuration file (I definitely activated the serial0 line) and/or changed the permissions on the /dev/ttyAMA0 (I started by launching the project as root anyway). For further debugging, I launched webiopi as foreground process and started debugging by adding logger.info("message") lines in the python code to see where the problem might be located.
Best regards, Marcus
Posted by dt.photoclix
Hi Marcus,
Thx for your input. I already double checked the serial communication and have even built code for 2 status-leds that react differently, depending on which command the RPi receives back via serial-connection. All of this works perfectly.
Yesterday, I was testing my interface on my smartphone, which uses Dolphin-browser and by coincidence I noticed that the Serial-monitor field, which I adapted a bit to my own interface (just formatting and size) was working just fine. It nicely displayed all information, I expected to be there. Went back to my PC and laptop, opened FireFox, but it still didn't work. Opened up IE on both and it worked just nicely. I've been a FireFox user since the first moment, and this is one of the first times that I run into a problem, where something doesn't work on FF but it works on IE. Will have to look into that.
Best regards,
David
Posted by DC4PCqrv
Hi David, I experienced the same problem with ttyUSB0. In my environment, IE uses the so called compatibility mode by default. FF interprets the first line of an html file very strictly – at least I didn't find any compatibility settings, because it was too late at night or in the morning or so. Hence, I decided to have a closer look at the jquery environment. Looking at the distributed jquery.js I found out it is a rather outdated version 1.8.2 (for some pretty good reasons I think). May be it's a good idea to apply some updates … I used sudo nano /etc/webiopi/config to make some changes to use my private test environment:
[HTTP]
enabled = true port = 8000
doc-root = /home/pi/WebIOPi-0.6.0/htdocs
welcome-file = index.html
[DEVICES]
usb0 = Serial device:ttyUSB0 baudrate:9600
end of /etc/webiopi/config changes
The following files were downloaded from https://code.jquery.com/jquery/ sections jQueryCore and jQueryMobile, copied to /home/pi/WebIOPi-0.6.0/htdocs on the PI and renamed accordingly later. The original files were deleted - you may want to backup them before deletion :-) for any purpose jquery.mobile-1.3.2.min.css => jquery-mobile.css jquery.mobile-1.3.2.min.js => jquery-mobile.js jquery-2.0.3.min.js => jquery.js
Now I stopped and restarted the WebIOpi service sudo /etc/init.d/webiopi stop sudo /etc/init.d/webiopi start
The serial monitor works now fine with IE 10.0.9200.16660 and FF 23.0.1 both under Win7. However, there are some more back-compatibility drawbacks and issues according to https://jquery.com/browser-support/. Watch this carefully! I didn't test more because it does the job in my environment :-) so it's up to you to do more ... May be this helps to solve the other serial issues too
Best regards
Karl-Heinz
Posted by trouch
I admit I tested the Serial Monitor only with Chrome.
Posted by trouch
Posted by trouch
Posted by trouch
Issue 79 has been merged into this issue.
Posted by trouch
This issue was closed by revision r1412.