You had me smiling from ear to ear just with your first sentence I bet that you will, indeed, win the best Sphero Grandfather award.
- Does the speed sensor monitor actual track speed or intended drive speed?
The output of the speed (eg if you are looking at the graphs in the Edu app) does track the actual speed that the RVR has traveled/is traveling. The speed inputs that you would insert when you are asking the RVR to go a certain speed are on an arbitrary scale that is actually telling the RVR how quickly to turn the motors/ how much effort to put into it.
In both the iOS and OSX versions of the Edu App, while in a program, you can navigate to the three dots in the upper right corner and select “Sensor Data” to see historical data (and on iOS, the live graphs will just pop up on the screen while the program is running):
You’ll see all of the sensor graphs upon jumping into “Sensor Data”, but you can also click on a single graph and, once you are in that graph, zoom in on certain sections and show and hide data from the graph (note: you can also show/hide from the screen with all graphs). Here is my velocity graph from running the same program (above) two different times:
You’ll note that the first time I ran the program, the velocity surpassed 160 cm/s a few times (just barely); the second time, when you zoom in, you see that the velocity never quite gets to 160 cm/s:
- Can the RVR follow a line with the colour sensor, looking for code examples I have not found one. I envision a dual coloured line with one colour one side and another colour on the other.
The RVR can follow a fairly wide colored line; the beam the RVR sends down to read the color covers a relatively wide area and an “average color” is returned. With this being the case, if you have a dual-colored line, RVR would take the average of the two colors. If you’d like to dive deeper into the idea you had, we would be happy to chat through how you still might accomplish something like what you are envisioning
- Can the acceleration (deceleration) sensor be used to act as a collision sensor?
That is a creative idea… The short answer is: at your own risk and you should try our Ultrasonic RVR example , but, to elaborate:
We do have a collision avoidance with Raspberry Pi example that you might try AND one of our other users (@emwdx) created an awesome collision avoidance project with micro:bit, as well!
You could, conceivably, use deceleration to “detect” a collision (again, creative idea!), but, while RVR is quite robust and made to handle jumps and flips and has the same accelerometer as most of our other robots, it is much larger and faster than any of our other bots. With this being the case, it didn’t perform as well with the collision testing we did (perpetual collisions, especially at higher speeds, can cause motor damage), so we don’t advocate for “purposefully” running it into obstacles.
If you aren’t terribly interested in connecting a Raspberry Pi or micro:bit to your RVR and are only planning on utilizing deceleration-as-collison-detection for a one-time-project, your RVR would likely be fine for the handfull of collisions it would endure (especially if you set the speed to a lower value), but I wouldn’t advocate for using deceleration as a long-term solution (and, depending on the types of collisions you’d be testing with, there may still be damage to the robot, even if you’re only testing for a relatively short time).
- Is there a more detailed code per device compatibility table? I keep seeing notes saying “code not compatible with the RVR” but can find no means of establishing which code will work with the RVR, hence is there a matrix somewhere that shows all the codes and the Sphero devices they work with.
Are you seeing this error when you are trying to create a program in the OSX Edu App? I am wondering if what happened is, when you initiated your program and selected that you wanted the program to be for RVR, you didn’t deselect that the program would be compatible with Sphero… By default, we select “Blocks” coding and “Sphero” bot:
You can check which bots your program is compatible with by selecting the program from your programs screen and checking below the image for the program, where it will say “Compatible Robots”:
If both RVR and Sphero were selected, the commands that work exclusively with each would both be available and running a program on your RVR that has a Sphero command might cause that error. To check if this is what happened, you can edit your program by selecting it from your programs page (which will take you to the “info page” for the program, but not to the code, yet) and there will be a “three dots” icon in the upper right corner, where you’ll be able to select “Edit”:
The edit screen is a pop-up and, towards the bottom, there will be an option to select or remove robots:
Alternatively, so that you can get a fresh slate and not have to weed out which commands were not compatible with RVR from your original program, you could simply create another program and be extra aware as to which bots are selected for the program to be compatible with.
Does this sound like what might have happened or do you feel I am way off base?
Very much looking forward to hearing more about your adventures with RVR and your grandkids (and the outcome of the Best Sphero Grandfather Award!) and please don’t hesitate to reach out with any additional questions or clarifications!