Cheerson CX-OF low cost optical flow sensor testing

It was 8 bit only for the axes with qual and time

1 Like

I have ordered a few of these and I’ll test them when they get in. From the comments I have read online they don’t seems to work.

1 Like

Here is another one :wink:
https://www.aliexpress.com/item/Camera-DIY-Optical-Flow-Module-UP-Flow-LC302-Sensor-Location-Measure-Optical-Flow-Chip-For-FPV/32968961948.html

Another One

2 Likes

@anbello, thanks for that. I’ve added this as a possible alternative on the wiki (it should appear in about 10min).

Another one (JJRC H62 Flow sensor) in Aliexpress, same as Banggood is selling but Cheaper.

Yep that’s the one I ordered from Banggood , it’s back order until Friday. I think the last one found by @anbello looks really good

@rmackay9 some inaccuracies in the wiki related to optical flow:

here FLOW_TYPE should be FLOW_ENABLE
here there is no instruction to set FLOW_TYPE = 4 (CXOF)
here there is no instruction to set FLOW_ENABLE = 1

[Edit]
I think it is too little to open an issue, or am I wrong?

UPIXELS UP-Flow Data Format

01 0xFE
02 0x0A
03 flow_x_integral low byte
04 flow_x_integral high byte
05 flow_y_integral low byte
06 flow_y_integral high byte
07 integration_timespan low byte
08 integration_timespan high byte
09 ground_distance low byte current not work, 0x03E7 in default.
10 ground_distance high byte current not work, 0x03E7 in default.
11 valid 0x00 or 0xF5
12 version
13 Xor Byte3~Byte12
14 0x55

2 Likes

Pretty close to Cheerson Driver serial packet description

byte0: header (0xFE)
byte1: reserved
byte2: x-motion high byte;
byte3: x-motion low byte;
byte4: y-motion high byte;
byte5: y-motion low byte;
byte6: t-motion
byte7: surface quality
byte8: footer (0xAA)

1 Like

Hi @anbello,

For the HereLink optical flow, the FLOW_TYPE needs to be set to “6”. in master (which will become Copter-3.7) we’ve renamed FLOW_ENABLE to FLOW_TYPE because we got to the point where we couldn’t automatically recognise the flow sensor being used anymore. So from 3.7 onwards the user will need to specify which sensor they have attached. Txs for reviewing the page!

EDIT: ah, wait… I see what you’re saying. This is the age old issue in which all parameters come from master instead of from the lastest stable version. This means that FLOW_ENABLE no longer appears in the parameter list. This is unfortunate… I’m not sure there’s much I can do about it actually… :-(.

1 Like

Thanks for this, it’s different enough that it will need a new driver though. I wonder if it’s worth adding support now that the HereFlow is available. In either case I think we would need to wait for Copter-3.7 because we would need the FLOW_TYPE parameter to be able to distinguish between the CX-OF and the UP-Flow…

… although it is so close to the CX-OF’s format that it might be possible to just extend the CX-OF’s driver…

1 Like

1.3*2CM FPV RC Drone Optical Flow Module data format
image

rate: 25hz

byte1: 0xFE
byte2: 0x04
byte3: Delta_X_L
byte4: Delta_X_H
byte5: Delta_Y_L
byte6: Delta_Y_H
byte7: checksum
byte8: Quality 0~100
byte9: 0xAA

1 Like

I ordered 3 of them so I hope we do get support…

1 Like

Here I see ground_distance but on the board I don’t see any range finder, maybe in the microcontroller there is a piece of code that do an estimation similar to that on Ardupilot Flowhold.

I think maybe they will add range finder onboard in future.

Wed%20May%2001%2013-39-16 Wed%20May%2001%2013-39-09 Wed%20May%2001%2013-38-26 Wed%20May%2001%2013-39-03 Wed%20May%2001%2013-39-32

Received my module " UPIXELS UP-FLOW" PCB is not the same as in the ad. Going to see whats coming out of the UART

1 Like

The module in the ad is their last version, need configuration before using. This one you get can output data directly.

1 Like

What do you mean it needs to be configured.

I asked them for the manual but they have not responded.

Yours don’t need, the ad version need. I’ll send a UPFLOW GUI tool here later for read data through FTDI.

1 Like