It's way off topic, but I was looking at the pic of the "propeller control board." Does Parallax use a thinner pin for something a servo interfaces to? On that pic it looked like a regular thick IDE pin. Do you guys find the servo connection a tight fit?
They are standard connectors. The angle of the photo makes them look thin.
We tried to ran your plshigh.binary program using the FlexProp program we downloaded and the text window said "Could not find a P2. Press enter to continue." plshigh.eeprom loaded to the Propeller board but it was cryptic on how to make it Run using FlexProp
In flexprop, you need to specify "P1 defaults" in order to compile & load to a P1...
Aha! That might explain it. We’ll give that a try. Thanks.
@tritonium said:
By changing the code by deleting the number of '@' symbols will completely break the software and strange things will definitely happen.
When I try to run the program as written with the three @@@ symbols it won’t run.
When I put all three @@@ symbols inside parentheses ( ) it still won’t run.
When I put the line code inside parentheses with only one @, it runs and the readout scrolls, “8 is a test”, “9 is a test”, “10 is a test”, “11 is a test.”
If you know your radio works when connected to servos, but not with our software there, is something very odd going on.
The radio and receiver work with stand-alone servos. Agreed, there is a glitch somewhere. That’s what we’re trying to figure out. Thanks for your help Dave.
When I try to run the program as written with the three @@@ symbols it won’t run.
When I put all three @@@ symbols inside parentheses ( ) it still won’t run.
When I put the line code inside parentheses with only one @, it runs and the readout scrolls, “8 is a test”, “9 is a test”, “10 is a test”, “11 is a test.”
thats right and I replied
What to do.
You could try downloading and installing PropellerIDE or I could supply a binary file.
In fact that is what I have done. This is just the raw code so does not require compiling.
That binary works for publison and does not require you to do anything other than load it to ram and run it.
To do that in propeller tool-
put the binary file in the same folder as the spin files
click file
open
navigate to the file- if you don't see any .binary files then change the "files of type" to "All files (.)"
click the file
then open
then click on load ram
then got to "run"
select parallax serial terminal
set that up to your com port and 9600
and then you 'should' see the output from the program.
Phew- had to work that out- never used it before- PropellerIDE was much easier.
I have to say that problem solving this kind of thing if you are not an experienced programmer is taking on a lot.
@tritonium said:
By changing the code by deleting the number of '@' symbols will completely break the software and strange things will definitely happen.
When I try to run the program as written with the three @@@ symbols it won’t run.
When I put all three @@@ symbols inside parentheses ( ) it still won’t run.
When I put the line code inside parentheses with only one @, it runs and the readout scrolls, “8 is a test”, “9 is a test”, “10 is a test”, “11 is a test.”
If you know your radio works when connected to servos, but not with our software there, is something very odd going on.
The radio and receiver work with stand-alone servos. Agreed, there is a glitch somewhere. That’s what we’re trying to figure out. Thanks for your help Dave.
Dave
What program did you use to compile plshigh.spin? It has to be compiled with Flexprop 5.9.3 The P1 mode must be invoked as Dennis indicated.
I'm gratified to hear that those youngsters, and Christopher especially, went on to accomplish things. But I don't take much credit. It was you, as in the movie October Sky, who was the driving force, staying one step ahead as you are doing now. I do remember well, there was that long, protracted thread, as your ARLISS team build the rocket and figured out how to measure CO2 etc., and how to cram it all into the the rocket body. I learned a lot too. A little about lithium solid electrolyte CO2 sensors, but mostly about how extraordinarily hard it is to teach at that level, like herding cats!
I can't be much help with your current project. I'm sort of a stick in the mud. No quad rover experience, and I still use older software for programming the BASIC Stamp and Propeller 1 systems that I have in the (sometimes muddy) field. Focussing more on sensors these days.
@"Tracy Allen" said:
I'm gratified to hear that those youngsters, and Christopher especially, went on to accomplish things. But I don't take much credit. It was you, as in the movie October Sky, who was the driving force, staying one step ahead as you are doing now. I do remember well, there was that long, protracted thread, as your ARLISS team build the rocket and figured out how to measure CO2 etc., and how to cram it all into the the rocket body. I learned a lot too. A little about lithium solid electrolyte CO2 sensors, but mostly about how extraordinarily hard it is to teach at that level, like herding cats!
I can't be much help with your current project. I'm sort of a stick in the mud. No quad rover experience, and I still use older software for programming the BASIC Stamp and Propeller 1 systems that I have in the (sometimes muddy) field. Focussing more on sensors these days.
OT Funny, I just watched October Sky two nights ago. Sent a second copy to my son how built rockets with me, and his son is interested.
put the binary file in the same folder as the spin files
click file
open
navigate to the file- if you don't see any .binary files then change the "files of type" to "All files (.)"
click the file
then open
then click on load ram
then got to "run"
select parallax serial terminal
set that up to your com port and 9600
and then you 'should' see the output from the program.
Dave
Dave,
Thanks for the step-by-step directions on how to load and run plshigh.binary. It works! Thank you!
We couldn't figure out how to make it "Run" by clicking 'Run' on Propeller when we opened up .binary. But we figured out that you have to: 1) close the binary window after loading the program into RAM, then 2) Click RUN in Propeller, then 3) Click the Serial terminal screen to see the outputs.
It's interesting that the outputs when running plshigh.binary and plshigh.spin without three @@@ and with line code inside parentheses ( ) are virtually the same. One difference is that "This is a test" appears at the start of running plshigh.binary but these words don't appear when running plshigh.spin.
Two other differences are: 1) the last words that appear after the number in each output line when running .binary are "us". When running .spin (modified), the letter 'a' appears after each number followed by the word 'test' appears. See attached screen shot of both outputs
None of the numbers in the rows after "8 is a test", "9 is a test", etc. change when the RC transmitter joy sticks are moved when running either program-- plshigh.binary OR plshigh.spin (with modified line commands).
See attached screen shot and there are comments written on the screen shot.
Standing by at Mission Control, waiting for your insights. ;-)
What program did you use to compile plshigh.spin? It has to be compiled with Flexprop 5.9.3 The P1 mode must be invoked as Dennis indicated.
Somewhere we missed the part that said plshigh.spin had to be compiled in FlexProp and then run in Prop 1 mode. Sorry.
We did that and here's what we saw (attached screen shot.) We could see the red light pulsing/ flashing on the Propeller board (indicating an output?) But we saw nothing on the black output screen. We looked for a Serial Terminal screen button but didn't see one in FlexProp.
Also, even though we compiled plshigh.SPIN, the output (on the screen shot) shows plshigh.BINARY was being run.
I had problems with the Flexprop terminal screen,(black screen) also. It would not update. I closed that and opened PST from the standard Spin tool, (F12), and was able to view output. Adjust port and baud rate.
@Publison said:
I had problems with the Flexprop terminal screen,(black screen) also. It would not update. I closed that and opened PST from the standard Spin tool, (F12), and was able to view output. Adjust port and baud rate.
We saw no option in FlexProp to decrease the baud rate to 9600.
We closed the black screen as you suggested and opened the PST through Propeller.
Outputs/ numbers appeared and they are the same as in the screen shot above when we ran plshigh.binary.
The commonality when running the different programs seems to be that all the outputs and values are the same:
“8 is a test. 1100 us” or
“8 is a test. 1100a test”
See screen shots above. None of the values change when we move the RC transmitter joysticks.
The output in post 101 in propeller tool from plshigh.binary is correct. Hooray!!
When the program starts it waits for a few seconds to allow you to switch to the terminal then
the text "this is a test" only prints 4 times then repeats the measured pulses forever. So if there is a delay switching the terminal on then some lines will be lost- doesn't matter.
The us after the number is the units of measurement (microseconds) so expect to get between 1000 to 2000; 1500 is the centre position.
Changing the '@@@' changed the behaviour of the program- I'm surprised it ran at all let alone merely jumbling up the text.
That seems to prove your hardware is good, but as for why the programs you started with don't work is still a mistery.
I don't do spin code so can't help with looking at those I'm afraid. In fact I do all my coding these days in one form of 'BASIC' or another as they do all I want and are easy to pick up. Thankfully Bean and Eric have provided prop users with excellent tools. Beans PropBasic (which also supports asm), is for P1 only and does not provide a text editor so I use Genie. Erics FlexBasic comes with an editor and terminal and supports P1 and P2 and supports Spin, C, asm, and Basic.
@msrobots said:
Do you have paired transmitter and receiver so can you connect a servo directly to the receiver and move it with the joysticks?
Yes, the transmitter and receiver are paired/ synchronized. We attached a stand-alone model airplane servo to the receiver and it functions just fine on all four channels. Thanks for the suggestion!
@Publison said:
I had problems with the Flexprop terminal screen,(black screen) also. It would not update. I closed that and opened PST from the standard Spin tool, (F12), and was able to view output. Adjust port and baud rate.
We saw no option in FlexProp to decrease the baud rate to 9600.
We closed the black screen as you suggested and opened the PST through Propeller.
Outputs/ numbers appeared and they are the same as in the screen shot above when we ran plshigh.binary.
The commonality when running the different programs seems to be that all the outputs and values are the same:
“8 is a test. 1100 us” or
“8 is a test. 1100a test”
See screen shots above. None of the values change when we move the RC transmitter joysticks.
The baud rate is set in PST which you have correctly set to 9600. When I ran the program, The values changed with transmitter input. I'm running out of ideas.
The baud rate is set in PST which you have correctly set to 9600. When I ran the program, The values changed with transmitter input. I'm running out of ideas.
Anyone: Where you would go from here to get the Quad River running? That is, to get a program working that runs the servos with a radio control transmitter. The programs we have don’t seem to be doing it. We’re stumped. We’re rookies.
Ok. In post 101 above you showed two screen shots, one of the output from plshigh.spin and the other from plshigh.binary.
The one form plshigh.binary was exactly right, the other was corrupt because of the changes made to the code. The spin file I sent you used the '@@@' code and is not compatible with the propeller tool compiler and there is no way I know to make it work. However propellerIDE handles it perfectly and so does flexprop so there are alternatives.
So that binary proves your transmitter / receiver / control board are working.
Post 106 explains the printout.
pin 8 = 1100 us
pin 9 = 1762 us
pin 10 = 1476 us
pin 11 = 1535 us
This is the pulse width measured on each pin in microseconds (us)- it is exactly what you would expect.
moving the sticks should affect the values.
Why the original parallax code does not work is a mystery- only a spin expert can tell us.
Since re-writing the entire software is an unreasonable ask of anyone- the thing to do is see if there is a spin expert prepared to put in the time and effort to diagnose the parallax software. Its probably a simple thing since the software has been used by others in the past.
It was nice talking with you by phone on Sunday. Thanks for calling. We discussed contacting Ken or Andy to see if we can get replacement controller board for the Quad Rover. Replacing it would be one way to rule out a non-functional controller board. But as I said when we spoke, I suspect the problem lies in:
1) The hard wired connections to the controller board from the RC receiver, or
2) Input/ connection from the computer to the controller board, or
3) The program itself.
We are open to suggestions from anyone at this point. We remain stumped.
Comments
They are standard connectors. The angle of the photo makes them look thin.
Aha! That might explain it. We’ll give that a try. Thanks.
When I try to run the program as written with the three @@@ symbols it won’t run.
When I put all three @@@ symbols inside parentheses ( ) it still won’t run.
When I put the line code inside parentheses with only one @, it runs and the readout scrolls, “8 is a test”, “9 is a test”, “10 is a test”, “11 is a test.”
The radio and receiver work with stand-alone servos. Agreed, there is a glitch somewhere. That’s what we’re trying to figure out. Thanks for your help Dave.
Hi
thats right and I replied
That binary works for publison and does not require you to do anything other than load it to ram and run it.
To do that in propeller tool-
put the binary file in the same folder as the spin files
click file
open
navigate to the file- if you don't see any .binary files then change the "files of type" to "All files (.)"
click the file
then open
then click on load ram
then got to "run"
select parallax serial terminal
set that up to your com port and 9600
and then you 'should' see the output from the program.
Phew- had to work that out- never used it before- PropellerIDE was much easier.
I have to say that problem solving this kind of thing if you are not an experienced programmer is taking on a lot.
Still- onwards and upwards (whatever that means!)
Dave
What program did you use to compile plshigh.spin? It has to be compiled with Flexprop 5.9.3 The P1 mode must be invoked as Dennis indicated.
I'm gratified to hear that those youngsters, and Christopher especially, went on to accomplish things. But I don't take much credit. It was you, as in the movie October Sky, who was the driving force, staying one step ahead as you are doing now. I do remember well, there was that long, protracted thread, as your ARLISS team build the rocket and figured out how to measure CO2 etc., and how to cram it all into the the rocket body. I learned a lot too. A little about lithium solid electrolyte CO2 sensors, but mostly about how extraordinarily hard it is to teach at that level, like herding cats!
I can't be much help with your current project. I'm sort of a stick in the mud. No quad rover experience, and I still use older software for programming the BASIC Stamp and Propeller 1 systems that I have in the (sometimes muddy) field. Focussing more on sensors these days.
Hi
propellerIDE also works- it uses BSTC I believe.
edit- the nice thing about Flexprop is it pops up a terminal automatically.
Dave
OT Funny, I just watched October Sky two nights ago. Sent a second copy to my son how built rockets with me, and his son is interested.
I have not have luck with Flexprop terminal. PST works fine.
Dave,
Thanks for the step-by-step directions on how to load and run plshigh.binary. It works! Thank you!
We couldn't figure out how to make it "Run" by clicking 'Run' on Propeller when we opened up .binary. But we figured out that you have to: 1) close the binary window after loading the program into RAM, then 2) Click RUN in Propeller, then 3) Click the Serial terminal screen to see the outputs.
It's interesting that the outputs when running plshigh.binary and plshigh.spin without three @@@ and with line code inside parentheses ( ) are virtually the same. One difference is that "This is a test" appears at the start of running plshigh.binary but these words don't appear when running plshigh.spin.
Two other differences are: 1) the last words that appear after the number in each output line when running .binary are "us". When running .spin (modified), the letter 'a' appears after each number followed by the word 'test' appears. See attached screen shot of both outputs
None of the numbers in the rows after "8 is a test", "9 is a test", etc. change when the RC transmitter joy sticks are moved when running either program-- plshigh.binary OR plshigh.spin (with modified line commands).
See attached screen shot and there are comments written on the screen shot.
Standing by at Mission Control, waiting for your insights. ;-)
Somewhere we missed the part that said plshigh.spin had to be compiled in FlexProp and then run in Prop 1 mode. Sorry.
We did that and here's what we saw (attached screen shot.) We could see the red light pulsing/ flashing on the Propeller board (indicating an output?) But we saw nothing on the black output screen. We looked for a Serial Terminal screen button but didn't see one in FlexProp.
Also, even though we compiled plshigh.SPIN, the output (on the screen shot) shows plshigh.BINARY was being run.
I had problems with the Flexprop terminal screen,(black screen) also. It would not update. I closed that and opened PST from the standard Spin tool, (F12), and was able to view output. Adjust port and baud rate.
We saw no option in FlexProp to decrease the baud rate to 9600.
We closed the black screen as you suggested and opened the PST through Propeller.
Outputs/ numbers appeared and they are the same as in the screen shot above when we ran plshigh.binary.
The commonality when running the different programs seems to be that all the outputs and values are the same:
“8 is a test. 1100 us” or
“8 is a test. 1100a test”
See screen shots above. None of the values change when we move the RC transmitter joysticks.
Do you have paired transmitter and receiver so can you connect a servo directly to the receiver and move it with the joysticks?
Hi
The output in post 101 in propeller tool from plshigh.binary is correct. Hooray!!
When the program starts it waits for a few seconds to allow you to switch to the terminal then
the text "this is a test" only prints 4 times then repeats the measured pulses forever. So if there is a delay switching the terminal on then some lines will be lost- doesn't matter.
The us after the number is the units of measurement (microseconds) so expect to get between 1000 to 2000; 1500 is the centre position.
Changing the '@@@' changed the behaviour of the program- I'm surprised it ran at all let alone merely jumbling up the text.
That seems to prove your hardware is good, but as for why the programs you started with don't work is still a mistery.
I don't do spin code so can't help with looking at those I'm afraid. In fact I do all my coding these days in one form of 'BASIC' or another as they do all I want and are easy to pick up. Thankfully Bean and Eric have provided prop users with excellent tools. Beans PropBasic (which also supports asm), is for P1 only and does not provide a text editor so I use Genie. Erics FlexBasic comes with an editor and terminal and supports P1 and P2 and supports Spin, C, asm, and Basic.
Dave
Yes, the transmitter and receiver are paired/ synchronized. We attached a stand-alone model airplane servo to the receiver and it functions just fine on all four channels. Thanks for the suggestion!
The baud rate is set in PST which you have correctly set to 9600. When I ran the program, The values changed with transmitter input. I'm running out of ideas.
Back to the drawing board it seems.
…and we’re open to any suggestions anyone has at this point. Thank you.
In hospital without my hardware, will be a couple of days.
🙏
Anyone: Where you would go from here to get the Quad River running? That is, to get a program working that runs the servos with a radio control transmitter. The programs we have don’t seem to be doing it. We’re stumped. We’re rookies.
Hi
Ok. In post 101 above you showed two screen shots, one of the output from plshigh.spin and the other from plshigh.binary.
The one form plshigh.binary was exactly right, the other was corrupt because of the changes made to the code. The spin file I sent you used the '@@@' code and is not compatible with the propeller tool compiler and there is no way I know to make it work. However propellerIDE handles it perfectly and so does flexprop so there are alternatives.
So that binary proves your transmitter / receiver / control board are working.
Post 106 explains the printout.
pin 8 = 1100 us
pin 9 = 1762 us
pin 10 = 1476 us
pin 11 = 1535 us
This is the pulse width measured on each pin in microseconds (us)- it is exactly what you would expect.
moving the sticks should affect the values.
Why the original parallax code does not work is a mystery- only a spin expert can tell us.
Since re-writing the entire software is an unreasonable ask of anyone- the thing to do is see if there is a spin expert prepared to put in the time and effort to diagnose the parallax software. Its probably a simple thing since the software has been used by others in the past.
Dave
Jim,
It was nice talking with you by phone on Sunday. Thanks for calling. We discussed contacting Ken or Andy to see if we can get replacement controller board for the Quad Rover. Replacing it would be one way to rule out a non-functional controller board. But as I said when we spoke, I suspect the problem lies in:
1) The hard wired connections to the controller board from the RC receiver, or
2) Input/ connection from the computer to the controller board, or
3) The program itself.
We are open to suggestions from anyone at this point. We remain stumped.
Mark