Lynxmotion AL5D Going Out of Control

Ugh! I was hoping for a simpler solution. Had a feeling I would be doing this anyway. End of a marking period coming up so I have a lot of multitasking ahead of me so it will be awhile before I get all this done. Will be in touch one way or another as soon as I get to all this.

If you can quickly take a few clear photos of the setup (especially the electronics) we’ll try to spot what we can in case there’s anything wrong with the physical setup.

As you said, if they were working before, but you were not the last to use them, something must have changed.

The SSC-32 Servo Sequencer was huge! I didn’t know about it before that was instrumental in my troubleshooting! I have three working the others I’ll have to fine tooth comb to find their problems. May have to pull the Multimeter out for that too.

Three robots worked immediately off the SSC-32 Servo Sequencer. My robots apparently work by having the Bluetooth off, and the baud rate on 115200. So in flow arm I need to turn off the Bluetooth, and set the baud rate at 115200. The Auto find works well to identify the working port.

Since I have worked with Arduino’s the SSC-32U makes sense to have the baud rate at 9600. I only have LynxMotion experience with the SSC-32 so I need to do some learning to catch up with that. Documentation you linked should be good.

My class will be all set with the three working bots. I’ll give updates on the others as soon as I know more.

Thanks!

You indicate experience with Arduino, and the only difference between the AL5D you have and more recent ones is really the SSC-32, so some possibilities:


No more need for the USB to Serial adapter or the 9V battery.
Program the arms using Arduino, with all pins broken out.

The commands sent to the SSC-32U are the same as for the SSC-32, and are really easy to understand. If you want to use something Arduino-compatible like the BotBoarduino, consider experimenting with the Servo Library.

1 Like

I seem to have most of the robots working now. However when we try to turn on the inputs externally the information does not make it to Flowarm software. I have measured the voltage on each A B C and D input and a switch does change the external pin from 5V to 0V. On the flow arm software you can click the A, B, C and D inputs and the robot and the software work properly. An external switch is not making the flow arm software execute the program.

Can you verify that you have the sequence associated with an input?
The button to select the input is the H in the image below (there’s a list of potential “triggers”:

1 Like

A, B, C, and D do not exist in the drop down.

My apologies, it’s been some time since I used that aspect of the software. Manual:

Referring to pages 26 and 27, you are correct in that only E,F,G,H pins are assigned to independent triggers, not A,B,C,D on the SSC-32U.

1 Like

So how do I get the A, B, C, and D ports on the board to talk to the software. Used to work. If I hold B and C down for an extended period of time they will pause the bot but then they lock on and do not turn off so you can push the switch again and continue the sequence. A and D do not work at all.

You can see how the inputs A,B,C,D are used in the sequencer on page 19 of the manual.

A => Play sequence from beginning
B => Play from pause
C => Play from pause
D => Pause sequence

As always, important to read the manual :slight_smile:

OK, I am not a very good writer so I’'ll try again. Please see my reply 5 posts up from your last reply.

A,B, C, and D work like they are supposed to when clicking on those options in Flow Arm. The external switches are registering 5volts and 0volts when pushing the switches. However that external signal of the A,B,C and D inputs on the circuit board is not making it to the flow arm software. Somewhere between the switches and the software the signal is getting lost. Is the Flow Arm code written for 9600 baud and my Lynxmotion arms work on 115000? Or on the random occasion when Flow arm does read the signal, it is random and sometimes locks the signal on in the case of B, and C.

Tested on two different arms.

So to confirm, the inputs via FlowArm work, and the inputs E,F,G,H work on the SSC-32U, but not those connected to A and D, and B and C are intermittent? It’s unlikely to be a baud issue if you can communicate with the board. As you said, quite weird given that they worked in the past, and the hardware and software have not changed.

Just some general ideas / speculation here:

  • You indicate you have buttons connected to A,B,C,D, so press the button quickly (no long presses). It might be an issue of timing between when the software queries the eight inputs and when the button is actually pressed. The software might read the button is pressed, and re-scan quickly enough to read that it is still pressed, thus “cancelling” the first.
  • Ensure that the sequences work as you would expect via the interface and are associated with the correct inputs.
  • Can you show the button setup and connections to the SSC-32U board, and to the sensors themselves? We’ll see if we can spot anything.
1 Like

Clicking a button quickly does not work. Multiple times when on B and C locks the input on.

image

E ,F, G, and H do not exist on our control board. SSC-32.

The inputs from the switch are registering 5V and Ov on the pins being connected to wither

that is A, B C, or D.

The signal is not going to Flow arm.

The photos are appreciated and finally realized that you have the older SSC-32 as opposed to the SSC-32U. My apologies if it was mentioned. The SSC-32 was actually discontinued quite some time before FlowArm came out (it was finally discontinued in 2014).

SSC-32 user guide:
http://www.lynxmotion.com/images/html/build136.htm
image

Can’t quite follow the wiring between the VEX switch and the board to catch if there may be issues, but the image above shows how to connect a normally open switch to pin A using a resistor. As per the guide:

  1. The ABCD inputs have both static and latching support. The inputs have internal weak (50k) pullups that are used when a Read Digital Input command is used. A normally open switch connected from the input to ground will work fine. There are two pins that have 5vdc, two pins with ground, and four inputs labled A, B, C, and D.

The row above the four pins are +,-,+,- for 5V, GND, 5V, GND.

1 Like

We built the circuit as shown in the manual. Tested for logic 0V and 5V with multimeter on the pin A and C. Same results. External signal is not getting to the Flowarm app. You can not associate A, B, C, and D with the sequence. There is no option.

The breadboard circuit is using a optocoupler 4N25 between two Lynx robots so they can talk to each other with their signals. However if the robot is not accepting a switch signal the optocoupler is not going to work.

Looking into it with the original designer to see if the SSC-32 was considered when creating the software. Will get back to you as soon as there’s news. It may be the case that the SSC-32 was simply too old, so was not considered.

If this functionality is preventing you from progressing, are you in a position to upgrade to the SSC-32U? We could look into a small discount too.

1 Like

Developer’s response indicated that FlowArm PLTW can indeed be easily edited using the FlowBotics Studio software:


This is a bit more involved, so the short answer / solution is to simply opt for the newer SSC-32U which provides access to start specific sequences via pins E to H, and uses A to D as sequence triggers.

You can edit the FlowArm PLTW schematic (using the ‘Edit Selected…’ button instead of the ‘Open Selected…’ button). This will require a little knowledge of FlowBotics Studio though.

Once in edit mode, go inside the 'Arm Control’ module and at the top you’ll see a module called ‘User Programming’. There you’ll see other modules set up for use in triggering from the A,B,C and D inputs.

That may be a bit advanced though. To add the A,B,C and D tags to the menu for tagging sequences, you need to drill further down until you get inside the Sequencer module. Inside the Ruby component code there’s a line:

@tags.push “E”,“F”,“G”,“H”,“Clear All”

Change this to:

@tags.push “A”,"B”,"C”,“D”,“E”,“F”,“G”,“H”,“Clear All”

That should do it.

Thing is B and C are already wired up to start and stop the sequencer so maybe best to leave those out or disconnect them inside the ‘User Programming’ module. It depends what he wants to do.

1 Like

So I am paying $40 to change one line of code?

Unfortunately the .exe program of FlowArm PLTW seems not to include functionality to trigger new sequences on inputs A to D but instead only provides functionality within the same sequence.

We’ll convert this to an internal support ticket to offer additional options.

This topic was transferred to internal RobotShop Support.