Image default
Tutorials

Cyclop+ firmware for Quanum Cyclops FPV goggles

Quanum Cyclop+ firmware modification

In this tutorial we will modify the Quanum Cyclops FPV goggles sold by HobbyKing. We will install the Cyclop+ custom firmware written by Dvonogen which can be found on his GitHub page.

The Quanum Cyclops is a low-budget FPV goggle with a build in 40 channel receiver and is compatible with race band.
By default it is not possible to manually select a channel but thanks to the brilliant work done by Dvonogen we can manually select channels with his modified Cyclop+ firmware.

We will also add a OLED display which will show the current channel, RSSI value and a battery monitor for the battery powering the goggles.
It is possible to only flash the Cyclop+ firmware and don’t add the OLED display but I would highly recommend to add it because the useful information it provides.
The modified Cyclop+ firmware will add the following features:

  • Manual scroll through all 40 channels
  • Frequency scanner with waveform
  • Options menu to change the settings of the OLED display
    • Battery alarm (currently not working yet)
    • Boot logo on/off
    • Flip the OLED screen
    • Show a battery meter for 2s, 3s and 9v batteries
    • Screensaver

The latest version at the time writing is 1.3 which can be found on Dvogonen’s GitHub page.

Hard and software needed for the mod

To flash the firmware to the receiver board of the Quanum Cyclops we need to have some tools.

The USBASP programmer is the device we need to flash the firmware. They come with a 10 pin wire but we only got 6 ICSP programming pins on the receiver board so that’s what the adapter is for. The pin headers aren’t needed and you could solder the needed wires to the board but to keep it nice, clean and easy to unplug I like to use pin headers. This also comes in use for any future upgrades.

We also need some software to flash Cyclop+.

AVRDUDESS is a GUI for a command line based flashing tool called AVRDUDES.
Zadig is needed to install the correct drivers on a Windows system to get the USBASP working correctly.

Preparing the goggles

WARNING: I AM NOT RESPONSIBLE FOR ANY DAMAGE DONE TO YOUR GOGGLES.
YOU SHOULD BE AWARE OF THE RISKS AND DOUBLE CHECK EVERY CONNECTION BEFORE YOU POWER UP THE GOGGLES!

To get to the receiver board we have to unscrew the 4 screws on the bottom of the goggles.

Open up the Quanum Cyclops
Unscrew the 4 screws in the corners on the bottom of the goggles.

Now we can open the case and take a look inside the goggles.

Opened up Quanum Cyclops
Here you see the Quanum Cyclops opened up. You can already see the LCD diplay and the receiver & PDB

Now we have to disconnect the power and video cables from the receiver board.
Note: Never try to flash firmware while the power and video cable are connected! Make sure all cables are disconnected from the board!

Receiver board quanum cyclops
Here you see the receiver and PDB of the Quanum Cyclops without any modification.

Soldering the pin headers to the receiver board

Pull the board out of the case and unscrew it from the sledge it sits on.
Once you’ve done that we will solder the ICSP pin headers to the board and the pin headers to connect the OLED display to.
See the next pictures for the positions of the headers.

All important pads on the Cyclops board
Here you see all the important pads we need for this mod.In the top left corner we will solder the pins for the USBASP programmer.
On top in the middle you see the pads for the OLED display. In the top right you see the 5 volt output we need for the OLED display.
In the middle of the board you’ll see a 3.3v output which we will need later on to make sure the USBASP is connected correctly.
ICSP and OLED pin header positions
Here you see all the pin headers soldered to the board and the functions of the pins.

Now all that is left is a little wire connecting the empty pin we just soldered on to the 5v output on the top right of the board.

5v wiring to new added pin headers
Wiring up the 5 volt VCC to the new added pin headers to power the OLED screen

When I was putting the goggles back together after I finished I accidentally broke of the pin headers of the OLED display.
It also ripped of the soldering pads so I wasn’t able to solder the pins back on in a solid way.
On the back of the board there is a SDA and SCL connection as well but the text on the board is swapped! That means SDA = SCL and SCL = SDA on the back of the board!

SDA & SCL wires on the back of the Cyclops board.
I screwed up with the pin headers connecting the OLED display so I had to find another way to connect it. More info soon!

Testing the USBASP and the 10 to 6 pin adapter

First you’ve got to make sure that the voltage output on the USBASP is 3.3 volts! My USBASP programmer has a little switch to switch between 3,3v and 5v.
Then we’ve got to make sure that the USBASP VCC output actually is connected to the VCC on the receiver board of the Cyclops.
If you connect the VCC to the wrong pin you will fry the receiver board of your Cyclops so we’re going to check both the USBASP and the adapter outputs.

