Jolly Logic Altimeter Three: Cannot connect (and other problems)

Discussion in 'Rocketry Electronics and Software' started by MetricRocketeer, Jun 16, 2019.

Help Support The Rocketry Forum by donating:

  1. Jun 16, 2019 #1

    MetricRocketeer

    MetricRocketeer

    MetricRocketeer

    Forum Supporter TRF Supporter

    Joined:
    Jun 1, 2018
    Messages:
    115
    Likes Received:
    9
    Gender:
    Male
    Hi everyone,

    I tried out my fairly new Jolly Logic Altimeter Three (JLA3) today for the first time in a rocket flight.

    I did two flights with my Estes Firestorm, in whose airframe I had drilled four tidy holes so that the altimeter could get a good reading.

    The JLA3 did a fine job with the first flight, in which I used a B6-2 motor. The flight log downloaded right away to my iPhone just as it was supposed to. Later, when I got home and matched the recorded flight data to the predicted data according to RockSim, everything matched up beautifully.

    So far, so good.

    Then I flew the Firestorm on a C6-3 motor. I carefully protected the JLA3 with wadding, and I also put wadding aft of the parachute. Thus, going from fore to aft, I had the altimeter wrapped in wadding, then the parachute, then more wadding. I proceeded to fly the rocket, and I recovered it intact.

    So here's the first of two anomalies. I had major trouble linking my iPhone to the JLA3 and downloading the data, although I eventually succeeded after numerous attempts. I had already done substantial testing on the JLA3, and I have never before had difficulty using Bluetooth to link the altimeter to my phone.

    And then, once I checked my downloaded data, it was way off. RockSim predicted an altitude of between 90 to 100 meters, and the JLA3 was giving me data of half of that (less than 48 meters).

    If I hadn't had such trouble linking the JLA3 to the iPhone, I would have thought that the 48 meters was what it was. But given the trouble that I had -- and which I am continuing to have -- with linking, I think that somehow the JLA3 has ceased functioning correctly.

    Does anybody have an idea what happened? Can I somehow reboot the JLA3 to restore it to good operation?

    Thank you.

    Stanley
     
  2. Jun 16, 2019 #2

    BEC

    BEC

    BEC

    Well-Known Member

    Joined:
    Feb 19, 2009
    Messages:
    2,719
    Likes Received:
    95
    Gender:
    Male
    Location:
    Auburn, WA
    Reset procedure on the lower right corner of page 7 in the manual. https://www.jollylogic.com/wp-content/uploads/2015/01/AltimeterThreeUserGuide.pdf

    Also some suggestions on the support page of the Jolly Logic web site.

    I've been flying A3s since they were in beta and sometimes they (and/or the phone you're trying to work with) get cranky. But connection issues shouldn't affect the data...it just makes it hard to get the data off the device. I have three of them right now and one is fussier than the others about reconnecting after a flight and sometimes I have to pull it out of the model and press the power button to stop the recording manually. This particular unit has led a hard life and is on its second case and second display.
     
  3. Jun 16, 2019 #3

    MetricRocketeer

    MetricRocketeer

    MetricRocketeer

    Forum Supporter TRF Supporter

    Joined:
    Jun 1, 2018
    Messages:
    115
    Likes Received:
    9
    Gender:
    Male
    Hi Bernard,

    Thank you for your informative and instructive response.

    Once you pointed me in the right direction, I spent much time earlier today trying to reset the A3 and do everything that the instructions call for. I could not make any headway.

    So I tried it again this afternoon, and suddenly everything works -- for the time being at least.

    So I guess I am back in business with the A3. But I am now reluctant to rely upon it. Sometimes it works, and sometimes it doesn't. Previous to this incident, I couldn't stop singing its praises, but you want to know that it is going to do what it is supposed to.

    Well, I own the device now, so I will just keep experimenting with it.

    But I really appreciate your feedback. It was really helpful.

    Stanley
     
  4. Jun 17, 2019 #4

    BEC

    BEC

    BEC

    Well-Known Member

    Joined:
    Feb 19, 2009
    Messages:
    2,719
    Likes Received:
    95
    Gender:
    Male
    Location:
    Auburn, WA
    Well....if/when it acts up again (or even if it doesn't), drop John Beans a note. He supports his products VERY well.

    Sorry for the initial tone of my response which was almost, but not quite, RTFM.

    I have flown lots of altimeters and when I want data (and am not concerned so much about mass or volume) the AltimeterThree is my favorite - it's (generally) easy to use and the data presentation is top notch, especially when you turn on the accelerometer data as well.
     
  5. Jun 17, 2019 #5

    MetricRocketeer

    MetricRocketeer

    MetricRocketeer

    Forum Supporter TRF Supporter

    Joined:
    Jun 1, 2018
    Messages:
    115
    Likes Received:
    9
    Gender:
    Male
    Hi Bernard,

    First, you have nothing for which to apologize. I should have read the manual right from the beginning. You were tremendously helpful to me.

    I am glad that you like the A3 so much. I will stick with it and hope it behaves well. And I also know that John Beans supports his products well. Right before I bought the A3, I asked him a question by e-mail and he promptly responded.

    Let me please ask one more question, since you raised the issue. I want to make sure that I understand the workings of the A3. You said that the "data presentation is top notch, especially when you turn on the accelerometer data as well." But in rocket mode and in experimental mode, you automatically get acceleration data, and at the same rate -- 200 times per second -- right? To get acceleration data, I don't have to do anything special. I use either rocket mode or experimental mode, and then I get acceleration data. Isn't this correct?

    Actually, what do you get in experimental mode that you don't get in rocket mode?

    Thanks.

    Stanley
     
  6. Jun 17, 2019 #6

    BEC

    BEC

    BEC

    Well-Known Member

    Joined:
    Feb 19, 2009
    Messages:
    2,719
    Likes Received:
    95
    Gender:
    Male
    Location:
    Auburn, WA
    I probably should have said “when you turn on the acclerometer data in the graph”. Yes, both rocket and experimental modes give you acceleration data. I can’t say I’ve poked about much with experimental mode....you’ll have to ask John what that mode does that’s different than rocket mode. I’d guess it has something to do with what gets plotted and certainly there won’t be events like “burnout” and “ejection” on a graph in that mode.

    Here are three screen shots of the same flight. The first is the normal time vs. altitude. The next adds total acceleration. The third is a zoom up on the first second of the boost clearly showing an acceleration curve that matches the shape of the time-thrust curve for the motor used (Q-Jet C12).
     

    Attached Files:

  7. Jun 17, 2019 #7

    MetricRocketeer

    MetricRocketeer

    MetricRocketeer

    Forum Supporter TRF Supporter

    Joined:
    Jun 1, 2018
    Messages:
    115
    Likes Received:
    9
    Gender:
    Male
    Hi Bernard,

    Nice graphs. How did you add acceleration to the graphs? They don't come that way automatically. You didn't create an entire new spreadsheet, did you?

    Stanley
     
  8. Jun 17, 2019 #8

    MetricRocketeer

    MetricRocketeer

    MetricRocketeer

    Forum Supporter TRF Supporter

    Joined:
    Jun 1, 2018
    Messages:
    115
    Likes Received:
    9
    Gender:
    Male
    Hi Bernard,

    Actually, disregard my last question, please. I see how to do that. The problem that I am having is this: I can see how to zoom into just a particular few seconds of the flight on my iPhone. But when I send the graph to my computer, the graph keeps reverting to the default amount of time.

    In other words, my flight lasted only a little over 15 seconds. By the time that I retrieved my rocket and stopped the recording, well over two minutes had passed. I don't want my graph to show all of that time. I want it to show only the 15 seconds of flight time. I can get this to happen on my phone, but when I e-mail the graph, the entire two minutes keeps showing up. Therefore, I have a lot of extraneous information without being able to zoom in on the important data.

    Stanley
     
  9. Jun 17, 2019 #9

    BEC

    BEC

    BEC

    Well-Known Member

    Joined:
    Feb 19, 2009
    Messages:
    2,719
    Likes Received:
    95
    Gender:
    Male
    Location:
    Auburn, WA
    That closeup of the first second was just zoomed in on the phone was just a screen shot from the phone screen. The graph on the summary page of the Excel file is just that....you’d need to open the .xlsx file with Excel (or OpenOffice or Pages) to mess with the graph there. I have very few skills with graphs in spreadsheet programs.
     
  10. Jun 17, 2019 #10

    MetricRocketeer

    MetricRocketeer

    MetricRocketeer

    Forum Supporter TRF Supporter

    Joined:
    Jun 1, 2018
    Messages:
    115
    Likes Received:
    9
    Gender:
    Male
    Thank you so much, Bernard! That clarified everything. In the last two days, you taught me a lot about using my JLA3.

    I myself am actually pretty good with spreadsheets and making graphs -- although some people are better than I am. Still, the amount of data generated by the JLA3 was so extensive that I was having trouble making the graph with Excel. Of course, you want there to be a lot of data, because that's how you get good information. But with a data point coming in every 0.05 seconds, I had literally thousands of points, and I was getting overwhelmed.

    So here is my screenshot of the first few seconds of my flight with the Estes Firestorm powered by a B6-2 motor.

    Firestorm B6-2 liftoff-to-burnout.png
     
  11. Jun 17, 2019 #11

    John Beans

    John Beans

    John Beans

    Founder, Jolly Logic TRF Sponsor TRF Supporter

    Joined:
    Jun 5, 2010
    Messages:
    801
    Likes Received:
    79
    I'll chime in here with a few bits of advice to add to what Bernard (very knowledgeable) has already provided:
    1. Whenever you have difficulty connecting—and honestly, the Bluetooth stack on your phone is shared by all apps and the responsiveness and reliability on anything but a constant connection can be quite variable—go to Settings>Bluetooth on your phone and tap on the name of the altimeter to re-connect. The phone will give preference to its own Settings app before any app, including the AltimeterThree app. [Especially on Apple, the Bluetooth stack is like a grouchy librarian who only looks up to help you once in a while, and mostly just tells you to be quiet.]
    2. For the ultimate in good battery life and reliability (at the cost of some convenience), you can begin recording on the AltimeterThree app, then turn off Bluetooth on your phone. The altimeter no longer has to worry about communicating its battery level and recording status, so both the phone and the altimeter can chill out and save battery while recording continues. This also makes re-connecting a little easier after you retrieve your rocket and turn Bluetooth back on and poke the name of the altimeter in Settings.
    3. In Rocket mode, the app will try to assess when the flight starts and when it ends, then hide extra ground data (the flat line before and after the flight).
    • Sometimes the ground data trimming gets wonky, and if so you can show all of the ground data and then make adjustments, as follows.
    • You can correct the flight start, flight end, ground trimming, and data range to be shown in the spreadsheet if needed.
    • After showing all ground data, tap the point of the graph you think is a better beginning or end to the flight. The point selected will be marked by a blue dot (re-tap if necessary to get the exact point you want, and you can pinch and zoom to look closer if necessary, and double-tap to zoom back out), and you will see a new flag icon appear at the top of the screen—it's the Marker menu.
    • (If you long-press rather than tap, you'll get the data examiner which shows the data values as you wipe around the graph. For more precision, zoom in.)
    • After you've got your chosen point marked in blue, tap the flag menu at the top and choose Flight Start or Flight End. Flight Start and Flight End are shown as green and red circles.
    • You can also select Trim Before and Trim After to hide portions of the recording you never want to see. Use these two types of changes to make the graph more centered and attractive.
    • You can also set Data Start and Data End so that your spreadsheets only contain the data you are interested in. Data Start and Data End are shown as vertical green and red lines.
    Hope all of that makes sense?

    Don't be afraid to ask me for help at john@jollylogic.com, or of course here in the forum.
    Though I don't pay as close attention to the forum all of the time, one or more members (like @Onebadhawk or @BEC will ping me to get my attention, which is appreciated.
     
  12. Jun 17, 2019 #12

    John Beans

    John Beans

    John Beans

    Founder, Jolly Logic TRF Sponsor TRF Supporter

    Joined:
    Jun 5, 2010
    Messages:
    801
    Likes Received:
    79
    Oh, one other point: the acceleration graph is not normally shown because of how much data it takes, and some phones don't have a ton. And most people don't care about it (since stuff like burn time and ejection are already presented). But when the built-in analyses appear to have messed up, you can look at the raw data and analyze it yourself.

    On the graph, you can show Total Acceleration (a scalar combination of all directions) or just Y (the long direction towards the tether point), X (from bottom of display to top of display direction), and Z (up out of the display).

    Or all four graphs. But you'll need some memory for that, and on slow phones maybe some patience!

    Note: acceleration data is collected at 200 times a second, but only stored at 20 times per second. It's binned and averaged at each point, which is lossless for velocity integration, even though it does discard some frequency and shock info that no one really cares about anyway.
     
  13. Jun 17, 2019 #13

    MetricRocketeer

    MetricRocketeer

    MetricRocketeer

    Forum Supporter TRF Supporter

    Joined:
    Jun 1, 2018
    Messages:
    115
    Likes Received:
    9
    Gender:
    Male
    Thank you, John. Very useful information.
     
  14. Jun 17, 2019 #14

    BEC

    BEC

    BEC

    Well-Known Member

    Joined:
    Feb 19, 2009
    Messages:
    2,719
    Likes Received:
    95
    Gender:
    Male
    Location:
    Auburn, WA
    That sure looks like the time-thrust curve for an Estes B6, as it should.

    As an aside, a Firestorm is both big and heavy and isn’t going to go very far on a B motor. 40-odd meters up, especially if it wasn’t perfectly straight up, isn’t that far out of the ballpark. The projected altitudes on the boxes are generally somewhat optimistic (though not all of them are).

    Thanks to John for wading in here. As always, VERY helpful and some stuff I might want to think about, too. I love that characterization of the Apple bluetooth interface.
     
    Last edited: Jun 17, 2019
  15. Jun 18, 2019 #15

    MetricRocketeer

    MetricRocketeer

    MetricRocketeer

    Forum Supporter TRF Supporter

    Joined:
    Jun 1, 2018
    Messages:
    115
    Likes Received:
    9
    Gender:
    Male
    Hi everyone,

    First, a special thanks to Bernard and John for helping me understand how to use my JLA3. Now, I believe, I can use it to help analyze my rocket flights.

    So since I now understand how to use the device, and how to acquire and download the wonderful charts, I wanted to post three remaining charts that I have.

    The first is the full flight of the Firestorm on a B6-2. All the recorded data is entirely consistent with the simulated data that I obtained from RockSim .

    And now I have two charts from flying the Firestorm on a C6-3. The first of these charts, on the photo labeled "Firestorm C6-3 liftoff-to-burnout" shows data consistent a C6-3's thrust curve. However, the second of these two charts entitled "Full flight of the Firestorm with C6-3" shows it achieving an altitude of only 47.5 meters. According to RockSim, it should attain some 90 to 100 meters. Notice that the chart says that the ejection delay was only 1.55 seconds, and the chart says that this was early. Possibly this adversely affected the altitude. On the other hand, I am surprised that a delay of only 1.55 seconds versus the correct 3 seconds would have affected the altitude so drastically, nor does RockSim indicate such a reduced altitude.

    Well, that's all I know. I am glad to have acquired this data, and I wanted to post these three charts on TRF. I hope I do this correctly. I seldom upload files.

    Stanley

    Full flight of the Firestorm with B6-2.png Firestorm C6-3 liftoff-to-burnout.png Full flight of the Firestorm with C6-3.png
     
    Last edited: Jun 18, 2019
  16. Jun 18, 2019 #16

    BEC

    BEC

    BEC

    Well-Known Member

    Joined:
    Feb 19, 2009
    Messages:
    2,719
    Likes Received:
    95
    Gender:
    Male
    Location:
    Auburn, WA
    John will have to weigh in on how this happened, but for that last flight your launch pad is at ~ -32m altitude and your landing site is -40m.

    What sort of venting is there in the Firestorm's body? Or how have you packaged the A3 beyond hanging it from the nose cone's recovery attach point (if anything)? I don't recall those Estes ARF nose cones fitting all that tightly, so it's hard to picture pressurizing the tube before liftoff enough to throw the "zero" off that much, but I don't have the slightest idea what else would do that.

    A flight from -32m to +47m isn't so far off of what you expected to see.....especially with the coast phase cut down to a little over half of how long it should have been.

    There's something funny going on with the initial "zero" point in your first flight as well....just nothing nearly as drastic.
     
  17. Jun 18, 2019 #17

    MetricRocketeer

    MetricRocketeer

    MetricRocketeer

    Forum Supporter TRF Supporter

    Joined:
    Jun 1, 2018
    Messages:
    115
    Likes Received:
    9
    Gender:
    Male
    Hi Bernard,

    You're right. The altitude does go from about -32 m to about +47 m, for a total of 79 m.

    Why did this happen? I have four beautiful holes in the airframe -- so I have no problem there, I am sure. Perhaps I blocked off the air holes with my parachute.

    For the first flight, I should note that I turned on the JLA3 and started recording, and then I walked over to the liftoff rails. (I did the same with the second flight.) There was some elevation change from the place where I started recording to the liftoff rail -- but not six meters worth. I was at Mt. Airy MD.

    Stanley
     
  18. Jun 18, 2019 #18

    BEC

    BEC

    BEC

    Well-Known Member

    Joined:
    Feb 19, 2009
    Messages:
    2,719
    Likes Received:
    95
    Gender:
    Male
    Location:
    Auburn, WA
    Hmmmmmmm.

    There's no way you could have sealed off the vent holes with the 'chute. I pinged John to pop back in as I have no idea how to fool the A3 in this way.

    I don't recall ever having my flight data from an A3 start from anywhere but zero on the graph even when starting from a launch site several thousand feet above sea level. I have 183 flights' worth of data in my phone and I just did some spot checking and haven't seen any graphs begin at anywhere but zero.
     
  19. Jun 18, 2019 #19

    MetricRocketeer

    MetricRocketeer

    MetricRocketeer

    Forum Supporter TRF Supporter

    Joined:
    Jun 1, 2018
    Messages:
    115
    Likes Received:
    9
    Gender:
    Male
    Hi Bernard,

    I just want to make sure that I understand the procedure.

    Let's say that you were getting a rocket set up for a launch -- loading the parachute and the wadding as well as turning on the JLA3 and then inserting it into the rocket. Then let's say that you walked up a hill three meters higher than you were when you turned on the altimeter. The data would show that the launch began three meters above zero, right?

    Stanley
     
  20. Jun 18, 2019 #20

    MetricRocketeer

    MetricRocketeer

    MetricRocketeer

    Forum Supporter TRF Supporter

    Joined:
    Jun 1, 2018
    Messages:
    115
    Likes Received:
    9
    Gender:
    Male
    Hi Bernard and anybody else who wishes to respond,

    So now I am a bit confused.

    A few minutes ago, I got the idea of doing a real quick altitude test with my JLA3. So, while in my house with a few windows open (in other words, I was getting plenty of normal air pressure inside the house), I turned on the altimeter and synced it up with my iPhone. I then took a very short walk outside and down my front steps and then back up the steps into the house. Finally, I reconnected the altimeter with the phone and downloaded the data.

    The chart shows that the altitude at which the flight (it wasn't really a flight, of course) began was three meters. But how could that be? The location at which I turn on and sync the JLA3 with the iPhone should be zero meters, right?

    Stanley
     
    Last edited: Jun 18, 2019
  21. Jun 18, 2019 #21

    BEC

    BEC

    BEC

    Well-Known Member

    Joined:
    Feb 19, 2009
    Messages:
    2,719
    Likes Received:
    95
    Gender:
    Male
    Location:
    Auburn, WA
    Again, John will have to weigh in here....but I believe A3 (and A2) use the accelerometers to do launch detection. What most altimeters do is keep a sort of rolling buffer of pressure readings and then when they detect launch (whether by accelerometers or by detecting a change in altitude of "so much" in "selected interval of time") then they basically mark in the buffer the pressure of the back-calculated liftoff instant and then work from there. Since breezes, temperature and other factors cause the local pressure to change constantly, no altimeter can assume the air pressure at that the instant they are armed for flight (in A3's case, starting the recording) is the same as the air pressure at the launch pad at the moment of launch.

    It might be a few seconds and no elevation change if you're out flying by yourself and you start recording after the rocket is on the pad and ready or it could be tens of minutes (at a big launch) before the rocket is actually launched. The new FlightSketch Mini telemeters the current altitude sensor reading back to the phone in real time once it is armed for flight and there you can see the numbers dance up and down until the rocket actually takes off.

    So..... no - doing what you describe two posts above should not lead to a launch reading starting at +3m. And since you probably didn't accelerate the A3 enough in any direction to convince it that it had begun flying, what you describe in the post just above doesn't really surprise me.

    Now if you put it in Experimental mode and then do the same thing, you should (I strongly suspect) be able to see your walk down the stairs and back up again after you stop the recording and download the data.

    A1 has a "realtime" mode where you can see the altitude change on the display dynamically.
     
  22. Jun 18, 2019 #22

    MetricRocketeer

    MetricRocketeer

    MetricRocketeer

    Forum Supporter TRF Supporter

    Joined:
    Jun 1, 2018
    Messages:
    115
    Likes Received:
    9
    Gender:
    Male
    Hi Bernard,

    I put my JLA3 in Experimental mode, as you suggested.

    The chart does show a more accurate altitude portrayal of my walkabout around the house than it did when the altimeter was in Rocket mode.

    Nevertheless, it continues to show that the recording began at three meters. I guess there is nothing to worry about with that, but I do find it odd that the recording doesn't begin at zero meters.

    Stanley
     
  23. Jun 18, 2019 #23

    John Beans

    John Beans

    John Beans

    Founder, Jolly Logic TRF Sponsor TRF Supporter

    Joined:
    Jun 5, 2010
    Messages:
    801
    Likes Received:
    79
    What happens in Rocket mode is that after the flight, the algorithms go back over the recording to interpret it. In Rocket mode it will start at the apogee and walk backwards until it finds ground, and it does something similar at the end of the flight.

    It's a pretty good system, but it's not fool-proof, especially if there are pressure artifacts. If you've flown a lot of data flights, you'll eventually see flights where the altitude dips dramatically at launch, or lags behind the acceleration a fair amount.

    Obviously, the rocket's not jumping underground, jumping up then down, or accelerating but not gaining altitude. Instead, you're seeing what happens when we use pressure as a proxy for altitude and the pressure is distorted by venturi, Bornouli, ram, or piston effects (piston effects because of the parachute and wadding/blanket suddenly sliding down forcefully at liftoff, or just as the air all gets compressed in the tube below the vent holes, or lowered above them).

    FYI, 50 feet of altitude is a tiny amount of pressure differential. Sucking on a jar or your hands with an altimeter cupped in it you can easily simulate up to 3000 feet of altitude.

    Other than really trying to vent well—stay away from curved surfaces like the nosecone by at least two diameters, and much further on mach flights, use a payload bay perhaps, and vent both the top and bottom of the air space—there isn't much that can be done.

    It helps to think of vents as being the way that air escapes the rocket as it climbs so that the pressure inside the rocket stays the same as pressure outside the rocket. Vent holes need to be bigger than you'd think if:
    1. If you have lots of air in the rocket that needs to get out
    2. You have a punchy, high-thrust motor (altitude gained quickly, air needs to get out quickly)
    3. You have a narrow rocket, such as minimum diameter (altitude gained quickly)
    Water rockets have the worst graphs I've seen. Without a restricted nozzle, they can have incredibly short thrust times that are 1/10 or less than those of a burning motor, and much higher accelerations. And frequently the altimeter is on top, where all kinds of distortive pressure flows can make the graph look like a crazy roller coaster rather than a single smooth up-then-down flight profile.

    You can discover the base pressure data that the altimeter has to work with if you Show all the ground data, zoom out, and look at it yourself. Sometimes you can better place the Flight Start and Flight End points (the green and red dots) by tapping the graph and using the Marker menu, but sometimes the pressure graph is just very distorted. You can still usually trust the apogee if the ground level was assessed correctly (unless the altimeter was in a completely sealed bay or something), but some of the other stats may be pretty far off. If the ground level was off, you'll have to do a little math, or go to the spreadsheet and change it and recalculate.

    You can trust the accelerometer timing, but the altitude graph may go wonky and not look like it matches until the rocket slows down during coast. At that point, the velocity effects (ram air, Bornoulli, etc.) ease up, insufficient venting finally catches up, and the pressure inside the rocket begins to match the pressure outside.

    I think it's better to get exuberant with the venting rather than try to use the smallest size you can get away with. What's fine for a slow moon burner motor won't be enough for a punchy drag race motor. And technically if you fill the rocket with a larger chute, you don't need as much venting (less air in there). Complicated, huh?

    Anyway, hope that helps?
     
    Last edited: Jun 18, 2019
  24. Jun 18, 2019 #24

    MetricRocketeer

    MetricRocketeer

    MetricRocketeer

    Forum Supporter TRF Supporter

    Joined:
    Jun 1, 2018
    Messages:
    115
    Likes Received:
    9
    Gender:
    Male
    Hi John,

    Yes, that helps a great deal. Very informative. Thank you.

    Stanley
     

Share This Page