Recently someone asked me if there was a Serial interface for the phoenix code, like there is for the powerpod code. I did not know of any, so I took an hour or so and hacked up a version from the powerpod serial code and the PS2 control file. I then used the test program that downloads with powerpod. I think it is working OK, but I only tried it out on my Arc32 phoenix. With the Arc32/Bap40 it uses the hardware serial port and assumes that it was initialized externally. For Bap28 it assumes 9600 baud.
Note: also the code needs you to define USESERIAL con 1 to use. This can be easily removed, but I have it as I include many different control files and turn them on or off, depending on what I am testing…
Not sure if anyone will be interested or not, but what the heck.
I played with this a little more and found that it was more configured for our V2.X than the original Phoenix 2.0 code.
So I downloaded a clean version of the PS2 phoenix code, and then built it for this version. This compiles and runs with the current versions of Basic Micro IDE. It also build for both Bap28 and Arc32 (and probably Bap40). I only tested for the Arc32, but did compile it and download it to a Bap28 as well and did verify that it gave the correct sounds for the different buttons being pressed.
One thing I did not like about the powerpod version was if it got disconnected from serial it went back to no buttons press centered which for most things was probably fine. But in this version I also added that if we go through the loop so many times without proper serial being received and the hex was on, it would emulate the Start button to turn the hex off.
Also I had problems with the Arc32 version getting timez0 overflow to work, so I converted over to using timerA on Bap28 and TimerB0 on Arc32/Bap40. This implied I also had to change the time elapsed calculations as well. Upside is there are fewer interrupts…
Again not sure if anyone is interested, but this time I included a complete zip file. Would be nice if someone with a phoenix using a Bap28/SSC-32 would try it to verify it works…