BasicAtomPro IDE version 8.0.1.2 BETA

I misunderstood you. When you said pin polarity, I thought you were talking about if the wires TX/RDY were on the correct pins between both boards. When I said that I swapped the connector, I was referring to the TX/RDY were swapped. I miss took how the word polarity was used.

When you say polarity, I now assume you are talking about the pins state? if it’s an input or an output?

When I tried your code last night, I got a compile error “missing ENDIF” I added the ENDIF’s and tried the code to see is I can get any noise. Nothing worked.

I can try your modified code to see what happens tonight.

I wonder if Jim still has the SpeakJet board, because he could try this code on his end to see if it works. If it does, then its not the code and likely the BAP that I have is damaged.

The baud rate seems to be a problem which is my guess. I don’t know what controls the baud rate inside the BAP, is it hardware? firmware? The pins I/O work, however, the baud rate seems not be functioning correctly on my end. Is it possible that the BAP can work in every other way except the proper baud rate?

I will still try out your code Eddie, I just wanted to throw that idea out on the table.

If you were using the released version of the IDE, you can download both the released 8.0.1.0 or 7.2.0.6 from the basic micro website.

With Eddie’s code have you tried running it under the debugger to see if it ever does the serout command? That would be a good start to see if the serout command ever happens. Also you might also update his loops to maybe loop a maximum number of times before it assumes it is ok to try.

Maybe something like:

LoopCnt var word
...
input rdy
LoopCnt = 0
while (LoopCnt < 10000) and (RDY <> 0)
    LoopCnt = LoopCnt + 1
wend
Serout TX, N9600, [_B9]

Note, I did not try to compile this or run it…

Assuming you can arrange your pin usage on your board you might try the hardware serial port. This is controlled by the underlying microcontroller and should be very accurate. But no hardware flow control. I believe the hardware transmit pin is p15

You could try something like:

enablehserial sethserial h9600,h8databits,hnoparity,h1stopbits hserout [_B9]

That is all for now

Kurt

Thanks Kurt and Eddie,

I appreciate all your help on this. I know this is frustrating. I will give this a try and I will also give myself a benefit of a doubt and try using a seperate power supply like I did before. It’s possible the last time I tried it I used the wrong number code for the beep sound.

polarity as in active high or active low. typically people associate an active high state with a net name unless there is something to indicate an opposite polarity like a !, #, , or ‘n’ character. Your RDY signal is active low, i.e. the SJ is “ready” when the line is in a low state. As a suggestion you should consider writing it as nRDY or even changing it to BSY so that the active high state is functionally equivalent to what the signal name is. If you talk about things in a positive-logic sense in a consistent manner it helps reduce confusion. In this case nRDY is read “not ready” as this would be the case when the signal is in the high state. This becomes really helpful when writing equations for programmable logic devices, especially when some poor contractor is going to get stuck deciphering it when you have moved on and up to a new job. :open_mouth:

Yeah I figured there would be syntax issues but it was the backwards logic of the RDY pin that most likely caused the problem. See what happens when you try it again tonight. I edited my post above to include the EndIf statements.

kurte has a good idea too, you could use the S_OUT as your TXD pin and the debugger window on the IDE. You would need to change serout to serout TX, N9600, [DEC TestPhrase(pIndex), 32] ; the , 32 adds a space character in between the values to display the value of the phoneme token on the terminal instead of whatever glyph would come from sending the single byte. You could also use one of the pushbuttons as RDY and make the Pause 20 statement something like Pause 10000 so you could literally pace the operation and demonstrate proof of concept. That way if the loop count is off or something it should be easy enough to find before you send the stuff to the SJ and wonder why it’s choppy or something.

Sounds like a good idea to try a different power supply again. You said in a earlier response that you are using the power from the ABB board. Was that the +5V or the input voltage? I remember in the other thread that you were using a non low voltage power regulator on your board and the ABB could run a lot longer than the SJ board could…

Good Luck

I wish I could help, but I’m just buried right now. Sorry…

No problem, I understand. :smiley:

Want to send me the board and I’ll send it back once we get Mike up and running? I have a BAP and ABB in my ROV I can use with it, and I should have a day or two off around T-day to mess with stuff.

Eddie, I could ship you my SJ board and you can tinker with it if I can’t get it to work tonight.

PM me your mailing address. :smiley: :smiling_imp:

Like Eddie, I could try to debug it. Have 3ABB (2 with pros) and I also have a BOE board with a BS2 in it…

Kurt

Oops I see I already missed a few responses…

So I think Eddie should get the first try…

Good Luck

The only problem with this is of course if I get something working then there isn’t a second setup in place to verify the problem is solved. I could just go buy an SJ chip of course but then I have to go figure out how to wire it up and even then we will be into a question of if the two systems are the same.
This IS why I asked you if you had an extra PCB the other day btw. :smiling_imp:
We can do whatever though… I just figured you would want to hang onto all your stuff so it was readily at hand when those servos you ordered arrive and the BRAT goes for it’s first step. :unamused:

I do have an extra board :smiling_imp: but it does not have any SMT components on the board. I would have to give you my Digi-Key B.O.M. if you wanted to spend about $35 in parts.

Also, I have not ordered the servos just yet :confused: , was saving a bit more for other items.

If Jim does not want to loan me his then send me the PCB and the BOM and I’ll scrounge up the parts I need to get the SJ working.

And I figured as much on the servos but it is still fun to poke fun occasionally. :wink:

I will do it. PM me the address. :slight_smile:

LOL!

Yeah, and one of the parts I need is for the FOOT. Remember the FOOT ordeal? :laughing:

Eddie and Mike,

Parts sent, plus some extra stuff for the fun of it. :wink: Enjoy! Looking forward to finally knowing what the heck is going on here. :smiley:

:open_mouth: 8)

Woot!
:smiley: