Welcome new user! You can search existing questions and answers without registering, but please register to post new questions and receive answers.
Welcome to JeVois Tech Zone, where you can ask questions and receive answers from other members of the community.

I am trying to compile http://jevois.org/tutorials/UserRobotCar.html

0 votes
hello guys. I am trying to compile the 1th example of this page:


and I got this errors:

sketch_apr17a.ino: In function ‘void setup()’:
sketch_apr17a.ino:134:11: error: request for member ‘setTimeout’ in ‘0’, which is of non-class type ‘int’
sketch_apr17a.ino:135:11: error: request for member ‘begin’ in ‘0’, which is of non-class type ‘int’
sketch_apr17a.ino:136:11: error: request for member ‘setTimeout’ in ‘0’, which is of non-class type ‘int’
sketch_apr17a.ino: In function ‘void loop()’:
sketch_apr17a.ino:165:22: error: request for member ‘readBytesUntil’ in ‘0’, which is of non-class type ‘int’

Can anybody help me with this?

Thank you.
asked Apr 18 in Programmer Questions by cbodington (680 points)

1 Answer

+1 vote
strange, it compiles fine here. I am using Arduino 1.6.9 on a mac. Did you select Arduino Leonardo as your target board (you should do that if you are using the arduino board we sell)? It seems that your errors are related to not having Serial1 defined, so maybe you are trying to compile for a board that does not have Serial1? Serial1 on the Leonardo is the hardware serial port on pins 0/1 while Serial is a serial-over-USB on that board. If your board has no serial-over-USB, then you should change

#define SERIAL Serial1


#define SERIAL Serial

and then just remove all code using DBGSERIAL.
answered Apr 18 by JeVois (20,780 points)
Thank you for the answer. I already compile the code.
The problem now is My Robot do still nothing. I can not understand why and this is very frustrating. Maybe do you have another link with a step by step tutorial?

Another tutorial that explain how to track and see the data in the hyperterminal?

Thank you.
Usually, you would do like this:

- first play with the video mapping that has some video output, and connect your JeVois to a computer and select the appropriate resolution. Then show your ArUcos and check that they are detected in the video. Next find a good location for an ArUco so that it will always be detected (e.g., tape JeVois down and place the ArUco right in the center of the field of view, then tape it down).

- Now with the Arduino serial console or some other terminal (see tutorials), enable streaming of serial data to serial-over-USB ("setpar serout USB"). Play with settings such as serstyle, serprec, and other parameters of the module.

- then turn off your video grabber and issue a setmapping2 command to switch to using ArUco but now with no video output. Remember to issue a "streamon" to start the camera stream. With a marker in front of JeVois, you should get serial strings in your terminal.

- Now try "setpar serout Hard" which will send the strings to the 4-pin serial port instead. Your Arduino should now get them and start moving the pan/tilt, etc

- finally transfer those settings to a params.cfg file in the directory of the module. That file will be loaded each time the module is loaded. So you don't have to type in those settings again. You can also use initscript.cfg to run that setmapping2 at boot time.

Please see this tutorial which has more details about these steps. Maybe you are just missing the streamon?