News:


  • March 28, 2024, 03:46:46 AM

Login with username, password and session length

Author Topic: Climb_and_Dive Timer Update v1.2  (Read 4385 times)

Offline CircuitFlyer

  • Trade Count: (0)
  • Commander
  • ****
  • Posts: 301
    • www.circuitflyer.com
Climb_and_Dive Timer Update v1.2
« on: June 02, 2023, 02:50:55 PM »
A big thank you to all those of you who have purchased a Climb_and_Dive timer.

The latest software version is v1.2.  Please be sure to follow the instructions to update your timer to the latest release.  Note: You only need to update the (1) single file called code.py by dragging and dropping the new code.py file available from the most recent download onto the CIRCUITPY drive that pops up when you plug the timer into your computer.  Be sure to click ‘replace’ when asked.

https://circuitflyer.com/Climb_and_Dive/docs/Software.html

I have had some excellent feedback from a few users.  Thank you to those fellows for acting as my beta testers.  In this latest release I improved a few things and added some new features:

- Increase the amount of overall boost/brake available
- New procedure to allow the timer to be mounted in any orientation
- Added the option to add a few seconds of normal RPM after the burst of high RPM at the end of the flight
- Added some debounce to the optional push button switch

Remember that since this is an ongoing project the onus is on the user to occasionally check the instructions to make sure you are using the latest code version available.

For those interested in purchasing a timer all of the  details can be found here:

https://circuitflyer.com/Climb_and_Dive/

One of the things I’m still actively working on is the possibility of adding some nose-up boost to help reduce any delay in the increase in RPM when entering a maneuver.   If you have any suggestions for improvements or new features please let me know.  Your feedback is always welcome.
Paul Emmerson
Spinning electrons in circles in Mississauga, Ontario, Canada DIY Control Line Timers - www.circuitflyer.com

Offline John Tate

  • Trade Count: (0)
  • Commander
  • ****
  • Posts: 233
Re: Climb_and_Dive Timer Update v1.2
« Reply #1 on: June 02, 2023, 05:32:34 PM »
Thank you CircuitFlyer for your mods and changes to the Climb_and_Dive  timer.
I can tell that each change you make does make it better and better. I enjoyed going out and experimenting with the Climb_and_Dive timer to see how your changes affect the flight of the model. I am still experimenting when the weather will let me.

Offline CircuitFlyer

  • Trade Count: (0)
  • Commander
  • ****
  • Posts: 301
    • www.circuitflyer.com
Re: Climb_and_Dive Timer Update v1.2
« Reply #2 on: June 04, 2023, 09:19:24 AM »
Here is an interesting idea:

I tested conductive nylon tape as an extension of the touch pin to control the timer.  It works surprisingly well.  It uses conductive glue on the one side and a metal impregnated woven nylon fabric for the tape.  It sticks well and is very flexible without breaking.

Here is the kicker, the touch activation still works even when the tape is covered by a layer of dope, silkspan and even iron on plastic covering material.  A great way to hide your start switch within the finish itself.

https://www.adafruit.com/product/3960

Paul Emmerson
Spinning electrons in circles in Mississauga, Ontario, Canada DIY Control Line Timers - www.circuitflyer.com

Offline John Rist

  • 24 supporter
  • Trade Count: (0)
  • Admiral
  • *
  • Posts: 2944
Re: Climb_and_Dive Timer Update v1.2
« Reply #3 on: June 04, 2023, 03:22:44 PM »
"Plug in your board into your computer with a USB C data cable"

For the above step I understand the computer end of the USB.  Where is the USB port on the "board"  ?
John Rist
AMA 56277

Offline CircuitFlyer

  • Trade Count: (0)
  • Commander
  • ****
  • Posts: 301
    • www.circuitflyer.com
Re: Climb_and_Dive Timer Update v1.2
« Reply #4 on: June 04, 2023, 04:58:15 PM »
The big metal block on the top.  The plug goes in the open end.
Paul Emmerson
Spinning electrons in circles in Mississauga, Ontario, Canada DIY Control Line Timers - www.circuitflyer.com

Offline John Paris

  • 24 supporter
  • Trade Count: (0)
  • Captain
  • *
  • Posts: 729
Re: Climb_and_Dive Timer Update v1.2
« Reply #5 on: June 04, 2023, 05:55:24 PM »
Hi Paul,
I was able to update the timer without any issue.  Looking at the boost and brake option, the numbers run from 0-10 for the gain, so has the percentage of boost/brake changed based for each step number?  Could the same have been accomplished with larger gain numbers before?  I had not gotten past 5 with my limited testing.  Just trying to understand the impact of this change.  Any insight you could provide would be appreciated.
Regards,
John
John Paris
269

Offline John Rist

  • 24 supporter
  • Trade Count: (0)
  • Admiral
  • *
  • Posts: 2944
Re: Climb_and_Dive Timer Update v1.2
« Reply #6 on: June 04, 2023, 08:58:21 PM »
The big metal block on the top.  The plug goes in the open end.

Of course   n~  now that I look at my Climb_and_Dive  timer.  Thanks!   
John Rist
AMA 56277

Offline CircuitFlyer

  • Trade Count: (0)
  • Commander
  • ****
  • Posts: 301
    • www.circuitflyer.com
Re: Climb_and_Dive Timer Update v1.2
« Reply #7 on: June 05, 2023, 07:14:12 AM »
In the original software release the overall maximum boost/brake was a little too low.  I increased the maximum for this latest version.  The individual steps, 0 thru 10, also increased proportionately.  When upgrading to this version you may need to re-adjust the gain settings to your liking.
Paul Emmerson
Spinning electrons in circles in Mississauga, Ontario, Canada DIY Control Line Timers - www.circuitflyer.com

Offline CircuitFlyer

  • Trade Count: (0)
  • Commander
  • ****
  • Posts: 301
    • www.circuitflyer.com
Re: Climb_and_Dive Timer Update v1.2
« Reply #8 on: June 05, 2023, 09:21:55 AM »
John Rist - My bad.  Sorry, the instructions were a little muddy.  I've made some changes to the wording on the software page in the instructions to help clarify the whole update procedure.  Thanks for pointing it out.
Paul Emmerson
Spinning electrons in circles in Mississauga, Ontario, Canada DIY Control Line Timers - www.circuitflyer.com

Offline John Paris

  • 24 supporter
  • Trade Count: (0)
  • Captain
  • *
  • Posts: 729
Re: Climb_and_Dive Timer Update v1.2
« Reply #9 on: June 05, 2023, 10:12:20 AM »
In the original software release the overall maximum boost/brake was a little too low.  I increased the maximum for this latest version.  The individual steps, 0 thru 10, also increased proportionately.  When upgrading to this version you may need to re-adjust the gain settings to your liking.

Paul,
Appreciate the update.
Regards,
John
John Paris
269

Offline John Rist

  • 24 supporter
  • Trade Count: (0)
  • Admiral
  • *
  • Posts: 2944
Re: Climb_and_Dive Timer Update v1.2
« Reply #10 on: July 08, 2023, 10:38:01 AM »
Paul,

I am trying to up date to V1.2  When I plug the Climb & Dive timer to my PC via USB I get the files as shown in the attached .doc file   The XIAO-SENSE file does not show up.  It is mentioned in the boot-out.txt file.  ?????   ???
John Rist
AMA 56277

Offline CircuitFlyer

  • Trade Count: (0)
  • Commander
  • ****
  • Posts: 301
    • www.circuitflyer.com
Re: Climb_and_Dive Timer Update v1.2
« Reply #11 on: July 08, 2023, 04:21:00 PM »
John,

The list of files you see is the contents of the CIRCUITPY drive. That’s exactly what you want to see, you don’t need to see the XIAO-SENSE drive for this minor update.

To complete the update you will need to download the latest software package and unzip it. Inside the new software package you will see the newest file named code.py. You want to replace the older code.py file on your timer with the new version that you downloaded. It can be a little confusing as both files have the same name, just one is a newer version of the original. Drag and drop the new version onto the CIRCUITPY drive. Your computer will ask if you want to replace the old version, or keep both. Be sure to Replace, do not keep both.

Hope that helps

Just a helpful FYI - when the microcontroller is powered up it searches for a file named code.py and automatically runs the file. That is the reason why the timer program name must always be code.py
Paul Emmerson
Spinning electrons in circles in Mississauga, Ontario, Canada DIY Control Line Timers - www.circuitflyer.com

Offline John Rist

  • 24 supporter
  • Trade Count: (0)
  • Admiral
  • *
  • Posts: 2944
Re: Climb_and_Dive Timer Update v1.2
« Reply #12 on: July 08, 2023, 09:32:35 PM »
John,

The list of files you see is the contents of the CIRCUITPY drive. That’s exactly what you want to see, you don’t need to see the XIAO-SENSE drive for this minor update.

To complete the update you will need to download the latest software package and unzip it. Inside the new software package you will see the newest file named code.py. You want to replace the older code.py file on your timer with the new version that you downloaded. It can be a little confusing as both files have the same name, just one is a newer version of the original. Drag and drop the new version onto the CIRCUITPY drive. Your computer will ask if you want to replace the old version, or keep both. Be sure to Replace, do not keep both.

Hope that helps

Just a helpful FYI - when the microcontroller is powered up it searches for a file named code.py and automatically runs the file. That is the reason why the timer program name must always be code.py

OK it all makes since now. I will try the update tomorrow.  Thanks for the clarification.  I was looking at the wrong set of instructions.  #^   #^
John Rist
AMA 56277

Offline redsteve

  • Trade Count: (0)
  • New Pilot
  • *
  • Posts: 3
Re: Climb_and_Dive Timer Update v1.2
« Reply #13 on: July 16, 2023, 12:41:30 AM »
Question for Circuit Flyer I've made a few flights using the clime and dive timer ver. 1.2 Every function works well except at the end of flight time I'm not getting the short burst of speed to signal end of motor run. Is there something in setup that I missed ?

Offline CircuitFlyer

  • Trade Count: (0)
  • Commander
  • ****
  • Posts: 301
    • www.circuitflyer.com
Re: Climb_and_Dive Timer Update v1.2
« Reply #14 on: July 16, 2023, 07:13:40 AM »
The short burst of higher RPM should always be present.  Try a shorter flight time to see if it occurs.  Your battery voltage may be dropping off a little too much at the end of the flight and you loose the necessary head room.  I have an older battery that peters out at the end of a flight and the RPM increase is barely noticeable.
Paul Emmerson
Spinning electrons in circles in Mississauga, Ontario, Canada DIY Control Line Timers - www.circuitflyer.com

Offline TDM

  • Trade Count: (0)
  • Captain
  • *****
  • Posts: 844
Re: Climb_and_Dive Timer Update v1.2
« Reply #15 on: August 11, 2023, 11:13:20 AM »
Where can i get these timers from? They are not in stock at this time.
Each goal you meet is a moment of happiness
Happiness is the harmony between what you think and what you do. Mahatma Gandhi

Offline CircuitFlyer

  • Trade Count: (0)
  • Commander
  • ****
  • Posts: 301
    • www.circuitflyer.com
Re: Climb_and_Dive Timer Update v1.2
« Reply #16 on: August 11, 2023, 12:56:21 PM »
Sorry for the delay. I had a shipping hiccup on an order for some more circuit boards. I just received the new batch today. Give me a day or two and I’ll have some more back in stock.

Paul
Paul Emmerson
Spinning electrons in circles in Mississauga, Ontario, Canada DIY Control Line Timers - www.circuitflyer.com

Offline CircuitFlyer

  • Trade Count: (0)
  • Commander
  • ****
  • Posts: 301
    • www.circuitflyer.com
Re: Climb_and_Dive Timer Update v1.2
« Reply #17 on: August 12, 2023, 07:27:54 AM »
New batch in stock, ready to ship.
Paul Emmerson
Spinning electrons in circles in Mississauga, Ontario, Canada DIY Control Line Timers - www.circuitflyer.com

Offline TDM

  • Trade Count: (0)
  • Captain
  • *****
  • Posts: 844
Re: Climb_and_Dive Timer Update v1.2
« Reply #18 on: September 03, 2023, 06:53:50 PM »
Today for the first time I went flying using this timer. I was focused on two things, understanding and programming the timer and trimming the plane.
I do like the programing through the phone app, it is rather simple after you get a hang of it, each setting has a number assigned to it and all you do is select the number hit Send then the app prompts you to enter the new value then press Send again. Once you are done with all the settings impute 0 hit Send again follow by disconnect and you are done.
In the air the motor run has some 2-4-2 break and it works great up to 45 degrees elevation, I wish it continued to increase a little more between the 45 and overhead.
Overall I like this timer a lot and for the 40 dollar I think it is worth every penny. If you are a beginner flier and want a good balance between price and function this would be a great choice, perhaps even the top one.
Great job Circuit Flier thank you for the product, I appreciate your effort.
Traian
« Last Edit: September 04, 2023, 08:29:24 AM by TDM »
Each goal you meet is a moment of happiness
Happiness is the harmony between what you think and what you do. Mahatma Gandhi

