Commit 3533e55e authored by Oleg Dzhimiev's avatar Oleg Dzhimiev

lots of changes related to porting

parent 28517d8b
......@@ -28,9 +28,9 @@ function camogm_rec_start(){
function camogm_rec_stop(){
console.log("camogm: stop recording");
camogm_cmd("stop",false);
camogm_cmd("unmount",true);//replaced with sync
clearInterval(intvl_hdd_free_space);
clearInterval(intvl_camogm_status);
//camogm_cmd("unmount",true);//replaced with sync
setTimeout("clearInterval(intvl_hdd_free_space)",10000);
setTimeout("clearInterval(intvl_camogm_status)",10000);
intvl_hdd_free_space = false;
intvl_camogm_status = false;
green_the_bars();
......@@ -38,7 +38,9 @@ function camogm_rec_stop(){
function camogm_cmd(cmd,async,callback) {
var url = "eyesis4pi_control.php?"+cmd+"&master_ip="+master_ip+"&n="+n+"&rec_delay="+camogm_rec_delay;
var rq_str = "rq="+get_unique_rq_str();
var url = "eyesis4pi_control.php?"+cmd+"&"+rq_str+"&rec_delay="+camogm_rec_delay;
$.ajax({
url: url,
......@@ -55,10 +57,28 @@ function camogm_create_table(){
var table_html = "";
if (camogm_en) {
table_html = "<tr>\n\t<td></td>\n\t<td align='center'>SSD free space</td>\n<td>&nbsp;&nbsp;Buffer (important when recording)</td></tr>";
table_html = "<tr>\n\t<td align='center'>IP</td>\n\t<td align='center'>SSD free space</td>\n<td>channel</td><td>&nbsp;&nbsp;Buffer (important when recording)</td></tr>";
var unique = get_unique_cams();
var j = 0;
for (var i=0;i<cams.length;i++) {
table_html += "<tr>\n\t<td>channel "+(i+1)+"</td><td id='cam"+i+"_hdd' align='right'></td><td><div id='buffer"+i+"_sum' class='buffer'><div id='buffer"+i+"' style='width:200px;' class='buffer_free'>free</div></div></td></tr>";
if (unique.indexOf(cams[i])!=-1){
tmpstr = cams[i].ip;
hddid = "cam"+j+"_hdd";
j++;
}else{
tmpstr = "";
hddid = "";
}
table_html += "<tr>\n\t\
<td>"+tmpstr+"</td>\
<td id='"+hddid+"' align='right'></td>\
<td align='center'>"+(i+1)+"</td>\
<td><div id='buffer"+i+"_sum' class='buffer'><div id='buffer"+i+"' style='width:200px;' class='buffer_free'>free</div></div></td>\
</tr>";
}
}
......@@ -74,8 +94,8 @@ function camogm_get_hdd_free_space(mount_en){
// }else{
// camogm_cmd("get_hdd_space&mount_point=/var/html/CF",true,camogm_parse_hdd_free_space);
// }
camogm_cmd("get_hdd_space&mount_point=/var/html/CF",true,camogm_parse_hdd_free_space);
camogm_cmd("unmount",true);
camogm_cmd("get_hdd_space&mount_point=/mnt/sda1",true,camogm_parse_hdd_free_space);
//camogm_cmd("unmount",true);
}
function camogm_parse_hdd_free_space(data){
......@@ -83,24 +103,27 @@ function camogm_parse_hdd_free_space(data){
var end = " KB";
var random_color = "rgba("+Math.floor(Math.random()*128)+","+Math.floor(Math.random()*128)+","+Math.floor(Math.random()*128)+",1)";
for (var i=0;i<n;i++) {
raw_data = +$(data).find('cam'+(i+1)).find('hdd_free_space').text();
end = " KB";
var i=0;
$(data).find("hdd_free_space").each(function(){
raw_data = +$(this).text();
end = " KB";
for (var j=0;j<3;j++) {
raw_data = Math.round(10*raw_data/1024)/10;
if (j==1) end = " MB";
if (j==2) end = " GB";
//IGNORE!
//emergency stop
if ((j==1)&&(raw_data<128)) {
status_message(false,"SSD: low free space");
camogm_rec_stop();
}
// if ((j==1)&&(raw_data<128)) {
// status_message(false,"SSD: low free space");
// camogm_rec_stop();
// }
if (raw_data<1024) break;
}
$("#cam"+(i+1)+"_hdd").html("<b style='color:"+random_color+";'>"+raw_data+end+"</b>");
}
$("#cam"+(i)+"_hdd").html("<b style='color:"+random_color+";'>"+raw_data+end+"</b>");
i++;
});
}
function camogm_status(async){
......@@ -112,26 +135,23 @@ function camogm_parse_status(data){
var buf_used;
var buf_sum;
var i=0;
$(data).find('camogm_state').each(function(){
buf_free = +$(this).find("sensor_port_0").find('buffer_free').text();
buf_used = +$(this).find("sensor_port_0").find('buffer_free').text();
buf_sum = buf_free+buf_used;
//ignore
//$("#buffer"+i).css({width:(Math.round(buf_free/buf_sum*$("#buffer"+i+"_sum").width()))+"px"});
i++;
});
//$(data).find('cam')
var state = "running";
$(data).find('camogm_state').each(function(){
tmp_state = $(this).find('state').text();
if (tmp_state!='"running"') state = tmp_state;
});
for (var i=0;i<cams.length;i++) {
buf_free = +$(data).find('cam'+(i+1)).find('camogm_state').find('buffer_free').text();
buf_used = +$(data).find('cam'+(i+1)).find('camogm_state').find('buffer_used').text();
buf_sum = buf_free+buf_used;
$("#buffer"+(i+1)).css({width:(Math.round(buf_free/buf_sum*$("#buffer"+(i+1)+"_sum").width()))+"px"});
}
var state = "";
for (var i=0;i<n;i++) {
state = $(data).find('cam'+(i+1)).find('camogm_state').find('state').text();
if (state!='"running"') break;
state = "running";
}
if (camogm_en) {
//status_update(state);
$("#status").html(state);
......@@ -156,10 +176,9 @@ function camogm_parse_status(data){
function camogm_parse_state(data){
var tmp;
for (var i=0;i<n;i++) {
tmp = $(data).find('cam'+(i+1)).find('camogm_state').text();
if (tmp=="off") break;
}
$(data).find("camogm_state").each(function(){
if ($(this).text()=="off") tmp = $(this).text();
});
if (tmp!="off") {
camogm_create_table();
......@@ -170,12 +189,11 @@ function camogm_parse_state(data){
}else{
camogm_launch(true);
}
}
function green_the_bars() {
for (var i=0;i<n;i++) {
$("#buffer"+(i+1)).css({width:$("#buffer"+(i+1)+"_sum").width()+"px"});
for (var i=0;i<cams.length;i++) {
$("#buffer"+i).css({width:$("#buffer"+i+"_sum").width()+"px"});
}
}
......@@ -183,7 +201,7 @@ function camogm_launch_response(){
console.log("camogm launch response");
clearInterval(intvl_status);
status_message(false,"camogm launched");
camogm_cmd("mount",false);
//camogm_cmd("mount",false);
camogm_status(true);
green_the_bars();
camogm_get_hdd_free_space(true);
......
......@@ -18,7 +18,10 @@ var np = 10;
var mask = "0x1ff";
var camogm_en = true;
var imu_logger_en = true;
//var imu_logger_en = true;
var imu_logger_en = false;
var eyesis4pi_en = true;
var triclops_en = false;
var phg21_en = false;
......@@ -35,20 +38,20 @@ var pc_gps_imu_device_name = "/dev/sda1";
var camogm_rec_delay = 5;
var cams = [
{"ip":"192.168.0.161","port":2326,"channel":3,"master":0},
{"ip":"192.168.0.161","port":2325,"channel":2,"master":0},
{"ip":"192.168.0.161","port":2323,"channel":0,"master":0},
{"ip":"192.168.0.161","port":2324,"channel":1,"master":0},
{"ip":"192.168.0.162","port":2326,"channel":3,"master":0},
{"ip":"192.168.0.162","port":2325,"channel":2,"master":0},
{"ip":"192.168.0.162","port":2323,"channel":0,"master":0},
{"ip":"192.168.0.162","port":2324,"channel":1,"master":0},
{"ip":"192.168.0.163","port":2325,"channel":2,"master":1},
{"ip":"192.168.0.163","port":2326,"channel":3,"master":0}
{"ip":"192.168.0.161","port":2326,"channel":3,"master":0,"logger":0},
{"ip":"192.168.0.161","port":2325,"channel":2,"master":0,"logger":0},
{"ip":"192.168.0.161","port":2323,"channel":0,"master":0,"logger":1},
{"ip":"192.168.0.161","port":2324,"channel":1,"master":0,"logger":0},
{"ip":"192.168.0.162","port":2326,"channel":3,"master":0,"logger":0},
{"ip":"192.168.0.162","port":2325,"channel":2,"master":0,"logger":0},
{"ip":"192.168.0.162","port":2323,"channel":0,"master":0,"logger":0},
{"ip":"192.168.0.162","port":2324,"channel":1,"master":0,"logger":0},
{"ip":"192.168.0.163","port":2325,"channel":2,"master":1,"logger":0},
{"ip":"192.168.0.163","port":2326,"channel":3,"master":0,"logger":0}
];
function get_master_index(){
for (var i=0;i<cam.length;i++){
for (var i=0;i<cams.length;i++){
if (cams[i].master==1){
return i;
}
......@@ -97,7 +100,7 @@ function init(){
//get the mask - number of sensors on each subcamera
parseURL();
////parseURL();
//getSettings('settings.xml','pars');
getSettings(settings_file,'all');
......@@ -106,19 +109,19 @@ function init(){
else tab1_init("pc");
select_tab(1);
rewriteURL();
////rewriteURL();
get_free_space("/data/footage");
tab3_init();
console.log("previews_init()");
previews_init();
init_temperatures_table();
//init_temperatures_table();
white_balance_sliders_init();
//apply parameters
read_temperatures();
if (!disable_intervals) intvl_temperatures = setInterval("read_temperatures()",60000);
if (!disable_intervals) intvl_histograms = setInterval("refresh_histograms()",3000);
//read_temperatures();
//if (!disable_intervals) intvl_temperatures = setInterval("read_temperatures()",60000);
//if (!disable_intervals) intvl_histograms = setInterval("refresh_histograms()",3000);
refresh_images();
......@@ -129,7 +132,7 @@ function init(){
camogm_cmd("run_status",false,camogm_parse_state);
}
//master_ip = $("#address_field1").val().substr(-3,3);
var tmp = cams[get_master_index()];
var tmp = cams[get_master_index()].ip;
master_ip = tmp.substr(-3,3);
for (var i=0;i<cams.length;i++) {
......@@ -166,13 +169,13 @@ function init(){
//setTimeout("refresh_images()",1000);
//update_cf_index();
master_ip_change_init();
//master_ip_change_init();
$("#single_shots_div").attr("href","single.html?ip="+master_ip+"&n="+n+"&mode=5"+"&period="+($("#input_trigger_period").val()*96000));
$("#single_shots_div").attr("href","single.html?ip="+master_ip+"&n="+n+"&mode=5"+"&period="+($("#input_trigger_period").val()*100000));
$("#system_tests_div").attr("href","tests.html?master_ip="+master_ip+"&n="+n);
resync();
//resync();
}
function status_update(status) {
......@@ -334,6 +337,30 @@ function get_rq_str(){
return rq_str;
}
function get_unique_rq_str(){
res_full = get_unique_cams();
rq_str = "";
for(var i=0;i<res_full.length;i++){
if (i!=0){
rq_str += ",";
}
rq_str += res_full[i].ip+":"+res_full[i].port+":"+res_full[i].channel+":"+res_full[i].master;
}
return rq_str;
}
function get_unique_cams(){
res = [];
res_full = [];
for(var i=0;i<cams.length;i++){
if (res.indexOf(cams[i].ip)==-1) {
res.push(cams[i].ip);
res_full.push(cams[i]);
}
}
return res_full;
}
function settings_activate() {
if (!$("#settings").is(":visible")) {
$("#settings").css({top:'50px',left:'10px','z-index':3}).fadeToggle(300,function(){
......@@ -433,7 +460,7 @@ function set_quality(direction){
}
function set_trigger_period(async,callback) {
set_parameter(master_ip,"TRIG_PERIOD", +$("#input_trigger_period").val()*96000,async,callback);
set_parameter(master_ip,"TRIG_PERIOD", +$("#input_trigger_period").val()*100000,async,callback);
send_cmd('set_period');
}
function set_skip_frames_mask(async,callback){set_parameter(master_ip,"SET_SKIP", $("#input_skip_frames").val(),async,callback);}
......@@ -501,7 +528,7 @@ function stop(){
function set_parameter(ip,par,val,async,callback){
//console.log("n is "+n);
var url = "eyesis4pi_control.php?set_parameter&master_ip="+ip+"&n="+n+"&pname="+par+"&pvalue="+val;
var url = "eyesis4pi_control.php?set_parameter&rq="+get_rq_str()+"&pname="+par+"&pvalue="+val;
$.ajax({
url: url,
......@@ -514,7 +541,7 @@ function set_parameter(ip,par,val,async,callback){
}
function get_parameter(ip,par){
var url = "eyesis4pi_control.php?get_parameter&master_ip="+ip+"&n="+n+"&pname="+par;
var url = "eyesis4pi_control.php?get_parameter&rq="+get_rq_str()+"&pname="+par;
$.ajax({
url: url,
......@@ -563,7 +590,7 @@ function refresh_images_eyesis(){
var W = 2592;
var H = 1944;
var cnv = document.getElementById("cam_"+this.index+"_canvas");
var cnv = document.getElementById("cam"+this.index+"_canvas");
var cContext = cnv.getContext('2d');
cnv.setAttribute('width',h);cnv.setAttribute('height',3*w);
cContext.rotate(90*Math.PI/180);
......@@ -758,7 +785,7 @@ function set_gains(color) {
function start_gps_imu_log(){
//control stop
$.ajax({url:"logger_manager.php?ip=192.168.0."+master_ip+"&cmd=stop",type: "GET",async: false});
$.ajax({url:"logger_manager.php?ip="+master_ip+"&cmd=stop",type: "GET",async: false});
//control unmount
//cf_unmount();
//mount
......@@ -771,7 +798,7 @@ function start_gps_imu_log(){
//new start
var d = new Date();
var gpsimu_log_filename = "/var/html/CF/"+d.getTime()+".log";
var gpsimu_log_filename = "/mnt/sda1/"+d.getTime()+".log";
var gpsimu_log_index = 1;
var gpsimu_log_records = 10000000;
$.ajax({url:"logger_manager.php?ip=192.168.0."+master_ip+"&cmd=start&file="+gpsimu_log_filename+"&index="+gpsimu_log_index+"&n="+gpsimu_log_records,type: "GET",async: false});
......@@ -781,7 +808,7 @@ function start_gps_imu_log(){
function stop_gps_imu_log(){
//stop
$.ajax({url:"logger_manager.php?ip=192.168.0."+master_ip+"&cmd=stop",type: "GET",async: false});
$.ajax({url:"logger_manager.php?ip="+cams[0].ip+"&cmd=stop",type: "GET",async: false});
//unmount
//$.ajax({url:"logger_manager.php?ip=192.168.0."+master_ip+"&cmd=umount",type: "GET",async: false});
console.log("logger stopped");
......@@ -790,7 +817,7 @@ function stop_gps_imu_log(){
function free_space_gps_imu_log(){
console.log("free_space_gps_imu_log()");
//cf_mount();
$.ajax({url:"logger_manager.php?ip=192.168.0."+master_ip+"&cmd=free_space&mountpoint=/var/html/CF",type: "GET",async: false, success: function(data){parse_free_space(data);}});
$.ajax({url:"logger_manager.php?ip="+cams[0].ip+"&cmd=free_space&mountpoint=/mnt/sda1",type: "GET",async: false, success: function(data){parse_free_space(data);}});
cf_unmount();
}
......@@ -812,9 +839,9 @@ function parse_free_space(data){
function cf_mount(){
var device = "";
if (camogm_en) device = "/dev/hda1";
if (camogm_en) device = "/dev/sda1";
else device = $("#gpsimu_device_name").val();
$.ajax({url:"logger_manager.php?ip=192.168.0."+master_ip+"&cmd=mount&device="+device,type: "GET",async: false});
$.ajax({url:"logger_manager.php?ip="+master_ip+"&cmd=mount&device="+device,type: "GET",async: false});
}
function cf_unmount(){
......@@ -851,7 +878,7 @@ function cf_status_blink(msg){
function download_logs(){
$.ajax({
url:"logger_manager.php?ip=192.168.0."+master_ip+"&cmd=download&destination="+$("#footage_path").val()+"/"+$("#footage_subfolder").val(),
url:"logger_manager.php?ip="+cams[0].ip+"&cmd=download&destination="+$("#footage_path").val()+"/"+$("#footage_subfolder").val(),
type: "GET",
async: true
}).done(function(){
......@@ -870,7 +897,7 @@ function clean_cf_card(){
function cf_clean(){
$.ajax({
url:"logger_manager.php?ip=192.168.0."+master_ip+"&cmd=clean&mountpoint=/var/html/CF",
url:"logger_manager.php?ip="+cams[0].ip+"&cmd=clean&mountpoint=/mnt/sda1",
type: "GET",
async: true
}).done(function(){
......@@ -882,7 +909,7 @@ function cf_clean(){
function update_log_name(){
console.log("update_log_name()");
var logname = "/var/html/CF/"+$('#footage_subfolder').val()+".log";
var logname = "/mnt/sda1/"+$('#footage_subfolder').val()+".log";
$('#gpsimu_log_filename').val(logname);
//update_cf_index();
}
......@@ -893,7 +920,7 @@ function update_cf_index(){
//cf_mount();
$.ajax({
url:"logger_manager.php?ip=192.168.0."+master_ip+"&cmd=scandir&mountpoint=/var/html/CF",
url:"logger_manager.php?ip=192.168.0."+master_ip+"&cmd=scandir&mountpoint=/mnt/sda1",
type: "GET",
dataType: "xml",
complete: function(response){udpate_index(response.responseXML);},
......
This diff is collapsed.
......@@ -82,7 +82,7 @@ if (!$socket) {
if ($cmd=="stop") {
system("killall -9 recorder.php");
$ci = $interval*96000;
$ci = $interval*100000;
$fp = fopen("http://$master_ip/camogmgui/camogm_interface.php?sensor_port=$master_channel&cmd=set_parameter&pname=TRIG_PERIOD&pvalue=".($ci+1), 'r');
$fp = fopen("http://$master_ip/camogmgui/camogm_interface.php?sensor_port=$master_channel&cmd=set_parameter&pname=TRIG_PERIOD&pvalue=".($ci), 'r');
......
......@@ -53,7 +53,7 @@ input{
}
#previews {
width:1375;
width:1545;
height:730;
background:rgba(220,220,220,0.95);
/*color: white;*/
......
......@@ -82,7 +82,7 @@
<!--JP4/JPEG Modes -->
<tr>
<td>Switch format to</td>
<td><button id="btn_jpeg" onclick="set_color_mode(1)" >JPEG</button><button id="btn_jp4" onclick="set_color_mode(5)">JP4</button></td>
<td><button id="btn_jpeg" onclick="set_color_mode(0)" >JPEG</button><button id="btn_jp4" onclick="set_color_mode(5)">JP4</button></td>
</tr>
<!--JP4/JPEG Modes -->
<tr>
......@@ -129,11 +129,13 @@
<td align="center"><input type="checkbox" id="chk_trigger_period" class="apply_checkboxes"></td>
</tr>
<!--Trigger period - 1/FPS-->
<!--
<tr>
<td><div class="fixed_height" >Skip Frames Mask, <span style="font-size:0.7em">(hex - 0x1ff)</span></div></td>
<td><div class="fixed_height" ><input type="text" id="input_skip_frames" style="width:80px;" value="0x1ff" class="settings_pars" ></div></td>
<td align="center"><input type="checkbox" id="chk_skip_frames" class="apply_checkboxes"></td>
</tr>
-->
<!--HDR second exposure setting-->
<tr>
<td><div class="fixed_height" >HDRVexpos, <span style="font-size:0.7em">(hex - 0x40000)</span></div></td>
......
......@@ -44,7 +44,7 @@ function restore_settings(text,which){
$(".settings_paths").each(function(){
if ($(this).attr("type")=="text") $(this).val(data.find($(this).attr('id')).text());
});
update_cf_index();
if (imu_logger_en) update_cf_index();
}
if (restore_pars_en) {
......
<?xml version="1.0" encoding="UTF-8"?>
<Document>
<master_ip>221</master_ip>
<master_ip>163</master_ip>
<rec_mode>camogm</rec_mode>
<footage_path>/data/footage</footage_path>
<footage_subfolder>test</footage_subfolder>
<footage_limit>3000</footage_limit>
<gpsimu_device_name>/dev/hda1</gpsimu_device_name>
<box_force_jp4>checked</box_force_jp4>
<input_quality>97</input_quality>
<input_quality>98</input_quality>
<input_trigger_period>1000</input_trigger_period>
<input_skip_frames>0x1ff</input_skip_frames>
<input_hdrvexpos>0x36000</input_hdrvexpos>
<input_autoexp_max>1</input_autoexp_max>
<input_autoexp_lvl>200</input_autoexp_lvl>
<input_autoexp_fracpix>90.0</input_autoexp_fracpix>
<input_autoexp_max>40</input_autoexp_max>
<input_autoexp_lvl>220</input_autoexp_lvl>
<input_autoexp_fracpix>90</input_autoexp_fracpix>
<input_autoexp_frames_ahead>1</input_autoexp_frames_ahead>
</Document>
\ No newline at end of file
......@@ -61,7 +61,7 @@
var ip = "221";
var n = 9;
var color = 5;
var period = 96000000/2; //defult 1/fps when not taking image
var period = 100000000/2; //defult 1/fps when not taking image
parseURL();
set_parameter(ip,"COLOR",color);
......
......@@ -118,7 +118,7 @@ function previews_init(){
for (var i=0;i<cams.length;i++) {
var extra = "";
//if (i==9) extra = " (stereo)";
c += "<td align='center'>"+i+extra+"</td>";
c += "<td align='center'>"+(i+1)+extra+"</td>";
}
c += "</tr></table>";
//draw a close window cross
......
......@@ -9,16 +9,16 @@ var working_intvl = false;
var eyesis4pi_en = true;
var cams = [
{"ip":"192.168.0.161","port":2326,"channel":3,"master":0},
{"ip":"192.168.0.161","port":2325,"channel":2,"master":0},
{"ip":"192.168.0.161","port":2323,"channel":0,"master":0},
{"ip":"192.168.0.161","port":2324,"channel":1,"master":0},
{"ip":"192.168.0.162","port":2326,"channel":3,"master":0},
{"ip":"192.168.0.162","port":2325,"channel":2,"master":0},
{"ip":"192.168.0.162","port":2323,"channel":0,"master":0},
{"ip":"192.168.0.162","port":2324,"channel":1,"master":0},
{"ip":"192.168.0.163","port":2325,"channel":2,"master":1},
{"ip":"192.168.0.163","port":2326,"channel":3,"master":0}
{"ip":"192.168.0.161","port":2326,"channel":3,"master":0,"logger":0},
{"ip":"192.168.0.161","port":2325,"channel":2,"master":0,"logger":0},
{"ip":"192.168.0.161","port":2323,"channel":0,"master":0,"logger":1},
{"ip":"192.168.0.161","port":2324,"channel":1,"master":0,"logger":0},
{"ip":"192.168.0.162","port":2326,"channel":3,"master":0,"logger":0},
{"ip":"192.168.0.162","port":2325,"channel":2,"master":0,"logger":0},
{"ip":"192.168.0.162","port":2323,"channel":0,"master":0,"logger":0},
{"ip":"192.168.0.162","port":2324,"channel":1,"master":0,"logger":0},
{"ip":"192.168.0.163","port":2325,"channel":2,"master":1,"logger":0},
{"ip":"192.168.0.163","port":2326,"channel":3,"master":0,"logger":0}
];
function get_master_index(){
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment