staroman wrote:Hi kataventos,
thats the result with the unchanged MTK version:
Jan
I get same thing when I unpowered my camera. It was 5v on vcam rather than 12v can you check your video voltage on camera-vcam and trans-vtx ?
staroman wrote:Hi kataventos,
thats the result with the unchanged MTK version:
Jan
kataventos wrote:OK here is a field test regarding my last changes to the code.
....
.....
Benzel wrote:Hi Kataventos,
Got most of the things working with your latest version and it is a lot faster!
But i have some trouble with the voltage messurment, I am messuring the 12 volt video voltage on Port 0, but all messurements will give me a value of 1023.
With the old rusduino software the voltage was correct.
Do you messure the voltage with the OSD or are you using the VBAT data form multiwii?
Code: Select all
#define DIVIDERRATIO 25 // R1/R2 of voltagePin.
carlonb wrote:kataventos wrote:OK here is a field test regarding my last changes to the code.
....
.....
Hi Kataventos,
I'm still waiting for minimosd clone board and I can't wait to test it.
Thanks for great job (thank also to modelci).
I saw your last video and all run well, but I've some detail I want discuss.
Speed: I saw very high (too much) speed related to what I can see in video looking at ground when copter moves.
Vario: I don't understand the black arrows and single/double/triple white arrow activation even if OSD show zero mt/sec. I think one arrow low vario, 2 arrows medium vario, 3 arrows very high vario rate.
All numeric info: Thats aren't left justified, always are jumping right/left if the number of digits changes.
Do you think it's possible do some corrections ?![]()
Anyway, as soon as I receive my minimosd I can partecipate to develop this awesome OSD![]()
Thanks and Bye
carlo
kataventos wrote:Modelci is working on Minim not mebut I´m sure we can implement same stuff.
1- Speed- It´s given by MWC and is average speed from GPS not the real drone speed ( I can try to use some sort of filter for thatI will take a look...)
2-Vario - the arrows ascending/descending are very sensitive. When you move "slowly" they can go to 3 white depending on how slow. when you see 3 black arrows you´r almost at 1m/sec then if you raise your speed you´l be seeing 2,3,4, etc m/secthat´s when you are going to start calculations (m/sec to km/h) and consequently making the necessary arrangements to buy faster motors
![]()
3- Numeric info... are you talking about GPS coordinates? I have explained that on the video post. (you can disable that on OSD config (NOT ON THE SOFTWARE on your googles)
carlonb wrote:kataventos wrote:Modelci is working on Minim not mebut I´m sure we can implement same stuff.
1- Speed- It´s given by MWC and is average speed from GPS not the real drone speed ( I can try to use some sort of filter for thatI will take a look...)
2-Vario - the arrows ascending/descending are very sensitive. When you move "slowly" they can go to 3 white depending on how slow. when you see 3 black arrows you´r almost at 1m/sec then if you raise your speed you´l be seeing 2,3,4, etc m/secthat´s when you are going to start calculations (m/sec to km/h) and consequently making the necessary arrangements to buy faster motors
![]()
3- Numeric info... are you talking about GPS coordinates? I have explained that on the video post. (you can disable that on OSD config (NOT ON THE SOFTWARE on your googles)
Thanks for reply,
Yes I know Modelci is working on this, you too.
1- Speed: Yes I know the speed is real speed calculated with GPS coordinates from MWii, I'm now using mobidrone OSD and speed in Km/h is perfect, in your video seems too hight.
2-OK
3- Numeric info: No, I'm talking about speed, the speed data is jumping left and right if the speed is one or two digits (8 km/h...12Km/h...9Km/h).
Carlo
carlonb wrote: Try to divide the speed from MWii by 27,8 (cm/sec ---> Km/h)
???
Carlo
kataventos wrote:Benzel wrote:Hi Kataventos,
Got most of the things working with your latest version and it is a lot faster!
But i have some trouble with the voltage messurment, I am messuring the 12 volt video voltage on Port 0, but all messurements will give me a value of 1023.
With the old rusduino software the voltage was correct.
Do you messure the voltage with the OSD or are you using the VBAT data form multiwii?
What version are you talking about, so I can take a look?
1-No, VBat is not used to display voltage.
2-For Main voltage you´l have to find your match, configure it on config.h:Code: Select all
#define DIVIDERRATIO 25 // R1/R2 of voltagePin.
For Cam voltage I need to look at the code, maybe separate them allowing to use different batts ex:.(1s or 2s for video depending on your VTX and 3s for main or whatever)
Benzel wrote:kataventos wrote:Benzel wrote:Hi Kataventos,
Got most of the things working with your latest version and it is a lot faster!
But i have some trouble with the voltage messurment, I am messuring the 12 volt video voltage on Port 0, but all messurements will give me a value of 1023.
With the old rusduino software the voltage was correct.
Do you messure the voltage with the OSD or are you using the VBAT data form multiwii?
What version are you talking about, so I can take a look?
1-No, VBat is not used to display voltage.
2-For Main voltage you´l have to find your match, configure it on config.h:Code: Select all
#define DIVIDERRATIO 25 // R1/R2 of voltagePin.
For Cam voltage I need to look at the code, maybe separate them allowing to use different batts ex:.(1s or 2s for video depending on your VTX and 3s for main or whatever)
Thanks for your reply,
I understand the Dividerratio setting to finetune the actual voltage, the problem is that port 0 is now always showing a value of 1023.
We are using Multiwii dev1240 on a modified minimosd, we rerouted the hardwarepins so that it's basicly the same as the origional Rusduino board.
On Port 0 we measure the video transmitter voltage, about 10-11 volt with the normal resistors in place, on the V9 Rusduino version this was working OK.
I looked at the differences between V9 and Modelci version but i am not a programmer.
Code: Select all
// Process AI
temperature=(analogRead(temperaturePin)*1.1)/10.23;
voltage=(analogRead(voltagePin)*1.1*DIVIDERRATIO)/102.3;
rssiADC = (analogRead(rssiPin)*1.1)/1023;
amperage = (analogRead(amperagePin)*1.1)/10.23;
///////////////////////////////////////////////
aa = analogRead(rssiPin)/4;
Code: Select all
const uint8_t voltagePin=0;
const uint8_t amperagePin=1;
const uint8_t temperaturePin=6; // Temperature pin 6 for original Rushduino Board
const uint8_t rssiPin=3;
const uint8_t rssiSample=30;
const uint8_t lowrssiAlarm=75; // This will make blink the Rssi if lower then this value
kataventos wrote:GPS speed now = to GUI values!
If you pay attention, when you are stopped with +- stable reception (tested with between 6 and 8 Sat´s inside my garage) the GUI show´s you values between 0 and 30km/h. the Rushduino now is equally wrong because we are stopped. I think that this is normal because I tested CRIUS GPS CN6 with Ucenter on my car and the speed starts to flow correct once you are really moving.
carlonb wrote:Strange that with copter stopped the gps reception change the coordinates, the coord must be stable, so the calculated speed=0.
In GUI and in my mobidrone OSD, if copter is stopped with 8 sats, the speed is stable=0 km/h.
kataventos wrote:So... an out of topic question what did I missed? 115200Baud 10hz for both... 0+1 output...do you have the same GPS as I? (CRIUS CN06 with EEPROM)
modelci wrote:I'm glad, developments continues with the highly assistances.
This is last and final for Rushduino board. Then only will continue for Minim-osd. Because, I need to empty place for new improvements in the flash.
http://osd-max7456-multiwii.googlecode.com/files/osd_max7456_multiwii_V1_2_alfa5.zip
copterrichie wrote:Hey, not trying to undercut the outstanding product here but I am very curious if this MiniOSD will work with the Fushduino firmware?
http://dx.com/p/minimosd-ardupilot-mega ... col-149351
Code: Select all
void displaySpeed(void)
{
if(!GPS_fix){
GPS_speed = 0;
}
//if(GPS_speed > speedMAX) speedMAX = GPS_speed;
itoa(GPS_speed,screenBuffer,10);
FindNull(); // find the NULL
if(unitSystem) GPS_speed = GPS_speed / 27.8; // 27.8 (cm/sec ---> Km/h)
screenBuffer[xx++]=speedUnitAdd[unitSystem];
screenBuffer[xx]=0; // Restore the NULL
MAX7456_WriteString(screenBuffer,speedPosition[videoSignalType][screenType]);
}
copterrichie wrote:Hey, not trying to undercut the outstanding product here but I am very curious if this MiniOSD will work with the Fushduino firmware?
http://dx.com/p/minimosd-ardupilot-mega ... col-149351
shikra wrote:copterrichie wrote:Hey, not trying to undercut the outstanding product here but I am very curious if this MiniOSD will work with the Fushduino firmware?
http://dx.com/p/minimosd-ardupilot-mega ... col-149351
I have one of those and can confirm that the recently amended version loads up and displays on the screen now. I haven't tested on a copter with Multiwii - but no reason it wouldn't work.
I bought one to develop my own OSD - but I will probably use Rushduino now its progressing again
Be aware that pins are not broken out onto the pcb - you can only read data via the serial port from multiwii.
With some fine soldering and some resistors, this could be done - so you can get other functions like bat/rssi
carlonb wrote:@ kataventos
I looked at your sketch rush_kv_01 and I saw this part of code displaying the GPS speed:Code: Select all
void displaySpeed(void)
{
if(!GPS_fix){
GPS_speed = 0;
}
//if(GPS_speed > speedMAX) speedMAX = GPS_speed;
itoa(GPS_speed,screenBuffer,10);
FindNull(); // find the NULL
if(unitSystem) GPS_speed = GPS_speed / 27.8; // 27.8 (cm/sec ---> Km/h)
screenBuffer[xx++]=speedUnitAdd[unitSystem];
screenBuffer[xx]=0; // Restore the NULL
MAX7456_WriteString(screenBuffer,speedPosition[videoSignalType][screenType]);
}
Seems you convert cm/sec--->Km/h dividing by 27.8 after asci conversion with itoa(....)
I think must be:
//if(GPS_speed > speedMAX) speedMAX = GPS_speed;
if(unitSystem) GPS_speed = GPS_speed / 27.8; // 27.8 (cm/sec ---> Km/h)
itoa(GPS_speed,screenBuffer,10);
FindNull(); // find the NULL
screenBuffer[xx++]=speedUnitAdd[unitSystem];
screenBuffer[xx]=0; // Restore the NULL
MAX7456_WriteString(screenBuffer,speedPosition[videoSignalType][screenType]);
Correct me if I'm wrong.
Bye
shikra wrote:I have one of those and can confirm that the recently amended version loads up and displays on the screen now. I haven't tested on a copter with Multiwii - but no reason it wouldn't work.
I bought one to develop my own OSD - but I will probably use Rushduino now its progressing again
copterrichie wrote: As for the RSSI and current, I would love to see these read by the MWC as it does now with the voltage.
kataventos wrote:.......
Yes, that´s what happens when you want to go for it in bad timebut not the only problem here.
The formula needs to be diferent because the number you have from MW is in cm, when you read in GUI 28 is actually 28cm/sec = 0.028km/h so I need to take a look into that again!
I think that we have to use before point and after point but I need some time.
.....
kataventos wrote:Hi to all,
Here is KV_1.0
http://code.google.com/p/rush-osd-development/downloads/detail?name=Rush_KV_1_0.zip&can=2&q=
If you find any bug, fix it![]()
1- Final implementation of Powermeter and Vbat;
2- Altitude and Vario debuged;
3- GPS_Speed debugged;
4- Statistics debugged;
5- New options on config.h
I promised my wife that when I got it all working I would sleep, so... all done.
Hope Rushduino users like it as much as I.
Cheers,
KV
carlonb wrote:
RITON B wrote:Hello mister kataventos
The last firm KV.1.0 seems to be OK thank you very much The only thing that is not OK is "when i armed the motors on the screen Disarmed don't change to armed and the timer stray to 0" why????
thank you for yur replay
RITON B
copterrichie wrote:You guys should get together on this project: http://www.rcgroups.com/forums/showthread.php?t=1776186
I believe everyone would benefit.
vpb wrote:It's standalone osd (with dedicated gps...), I still like the way rushduino gets data directly from multiwii here.
Dennis Frie on rcgroups also has a DIY head-tracker project with less than 30$ hardwares http://www.rcgroups.com/forums/showthread.php?t=1677559
RITON B wrote:Hello mister K
I have r1240 all is OK except no motors on and the timer
here it is 11 pm bye
RITON B
RITON B wrote:Hello mister K
I have r1240 all is OK except no motors on and the timer
RITON B
Code: Select all
#define STABLEMODE 1 // OK
#define BAROMODE 4 // OK
#define MAGMODE 8 // OK
//#define BOXCAMSTAB 16 // not used
//#define BOXCAMTRIG 256 // not used
#define ARMEDMODE 32 // OK
#define GPSHOMEMODE 64 // OK
#define GPSHOLDMODE 128 // OK
RITON B wrote:Hello mr K
I will try your modifications to morrow.
my board is 'AMOURDURISK' board (french board ) Amourdurisk is a member of"MIKROKOPTER.fr"
ITG 3200
BMA 180
BMP 085
HMC 58983
à demain.
RITON B
Code: Select all
#define STABLEMODE ((1 << 0)|(1 << 1)) // HORIZON or ANGLE
#define BAROMODE (1 << 2)
#define MAGMODE (1 << 3)
...
RITON B wrote:Hello Mr K
good news,ARMEDMODE at 20 = on the screen "ARMED" and the timer start.
Thank you
next challenge :the GPS
bye
RITON B
itain wrote:@kataventos
I suggest:Code: Select all
#define STABLEMODE ((1 << 0)|(1 << 1)) // HORIZON or ANGLE
#define BAROMODE (1 << 2)
#define MAGMODE (1 << 3)
...
1. it would show STABLE both for HORIZON and ANGLE modes (as there is no separate graphics).
2. Using (1 << XX) may be easier than calculating powers of 2.
Ultimately there should be a way to receive the correct bit assignment from MultiWii.
Code: Select all
/**********************************************************************************/
/* RUSH KV 1.1 Configurable parameters RUSH KV 1.1 */
/**********************************************************************************/
// ____________________________________________________________________General configuration________________________________________________________________________//
#define VideoSignalType_PAL
const char videoSignalType=1;
//#define VideoSignalType_NTSC
//const char videoSignalType=0;
/********************** Serial speed ************************/
#define SERIAL_SPEED 115200
/******************************************* Mode Active (you MUST define according your MWC options) *****************************/
#define STABLEMODE 1 // OK
#define BAROMODE 4 // OK
#define MAGMODE 8 // OK
//#define BOXCAMSTAB 16 // not used
#define ARMEDMODE 32 // OK
#define GPSHOMEMODE 64 // OK
#define GPSHOLDMODE 128 // OK
//#define BOXCAMTRIG 256 // not used
/********** Here you can define time out for Mag calibration and EEProm write (mostly useful for mag calibration) ***********/
#define CALIBRATION_DELAY 10
#define EEPROM_WRITE_DELAY 5
/*************************************** Voltage and Amperage ********************************************/
/* */
/**************** Voltage match multimeter (you can change this options to match your requirements) ********************/
#define DIVIDERRATIO 25 // Main voltagePin ratio
//#define VBAT // Uncomment to change from Analog Pin to MwVbat (must define it on MWcode)
#define EST_PMSum 2.6 /**** NOTE **** If you use hardware CURRENT sensor on OSD use (#define EST_PMSum 1) BEFORE ANY ADJUSTMENT OR CALIBRATION
this value is empirical and you can find "yours" after some flights using the same instructions as for VBAT adjustment
on Mwc (first you have to MWC fine tune your voltage (VBat)) ****/
//#define HARDSENSOR // Uncomment to change from MW_POWERMETER to Hard current sensor on analogue Pin (MW_POWERMETER is DEFAULT and must be defined on MWCode)
#define AMPDIVISION 3600 // DO NOT UNCOMMENT. If you use hardware current sensor define ( 3600 ) as division ratio
#define AMPERAGE_CAL 1.1 // Amperage calibration
#define AMPRERAGE_OFFSET 512 // Amperage = AMPRERAGE_OFFSET - analogRead * AMPERAGE_CAL / 10.23
/***************************** Climb rate adjust **********************************/
#define ESTCLIMB 60 // Here you can adjust Climb rate (60 is empirical value and it was the best I could find)
/********************************** Display Settings ************************/
#define DISPLAY_HORIZON_BR
#define DISPLAY_GPSPOSITION
//#define COORDINATES // Uncomment to display coordinates (use with display GPS ON, on OSD page 3)
#define WITHDECORATION
#define SHOWHEADING
#define SHOWBATLEVELEVOLUTION
/******************** For Sensors presence *********************/
#define ACCELEROMETER 1//0b00000001
#define BAROMETER 2//0b00000010
#define MAGNETOMETER 4//0b00000100
#define GPSSENSOR 8//0b00001000
//#define SONAR 16//0b00010000
/********************* Led output *******************************/
#define BST 7 // pin 7 for original Rushduino Board
#define BST_OFF digitalWrite(BST,LOW);
#define BST_ON digitalWrite(BST,HIGH);
/******************** Analog input defines ***********************/
const uint8_t voltagePin=0;
const uint8_t amperagePin=1;
const uint8_t rssiPin=3;
const uint8_t temperaturePin=6; // Temperature pin 6 for original Rushduino Board
const uint8_t rssiSample=30;
const uint8_t lowrssiAlarm=75; // This will make blink the Rssi if lower then this value
/*---------------------------------------------- End of configurable parameters ----------------------------------------------------*/
copterrichie wrote:vpb wrote:It's standalone osd (with dedicated gps...), I still like the way rushduino gets data directly from multiwii here.
Dennis Frie on rcgroups also has a DIY head-tracker project with less than 30$ hardwares http://www.rcgroups.com/forums/showthread.php?t=1677559
Every hear of DEFINE statements? Hmmm LOL
But both firmware versions would use the same hardware.