The top left ICSP pin on the receiver board is the VCC pin. To verify that this is indeed the VCC pin we have to grab a multimeter and put it into ohm mode to measure the resistance.

Checking the VCC output of the USBASP
Verifying the VCC output of the Cyclops receiver board by connecting the 3.3v output and the VCC pin with the multimeter. If the multimeter gives back a number the pins are correct.
Checking the VCC output of the Quanum board
Verifying the VCC output of the USBASP programmer and the receiver board of the Cyclops.

After we verified the outputs of the board we’re going to verify the USBASP programmer and the adapter to make sure nothing is swapped.
We use the same method as before so keep your multimeter in ohm mode.

Plug in the USBASP adapter to the receiver board but do not connect it to your computer yet!
Take a close look at the USBASP programmer and the adapter to search for the VCC outputs.
If you’ve found the correct pins on the USBASP or adapter hold the other wire of the multimeter on the 3.3.v output on the receiver board we’ve used before.

If you get any feedback from the multimeter everything is wired up correctly. If the multimeter doesn’t give back a number of resistance than don’t proceed but find out first what goes wrong!

Checking the VCC output of the Quanum board
Verifying the VCC output of the USBASP programmer and the receiver board of the Cyclops.

Last but not least unplug the USBASP adapter from the receiver board and connect the USBASP to a USB port on your computer with the voltage output set to 3.3v.
Now measure the voltage output with a multimeter to make sure the output voltage is 3.3 volts.

Final check of the VCC output from the USBASP.
Verifying the VCC output of the USBASP to be 3.3 volts and on the correct port.

Installing the driver for the USBASP

The first thing we need to do before we can flash the Cyclops board is installing the driver for the USBASP programmer.
The easiest way to install the driver is to use the software program Zadig.
Download the latest version of Zadig from their website and open up the exe file once your download is finished.
Note: OSX and Linux users can use the USBASP straight ahead.

Connect the USBASP to an USB port. Sometimes Zadig automatically detects the USBASP device otherwise you have to go to options in the menu and click on “list all devices”.
You’ll notice that a list of devices is now selectable in the drop down menu on the main screen. Open the drop down menu and select the USBASP programmer from the list.

Now select the libusbK driver in the right column of the driver section. The left column is showing the driver currently installed.
Click the replace driver button and wait a couple of minutes for the drivers to install.

Zadig configuration for USBASP
1. Click on the options button and click “List All Devices”
2. Select the USBASP from the drop down menu
3. Select the libusbK driver
4. Install the driver by clicking the replace button.

Flashing the Cyclop+ firmware with AVRDUDESS

Once the driver is installed we have to download the firmware by Dvonogen from GitHub.
There are two way to flash the Cyclop+ firmware. The first way is to build the firmware yourself so you could edit code if you would like to and the second way is just flashing the firmware file pre build with AVRDUDESS. I will only discus the second and easiest method because I won’t edit anything in the code.
If you like to try the hard method please check Dvonogen’s GitHub for more details about building your own Cyclop+ firmware.

All we need from GitHub is the firmware file which is a *.hex file called cyclop_plus.hex.
You can find it on the main page of Dvonogen’s project on GitHub or right click and save as this link. 😉

Open the file with a text editor like Notepad and verify all line start with with a colon character ( : ) and make sure all lines look like this: 1001C0006C1680169416A816BC16D016E416F816EF.

Now connect  the 10 to 6 pin adapter to the receiver board of the Cyclops and make sure you connect VCC to the correct plug on the board (top left ICSP pin or see pictures above). Connect the adapter to the USBASP and connect it up to your computer.

Now open up AVRDUDESS so we can configure the tool to flash to Cyclops board.

First we have to select the USBASP programmer in the drop down menu at the top of the window. (it’s almost at the bottom of the menu)
Once you’ve selected the programmer we have to select the MCU which is an ATMega 328p. In the flash area we now open the cyclop_plus.hex file we downloaded earlier.
Now select Intel Hex in the flashing area in the format menu and we’re ready to execute the write command by clicking the go button next to format.

AVRDUDESS configuration for Cyclop firmware
1. Select the USBASP programmer
2. Select the ATmega 328p MCU
3. Select the cyclop_plus.hex firmware file
4. Select Intel Hex in the format menu
5. Click go to start writing the firmware to the Cyclops

Once you’ve clicked on the Go button a LED on the receiver board will light up, right next to the ICSP pins on the top left of the board.
Wait for this light to start blinking before disconnecting the USBASP. AVRDUDESS will tell you the firmware has flashed correctly before the LED starts blinking.

If everything went oke you now have the Quanum Cyclop+ firmware installed and we can start connecting back the LCD screen wire and the power cable to the receiver board. After plugging those back in all we have to do before testing is connecting the OLED display. Connect the cables to the pin headers we soldered on the board earlier.

Connecting OLED to receiver board
This is how to connect the OLED screen to the receiver board of the Cyclops. Left: 5v VCC 2nd from left: Ground 3rd from left: SDA Right: SCL
Connecting OLED board
This is how to connect the receiver to the OLED display. Left: Ground 2nd from left: 5v VCC 3rd from left: SCL Right: SDA

The OLED display should turn on and show a boot logo before it starts showing the information it is receiving from the goggles once you power up the goggles.
If the OLED display doesn’t light up you can still check if the firmware was installed correctly by single pressing the channel button of the goggle to see if it doesn’t start an automatic scan. If it doesn’t start scanning your probably good and something went wrong with connecting the OLED display. Check all the wiring and the soldering.

Using the Cyclop+ firmware

To get into the options menu to set up the OLED display, power off your goggles and press the white channel button while turning on the power again.
The option menu should show up where you can configure some options displaying on the OLED screen.
To scroll through the menu just press the channel button. To adjust the settings long press the channel button, release it and the option will change. Once you’re finished scroll to Exit and long press the channel button to boot up normally.
Note: The battery warning option isn’t functional yet and will be added with a future upgrade.

OLED options menu Cyclops firmware
Here you see the option menu to configure the OLED display. To enter this menu power off the goggles, hold the channel button and power up again.

To manually select a channel short press the channel button and it will jump one channel forward. If you double press the channel button you will jump a channel back.
To let the Cyclops automatically scan for a channel like it used to do press and hold the channel button for a second or two.
If you press the channel button for longer then two seconds a frequency scanner will show up, showing you a waveform with the signal strength on certain channels. This can be useful to verify the automatic channel scan chose the strongest signal.

Main screen Cyclops firmware
The main screen of the Cyclop+ firmware showing the current channel the receiver is listening to, how strong the signal is to the VTX and a battery indicator to keep an eye on the battery level of your goggles.
Quanum Cyclop+ firmware working
And that’s it!
The Quanum Cyclop+ firmware is succesfully running.

That’s it for now! I hope this tutorial was useful and you can enjoy from your improved Quanum Cyclop FPV goggles.

If you have any questions or comments leave a reply, send me an email or contact me on social media.

Related posts

30 comments

Awap 30th July 2016 at 23:31

Hi, all is working now fine. Very happy with this hack.
I reduced the 6 Vols of the board to 5.5 Volts by turning the little potmeter 1 mm clockwise. Since 6 Volts is the upper limit of the OLED screen, according my info.
Also I had to install the libusb-win32 (v1.2.6.0) driver, using Zadig, to get AVRDUDE working.

BIG thanks for Dvogonen for sharing his knowledge and time.
But also BIG thanks for your clear manual, this hack would be more nerve-wracking without it !

Reply
RadianceNL 31st July 2016 at 11:39

Thanks for your comment and your appreciation, that makes it worth to write these manuals. 🙂

My voltage regulator was already on 5.5 volts so I didn’t made any adjustments to it.
The libusb-win32 didn’t work for me, I had to use libusbK to get it to work.

I’ll add your information to the manual because it could be useful for others.
Thanks for your input!

Reply
Hill QBin 19th August 2016 at 05:39

Thanks for the work you and Dvonogen have done. I too had to use libusb-win32 (v1.2.6.0) to get Avrdudess to work. I kept getting an error saying “cannot start program properly (0x0007)” or something like it.

Reply
RadianceNL 19th August 2016 at 13:06

This might be caused by a corrupt or faulty installation of Microsoft Visual C++. More information about this issue can be found here: (copy/paste the full URL)
http://www.bitdefender.com/support/how-to-solve-error-message-“the-application-was-unable-to-start-correctly-(0x000007b)-click-ok-to-close-the-application”-1106.html

I hope this solves your issue. If not feel free to contact me. Good luck and thanks for your appreciation!

Reply
Brad 2nd September 2016 at 04:06

First thanks for the great guide. I got it all flashed and working. However it doesn’t seem to change channels. The frequency changes on the little display but not on the screen i seem to be locked into c1. I have an eachine racer 250 and was able to use it to scan through and connect and the OSD from the quad says voltage flight time and channel comes up as c1. If i use the Frequency scanner with waveform it looks like im broadcasting on every channel. But im not because i had to manually go thru each channel on the quad end to find what channel the reciver was on. Im confused

I can send pictures or video if you need to see it.

Reply
RadianceNL 2nd September 2016 at 07:34

That is weird indeed. I can’t think of any reason why this happens. Some pictures or a video could indeed clearify the problem. Which firmware version have you used? I used 1.3 in this tutorial but I recently saw Dvonogan has uploaded 1.4. If you’re already on 1.4 than it might be an idea to downgrade to 1.3 to see if the problem still exists otherwise you could try updating it to 1.4.

Another thing that comes to mind, have you reconnected everything correctly inside the goggles?

Reply
Brad 2nd September 2016 at 23:53

I downgraded to 1.3 and same issues. Here is a video. https://youtu.be/OXGJ3QnLZZY

Reply
RadianceNL 5th September 2016 at 11:18

Could it be possible that you’ve got interference with a wifi modem inside your house that uses 5ghz to broadcast the signal?

Reply
Brad 5th September 2016 at 14:40

Ill confirm the next time i get to the flying field. Thanks for the support.

Michael Hensen 9th September 2016 at 14:04

Thanks for the detailed information! Did mine and now finally I can see what channels I am on 🙂
Installed the buzzer too as I have had the quanum shutdown due to low power during flights!!!

Keep up the good work ..

Reply
RadianceNL 9th September 2016 at 17:14

Thanks for your reply.

I intend to add the buzzer myself as well and update the guide but first I have to obtain a buzzer. Would be a shame to have a mid air shutdown due low battery haha.

Reply
zander 14th September 2016 at 13:06

This is fantastic, just completed the update, your guide was very helpful !

Thankyou

Reply
RadianceNL 16th September 2016 at 19:53

Thanks for your reply and I’m glad my guide was helpful. Enjoy your upgraded Cyclops!

Reply
Victor 21st September 2016 at 04:47

I’ve just finished the hack! Thanks a million I am so happy with the result.
My voltage was 6v so I’ve regulated to exact 5v.
About the error when opening Avrdudess ( “cannot start program properly (0x0007)” or something like it.), I solve it following the instructions in it’s website, just extract the usb library.dll in the folder where is the .exe and rename it. After that Avrdudess open without errors and communicate pwrfectly with the programmer.
Thanks again!!

Reply
RadianceNL 10th October 2016 at 18:07

Thanks for your support! I’m glad you’re happy with the results just like I am!
It adds just that what was missing on the Cyclops imo.

Reply
Uncleshark 29th November 2016 at 20:26

Anyone have the original firmware??? My oled only work 1 in every 5 or 6 times and even when it does the receiver only finds a signal 1% of the time!!! (2 different transmitters used and verified working)
I would like to revert everything back to original and then step through each section again

Reply
RadianceNL 10th January 2017 at 19:17

Sorry for the late reply but I’ve been very busy lately.

I don’t have the original firmware but I bet Dvonogan, the writer of the modded firmware has it.

Reply
Tyson 6th December 2016 at 23:30

Hi Radiance,

I just have a quick question, what happens if you disconnect from AVRDUDESS before the LED starts blinking on the receiver board?? I got distracted last night while I was doing the flash and saw that it said “Flash Completed” so I just removed it but it wasn’t until after that I remembered that I had to wait for it to start blinking, now it seems that I have an unusable bit of equipment 🙁

Is there a way I can re-flash the receiver board again? I have read somewhere else that I might have to buy another USB programer to accomplish this, is this true or am I looking at having to buy a new set of goggles??

Regards Tyson.

Reply
RadianceNL 10th January 2017 at 19:16

Hey Tyson, sorry for the late reply but I’ve been very busy lately. I hope you have solved your problem already. As far as I know you should be able to reflash it without problems but I’d suggest if you didn’t already to ask Dvonogan, the writer of the firmware.

Reply
Clay 9th January 2017 at 20:20

I have tried to do this mod on my goggles a few different times now on 2 different PCs and it is not working. I never get the LED to come on on the receiver. Has anyone else had this issue?

Reply
RadianceNL 10th January 2017 at 19:16

Is everything wired up correctly?

Reply
Clay 10th January 2017 at 19:30

