Monday 13 September 2021

My Flysky i6 Battery Mod


 Hi there, this is how I power my Flysky i6 and I would like to share this with you. I am using a single 18650 battery cell:

1x Panasonic 3400mah 18650 Battery

I place it into this single cell 18650 battery holder:

1x 'DIY Battery Box Holder Case for 18650 Rechargeable Battery'

I solder onto the 18650 holder a JST connector, and I solder the other JST connector to the + (red wire) and - (black wire) battery terminal on the Flysky i6 battery bay (I do not need to open up the transmitter):


1pc Male Female JST connector

I also wanted to have a wire to power my external transmitter module (irangeX irx6) so I also soldered those between the 18650 holder wires and jst connector, i used heatshrink or tape to cover up and exposed wire.
 

I did not want to cut my Flysky transmitter to fit the battery, and I did not want wires hanging out everywhere. So I designed and 3D printed a battery bay cover and 18650 case for the Flysky i6 Transmitter. Printing is straight forward using standard PLA. I set the print to use support material for the battery bay cover, but the 18650 holder is just printed as is. I then glued the two parts together using super glue, put the JST connector through the  battery cover hole and plugged in. The cover slides on and off really easily and it looks nice and neat:


This mod means that I can use a single rechargeable battery instead of 4x disposable AA Alkaline batteries. It is more lightweight than before too.

I use the modified Flysky i6 firmware to set my Transmitter voltage alarm to 3.2v this helps to prevent the 18650 cell from going below its specified low voltage level. The battery still lasts for many many days without needing to be charged.

It also means I can use an external module to allow me to fly my tiny whoop quadcopter for practice. I like using the Flysky transmitter a lot more than the one which comes with the e010 quad.

On the left is my practice eachine e0101 next to my DIY betaflight fpv quad (omnibus F4/4in1 esc/runcam micro/3D printed canopy).

If you would like to have this battery mod hit me up. I will try to help out, but someone is selling on ebay my previous Flysky i6 battery cover for way more than it is worth and is not giving my design any credit, even removing my logo. They made over $150 from my hard work :(


Thanks for reading.

Thursday 9 September 2021

Flashing a Flying X8 FY-Q7-RX receiver to a Flysky ia10 receiver


 

Hi, I have been given a receiver from a 'flying Fy-X8' quadcopter. The quadcopter looks like this one:

https://www.google.com/search?q=flying+fy-x8&tbm=isch&ved=2ahUKEwjansnqgePyAhUMlBoKHZogBp0Q2-cCegQIABAA

I am thinking it is similar to Flysky Ia10b receiver?

FY-X8 receiver:

 



  Flysky ia10b receiver:


The FY-X8 receiver has no pin connection for ibus servo/sens.
However, looking at the pcb picture there are 2 extra 3-pin pcb pads - which might suggest they are the 'missing' ibus servo/sens connections?

Do you think it is possible to flash it with ia10b firmware? I have no ia10b to compare pcb traces, just internet photos.

Both use stm32 & a7105.

I think the fy-x8 receiver is interesting because it allows ardupilot telemetry natively, so I will try to make a backup first. It just does not bind to flysky i6.

SWD pinout of FY-Q7-RX receiver:

Connection to ST Link V2 Programmer guide here:
http://www.multirotorguide.com/guide/flysky-receivers-rssi-mod-alternative-firmware/

oh cool were in. I had to change to software system reset from hardware system reset in ST Link settings.


here's the original firmware:

do you thik it can be changed to pair with the flysky i6 somehow? I probably shouldn't try flashing with ia10b firmware until the original bin file has been looked at.
 
I think it only binds to the flying fy x8 transmitter, it looks like a flysky i6
 
Flying X8 Transmitter:
Flying X8 it has telemetry, the receiver directly connects to tx and rx on an APM board. There seems to be two versions of FY-Q7-RX receiver, one with six signal pins:

 

and one that I have with more pins similar to the ia10b:
interestingly, my receiver with more pins, it has a sticker over the old sticker like this:


The Flying X8 transmitter displays APM telemetry on screen:

I think qba667 made MavlinkToibus to allow APM telemetry through an ia6b receiver using an arduino pro micro between ia6b and APM:
https://www.rcgroups.com/forums/showthread.php?3020949-FlyPlus-firmware-for-FlySky-I6X
https://github.com/qba667/MAVLinkToIbus

Somebody here attempted to flash the transmitter with 10ch mod firmware and succeeded, but I am unsure if they backed up the original TX firmware firstly:
https://translate.google.com/translate?hl=en&sl=auto&tl=en&u=https%3A%2F%2Fladecadence.net%2Fblog%2Fflasheando-una-flying3d-fy-q7%2F

Somebody on rcgroups seems to think the receiver is also similar to fs-ia10b:
 

Also seems accroding to rcgroups comment that binding plug of receiver goes not to pin B/Vcc like normal receivers, but to port marked Tx:


So I shall try this also.

edit: tried binding plug via Tx but no fast led flashing on the rx, so false alarm on my version of rx. bind plug on B/Vcc as normal makes fast led flashing happen/bind mode.
Holding down button on rx before powering makes led flash three times repeatedly, so perhaps this is update mode. Same on ia10b perhaps.

Later in the Day...

more internet searches and it seems there are also 2 versions of flysky ia10 receiver, 1)ia10 and 2)ia10b:

FS-ia10 receiver:


ia10b receiver:

Seems the FY-Q7-RX is more similar to ia10 receiver, the ia10 even has the two side inputs same as FY-Q7-RX:

 I have not seen ia10 before, and have not found any images of the internal pcb yet.

Later in the day....

I managed to find photos of fs-ia10 receiver pcb:



 FY-Q7-RX and Flysky ia10 receiver have identical pcb:


Later in the Day.....

If anybody has ia10 receiver and can make fimware copy?
Or knows if ia10b firmware working with ia10?

interested to see what differences are between ia10 firmware and FY-Q7-RX

Later....

Nevermind I think I found the ia10.bin file on the internet:
https://www.dropbox.com/s/fyohbyzr3rievf5/iA10.bin?dl=0

I will try to flash it to my funky receiver soon.

update: So actually if ia10.bin will flash to FY-Q7-RX, and original FY_Q7_RX_Original_Firmware.bin will flash to ia10 receiver
There is then no reason why the flysky transmitter cannot be flashed with flying X8 tx firmware
Then all we have to do is connect Ardupilot APM board rx/tx to receiver and we get APM telemetry on Transmitter...See.

 Neat. So I can flash original ia10.bin firmware to FY-Q7-RX receiver:


 Solid LED after binding to Flysky i6 transmitter:

PPM 8 channels on receiver pin 1 working.

I guess it is now a Flysky FS-ia10 for no money.

I will test ibus also but I have to solder dupont connector to the pcb pads first.

Also, after I have done this I will try and flash FY-Q7-RX_original_Firmware.bin back to see if works.

I would like to somehow find a Flying X8 FY-Q7 transmitter firmware and flash that to the Flysky i6 Transmitter, then connect to my pixhawk and see what telemetry comes to the transmitter screen.

I will check if ia10.bin includes rssi and post again.

Edit: It does RSSI. Here is the firmware

Edit2: 14ch iBus working, pinout:

Update3: Mod_ia10 receiver goes into rebind mode if both tx & Rx are switched off. Automatically goes into fast flashing led bind mode, but that's not so bad, just hold bind button on Flysky i6 when switching on and it binds.

Update4: Intv (Receiver voltage) on Flysky i6 displays just 10% of connected battery, in my instance I powered with 1s 18650 @ 3.8v, but the flysky i6 Transmitter shows as 0.38v. Wonder what is happening there. No biggie, if I do voltage mod on the receiver perhaps it will show real voltage? 

FY-Q7 flashed with ia10 firmware. Notice Intv as 0.38v but the 18650 is actually 3.8v. I wonder if there is a PCB resistor difference somewhere I did not see, or is it just software voltage calculation difference?

To be continued..... 

Update:
I am starting to examine the binary file of the FY-Q7.bin firmware. I notice that although the .bin file is 32kb there are lots of FFFFFFFF compared to ia10.bin which is also 32kb. There are of course differences to the two .bin files. I would like to figure out how to bind with Flysky i6 transmitter so I can see if it has ibus function removed or other features, perhaps it is only PPM + PWM + Serial Telemetry? This would match the APM protocol from back in the day, ibus on Ardupilot was only implemented at V4.00 of Arducopter I believe, so it was not needed. The PWM channels would be to control the Gimbal I guess.

After looking at the binary file I noticed a difference in the FY-Q7 firmware at offset 0x204 that ia10.bin or ia6b.bin (or any other flysky firmware I seen) does not have. ia10 and ia6b are 03000100 but FY-Q7 is 02000100
By changing FY-Q7 firmware offset 0x204 to 03000100 i thought this might be the difference between binding and not binding but not successful.
Any thoughts?

I am able to flash to and from ia10.bin & FY-Q7.bin without problems.

 To be continued...