Offline Mark wood

  • 22 supporter
  • Trade Count: (0)
  • Captain
  • *
  • Posts: 853
  • I'm here purely for the fun of it.
Re: Climb_and_Dive Timer Update v1.2
« Reply #19 on: September 03, 2023, 07:38:41 PM »
Well, I just gotta try one to see, so I just placed and order.
Life is good AMA 1488
Why do we fly? We are practicing, you might say, what it means to be alive...  -Richard Bach
“Physics is like sex: sure, it may give some practical results, but that’s not why we do it.” – Richard P. Feynman

Offline CircuitFlyer

  • Trade Count: (0)
  • Commander
  • ****
  • Posts: 301
    • www.circuitflyer.com
Re: Climb_and_Dive Timer Update v1.2
« Reply #20 on: September 04, 2023, 11:32:32 AM »
Thanks for the order Mark.  I just dropped in the mailbox, headed your way.

Traian - Thanks for the kudos.  I'm currently testing an overhead boost feature to add to the next code update.  Working good so far.  I like the increase in line tension if gives for the overhead eights.

Paul
Paul Emmerson
Spinning electrons in circles in Mississauga, Ontario, Canada DIY Control Line Timers - www.circuitflyer.com

Online Brent Williams

  • 24 supporter
  • Trade Count: (0)
  • Admiral
  • *
  • Posts: 1260
    • Fancher Handles - Presented by Brent Williams
Re: Climb_and_Dive Timer Update v1.2
« Reply #21 on: September 04, 2023, 03:11:06 PM »
Thanks for the order Mark.  I just dropped in the mailbox, headed your way.

Traian - Thanks for the kudos.  I'm currently testing an overhead boost feature to add to the next code update.  Working good so far.  I like the increase in line tension if gives for the overhead eights.

Paul

Excellent news!
Laser-cut, "Ted Fancher Precision-Pro" Hard Point Handle Kits are available again.  PM for info.
https://stunthanger.com/smf/brent-williams'-fancher-handles-and-cl-parts/ted-fancher's-precision-pro-handle-kit-by-brent-williams-information/

Offline TDM

  • Trade Count: (0)
  • Captain
  • *****
  • Posts: 844
Re: Climb_and_Dive Timer Update v1.2
« Reply #22 on: September 04, 2023, 06:42:42 PM »
This is another point of advantage to this system. It has flexible software and can be upgraded as improvements come by. The simple fact that you listen to impute and ideas speaks volumes.
Each goal you meet is a moment of happiness
Happiness is the harmony between what you think and what you do. Mahatma Gandhi

Offline Vitalis Pilkionis

  • Trade Count: (0)
  • Commander
  • ****
  • Posts: 145
Re: Climb_and_Dive Timer Update v1.2
« Reply #23 on: September 06, 2023, 06:06:39 AM »
If I understand correctly this timer lacks some hardware (sensors) in relation to well known timers from Fiorotti and Igor. It can not sense models position in space, it senses acceleration only. That's why it can be mounted sideways.  My suggestion - it would be very nice to have full featured PRO version of the timer without governor, but with missing sensors. Overall it's a great idea to make kind of an "open source" timer. Thanks.

Offline CircuitFlyer

  • Trade Count: (0)
  • Commander
  • ****
  • Posts: 301
    • www.circuitflyer.com
Re: Climb_and_Dive Timer Update v1.2
« Reply #24 on: September 06, 2023, 06:37:50 PM »
I can't say for sure as I have never owned or used a Fiorotti or Igor timer but I was under the impression that those only use 1 sensor, a 3-axis accelerometer, as well.  Thanks for the suggestion.  For some future testing I can assemble a timer using the Xiao Sense version.  That will at least add a 3-axis gyroscope to the mix.  As far as I know, a multi sensor control line timer that senses the models absolute position in space has not been developed yet.

At its core the Climb_and_Dive timer is an open source, do-it-yourself, electronics hobby project.  It's super easy to assemble and you end up with a great little control line timer.  The Fiorotti and Igor timers are the PRO versions.  The Climb_and_Dive timer is aimed at everyone else and those cases where a more economical set-up is preferred.  It will always be a work in progress so with some user input we will see if it can be further developed and refined.
Paul Emmerson
Spinning electrons in circles in Mississauga, Ontario, Canada DIY Control Line Timers - www.circuitflyer.com

Offline Vitalis Pilkionis

  • Trade Count: (0)
  • Commander
  • ****
  • Posts: 145
Re: Climb_and_Dive Timer Update v1.2
« Reply #25 on: September 06, 2023, 08:16:19 PM »
Thanks, Paul for the answer. I will definetely obtain your timer and let you know my experience with it.

Offline Mark wood

  • 22 supporter
  • Trade Count: (0)
  • Captain
  • *
  • Posts: 853
  • I'm here purely for the fun of it.
Re: Climb_and_Dive Timer Update v1.2
« Reply #26 on: September 06, 2023, 09:08:32 PM »
Paul.

Perhaps it would be good to explain what and how the climb and dive function works in your control "timer". As I understand it adds and subtracts power based on the relative pitch attitude. Bot Igors and the Fiorroti do this as well. These two timers also generate a gain based upon load factors derived from another axis which attempt to add thrust to compensate for increased drag due to maneuvering.

The simple onboard governing function is actually a good approach. Using the motor zero crossing is clever. Coupling the governor to a gain provides direct control of thrust.

My interest in Paul's timer is exploring coding in Python and to see how he approaches the problem in code. I have a control "timer" I have been working on as well but is not yet ready for prime time. There have been folks on here whom have seen it fly and I have posted a video on YouTube explaining the operation.
Life is good AMA 1488
Why do we fly? We are practicing, you might say, what it means to be alive...  -Richard Bach
“Physics is like sex: sure, it may give some practical results, but that’s not why we do it.” – Richard P. Feynman

Offline CircuitFlyer

  • Trade Count: (0)
  • Commander
  • ****
  • Posts: 301
    • www.circuitflyer.com
Re: Climb_and_Dive Timer Update v1.2
« Reply #27 on: September 07, 2023, 08:34:00 AM »
It may help to not think like a gyroscope - pitch, roll and yaw.  Think more like an accelerometer - (acceleration) force along an axis.  The active portion of the Climb_and_Dive timer currently uses the first derivative of the lateral axis.  The acceleration forces measured along the longitudinal axis is more difficult to utilise as the aircraft is constantly accelerating and decelerating as well as spending a lot of time in a semi free fall condition.

In more simple terms - when flying straight and level the onboard accelerometer reads the force due to centrifugal acceleration.  When passing overhead in the wingover at the top of the hemisphere the accelerometer will now read the force due to centrifugal acceleration minus the force due to gravity.  The timer calculates the 'rate of change' in the accelerometer readings and alters the motor RPM to suit.
Paul Emmerson
Spinning electrons in circles in Mississauga, Ontario, Canada DIY Control Line Timers - www.circuitflyer.com

Offline TDM

  • Trade Count: (0)
  • Captain
  • *****
  • Posts: 844
Re: Climb_and_Dive Timer Update v1.2
« Reply #28 on: September 10, 2023, 09:46:31 AM »
I have installed the second timer on the SAGINAW. This model has a BAD ASS 40A ESC with factory default setup.
Why is that  I don't get an arming 1sec low RPM bump run after I start the timer with a long 3sec touch.
Each goal you meet is a moment of happiness
Happiness is the harmony between what you think and what you do. Mahatma Gandhi

Offline John Rist

  • 24 supporter
  • Trade Count: (0)
  • Admiral
  • *
  • Posts: 2944
Re: Climb_and_Dive Timer Update v1.2
« Reply #29 on: September 10, 2023, 12:23:03 PM »
I have installed the second timer on the SAGINAW. This model has a BAD ASS 40A ESC with factory default setup.
Why is that  I don't get an arming 1sec low RPM bump run after I start the timer with a long 3sec touch.
Most ESC you can set the end points for OFF and full throttle.  If the Bad ASS ESC OFF set point is above the level of the 1 sec bump it will not see the bump.  Should be settable but I am not sure how you would do it with a Climb and dive timer.  I have a servo tester that I use to set the end points on my ESC.  The one I use is no longer available. But any one that is calibrated so that you can accurately set the OFF point of you ESC should work.