Checked and rechecked. Connected to the programmer as you have shown. OLED not connected yet. When I connect the programmer to the receiver the voltage drops to 2.4v has anyone else seen this?

Reply
RadianceNL 11th January 2017 at 07:53

I haven’t actually checked the voltage once connected the programmer but the voltage might be to low for the receiver to power up as the voltage should be 3.3v. Maybe your programmer is malfunctioning?

Reply
Clay 19th January 2017 at 19:54

I am wondering if that is the case. Maybe I will look at ordering a new programmer. Or possibly there is a drain on my receiver some how that is pulling the voltage down that far.

Tim Tbg 10th February 2017 at 17:40

have you solved this?

I seem to have the same problem, as soon as I plug in the programmer into USB the voltage regulators on both, programmer and receiverboard get hot instantly

when I tried programming it before i realized this the red led next to the ICSP only light up for a fraction of a second, the green one to the right side is really dim at all times

Wiring is correct, USBASP voltage was 3.4 V… 🙁

Reply
Tim Tbg 10th February 2017 at 20:33

well I don’t know how… but at some point it worked :’D

my next try was to unsolder the tiny voltage regulator on the back since i figured “already got 3.3V delivered by the USBASP, no need for this guy especially if it’s running hot”
but I screwed up and broke the surfacemount bastard… and having it removed didn’t solve the problem

then I researched the component and grabbed a specwise similar voltage regulator @ my local electronics shop (LD1117V33, although the SOT-223 version (LD1117S33) would be better since it would be a direct drop-in) and soldered it in place

everything seemed to work as before, so I gave it a try with the USBASP but no success…

then I removed the DC-DC-board in the bottom right corner, that didn’t help either, soldered it in again and tried like 10 times programming it

and suddenly it worked :’D

I guess the original Voltage regulator wasn’t really the problem… but now I got a bigger one, should run cooler 😛

I can’t give any reasonable advise other than try try try again ^^
if the regulator should fail, you can easily replace it

Reply
baumbaTz 24th January 2017 at 14:57

Interesting… i used your tutorial yesterday and everything went fine. Now i also ripped out the OLED pin headers by accident. Good thing that happened to you too…otherwise i would be crying right now. 😀

Reply
Mike 29th March 2017 at 00:33

I think this is a great mod if I could only get it working. So I’ve done the soldering, checked the resistances. When I run avrdudess I initially get the following return and a quick flash red led on the board.

cyclop_plus_v0106.hex: 20,054 / 32,768 Bytes (61.20%)
~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~

avrdude.exe: set SCK frequency to 1500000 Hz
avrdude.exe: warning: cannot set sck period. please check for usbasp firmware update.
avrdude.exe: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% -0.00s

avrdude.exe: Device signature = 0x0e8407
avrdude.exe: Expected signature for ATmega328P is 1E 95 0F
Double check chip, or use -F to override this check.

avrdude.exe done. Thank you.

Runs after that show:

avrdude.exe: set SCK frequency to 1500000 Hz
avrdude.exe: warning: cannot set sck period. please check for usbasp firmware update.
avrdude.exe: error: programm enable: target doesn’t answer. 1
avrdude.exe: initialization failed, rc=-1
Double check connections and try again, or use -F to override
this check.

avrdude.exe done. Thank you.

Anyone seen anything like that?

My USBasp AVR Programming Device is the one from Amazon.

https://www.amazon.com/gp/product/B00V42E8JC/ref=oh_aui_detailpage_o01_s00?ie=UTF8&psc=1

Thanks in advance!

Mike

Reply
Greg Betz 18th April 2017 at 04:37

All right I have been having issues with this and I finally have to call uncle. I thought my originally problem was bad firmware on my usbasp. I have since remedied that and am still having issues. avrdude never recognizes that I have connected the programmer to the main board. I have tried plugging the main board into the programmer then connecting the usb and a whole bunch of other ways. It does connect to a arduino when i plug that in so I know the programmer is fine. The only thing i can think of is I might have had the programmer jumper set to 5v instead of 3.3v at some point but I dont see any destroyed components or smell the dreaded fried electric smell. any suggestions?

Reply
Modifying a Quanum Cyclops FPV goggle - Hobby Tweaks 1st November 2017 at 21:40

[…] My tutorial how to modify the Quanum Cyclops is online! […]

Reply

Leave a Comment

* By using this form you agree with the storage and handling of your data by this website.

This site uses Akismet to reduce spam. Learn how your comment data is processed.

This website uses cookies to improve your experience. We'll assume you're ok with this, but you can opt-out if you wish. Accept Read More