Looks looks this one might work.  https://www.ebay.com/itm/262502736878?hash=item3d1e61e3ee:g:mNgAAOSwMhVb9ncI&amdata=enc%3AAQAIAAAA4KdEDvg68A1lDB1Hqvpayufzc%2BqfP0oztad4f7yOwt49i%2FExbj9oZys2l3Apb9gdz4O1ZsanI3u82oXZfiRsm9lKEkafy0nx7T3sPe9sc6Z3NrlnxcvquCsYACnHkSYL3iUj8YT2JZCR8KrfI%2BnSAnl%2Bl2lCofnAJrMadgOIebBNOcdmCyezjxysVS2VxIbQtm%2F0IIauEvXKsHdJdJJkmbWPn7C%2FwoKB9aObPFe7nZv8VsYQXM%2BRHpqaQEpOvs%2FJcPjDvzMK8o1rVlRZUTjfN14I1qd%2B9hwx%2B3V1CBSspRjM%7Ctkp%3ABFBMzqithNBi

The range of the standard out put pulse that controlls a ESC 1 ms to 2 ms.  The scale on this one goes from 90 to 210,  I am sure the 90 is .9 ms and the 210 is 2.1 ms.  So it should do the job.  Any servo tester that has a calibrated read out (digital display) should work.  Anyone that is into electric power should have a servo tester.  They are cheep.
John Rist
AMA 56277

Offline TDM

  • Trade Count: (0)
  • Captain
  • *****
  • Posts: 844
Re: Climb_and_Dive Timer Update v1.2
« Reply #30 on: September 10, 2023, 01:21:17 PM »
Most ESC you can set the end points for OFF and full throttle.  If the Bad ASS ESC OFF set point is above the level of the 1 sec bump it will not see the bump.  Should be settable but I am not sure how you would do it with a Climb and dive timer.  I have a servo tester that I use to set the end points on my ESC.  The one I use is no longer available. But any one that is calibrated so that you can accurately set the OFF point of you ESC should work.

Looks looks this one might work.  https://www.ebay.com/itm/262502736878?hash=item3d1e61e3ee:g:mNgAAOSwMhVb9ncI&amdata=enc%3AAQAIAAAA4KdEDvg68A1lDB1Hqvpayufzc%2BqfP0oztad4f7yOwt49i%2FExbj9oZys2l3Apb9gdz4O1ZsanI3u82oXZfiRsm9lKEkafy0nx7T3sPe9sc6Z3NrlnxcvquCsYACnHkSYL3iUj8YT2JZCR8KrfI%2BnSAnl%2Bl2lCofnAJrMadgOIebBNOcdmCyezjxysVS2VxIbQtm%2F0IIauEvXKsHdJdJJkmbWPn7C%2FwoKB9aObPFe7nZv8VsYQXM%2BRHpqaQEpOvs%2FJcPjDvzMK8o1rVlRZUTjfN14I1qd%2B9hwx%2B3V1CBSspRjM%7Ctkp%3ABFBMzqithNBi

The range of the standard out put pulse that controlls a ESC 1 ms to 2 ms.  The scale on this one goes from 90 to 210,  I am sure the 90 is .9 ms and the 210 is 2.1 ms.  So it should do the job.  Any servo tester that has a calibrated read out (digital display) should work.  Anyone that is into electric power should have a servo tester.  They are cheep.

Thanks for the tip. I ordered a programming card for the ESC.
Each goal you meet is a moment of happiness
Happiness is the harmony between what you think and what you do. Mahatma Gandhi

Offline CircuitFlyer

  • Trade Count: (0)
  • Commander
  • ****
  • Posts: 301
    • www.circuitflyer.com
Re: Climb_and_Dive Timer Update v1.2
« Reply #31 on: September 10, 2023, 02:44:50 PM »
Throttle calibration usually helps. The procedure is in the instructions.   https://circuitflyer.com/Climb_and_Dive/docs/Power%20System%20Information.html
Paul Emmerson
Spinning electrons in circles in Mississauga, Ontario, Canada DIY Control Line Timers - www.circuitflyer.com


Advertise Here
 


Advertise Here