VRS on ubuntu on Beable Bone Black

Bug reports and questions about running Virtual Radar Server on Linux
Post Reply
gariac
Posts: 31
Joined: Sun Jan 13, 2013 6:25 am

VRS on ubuntu on Beable Bone Black

Post by gariac » Thu Jul 10, 2014 3:56 am

I realized that after I changed my Beagle Bone Black to Ubuntu from Opensuse, was I still posting under the opensuse subject line. Better to start a new thread.

Under ubuntu, I can run VRS but not the database plugin. When I try to set up the database plugin, it crashes.

First, let me show that the Ubuntu version of mono uses hardware floating point.
--------------------------------------------------
I saw the comment on software floating point versus hardware floating point on the RPi thread. But the BBB appears to be hardware floating point.


ubuntu@arm:~/vrs/database$ mono --version
Mono JIT compiler version 3.2.8 (Debian 3.2.8+dfsg-4ubuntu1)
Copyright (C) 2002-2014 Novell, Inc, Xamarin Inc and Contributors. www.mono-project.com
TLS: __thread
SIGSEGV: normal
Notifications: epoll
Architecture: armel,vfp+hard
Disabled: none
Misc: softdebug
LLVM: supported, not enabled.
GC: sgen
ubuntu@arm:~/vrs/database$

and

ubuntu@arm:~/vrs/database$ uname -a
Linux arm 3.8.13-bone59 #1 SMP Sat Jul 5 02:59:43 UTC 2014 armv7l armv7l armv7l GNU/Linux

----------------------------------------------------------------------

Second, Ubuntu uses port 8080, so you need to follow the instructions to change the port. I used 8082

---------------------------------
Third, the crash data:

Code: Select all

ubuntu@arm:~/vrs$ mono VirtualRadar.exe
* Assertion at mini-codegen.c:807, condition `i == sel' not met

Stacktrace:

  at <unknown> <0xffffffff>
  at System.Windows.Forms.TextBoxBase.Draw (System.Drawing.Graphics,System.Drawing.Rectangle) <0x000ab>
  at System.Windows.Forms.TextBoxBase.OnPaintInternal (System.Windows.Forms.PaintEventArgs) <0x00063>
  at System.Windows.Forms.Control.WmPaint (System.Windows.Forms.Message&) <0x0017f>
  at System.Windows.Forms.Control.WndProc (System.Windows.Forms.Message&) <0x00217>
  at System.Windows.Forms.TextBoxBase.WndProc (System.Windows.Forms.Message&) <0x00313>
  at System.Windows.Forms.TextBox.WndProc (System.Windows.Forms.Message&) <0x001d3>
  at System.Windows.Forms.Control/ControlWindowTarget.OnMessage (System.Windows.Forms.Message&) <0x0002b>
  at System.Windows.Forms.Control/ControlNativeWindow.WndProc (System.Windows.Forms.Message&) <0x0003b>
  at System.Windows.Forms.NativeWindow.WndProc (intptr,System.Windows.Forms.Msg,intptr,intptr) <0x0028b>
  at System.Windows.Forms.XplatUIX11.DispatchMessage (System.Windows.Forms.MSG&) <0x00023>
  at System.Windows.Forms.XplatUI.DispatchMessage (System.Windows.Forms.MSG&) <0x0002b>
  at System.Windows.Forms.Application.RunLoop (bool,System.Windows.Forms.ApplicationContext) <0x00acb>
  at System.Windows.Forms.Form.ShowDialog (System.Windows.Forms.IWin32Window) <0x007cf>
  at System.Windows.Forms.Form.ShowDialog () <0x00017>
  at VirtualRadar.Plugin.BaseStationDatabaseWriter.WinForms.OptionsView.DisplayView () <0x00013>
  at VirtualRadar.Plugin.BaseStationDatabaseWriter.Plugin.ShowWinFormsOptionsUI () <0x001a7>
  at VirtualRadar.WinForms.PluginsView.pluginDetailsControl_ConfigurePluginClicked (object,VirtualRadar.Interface.PluginEventArgs) <0x00033>
  at VirtualRadar.WinForms.Controls.PluginDetailsControl.OnConfigurePluginClicked (VirtualRadar.Interface.PluginEventArgs) <0x00043>
  at VirtualRadar.WinForms.Controls.PluginDetailsControl.Plugin_ConfigureClicked (object,VirtualRadar.Interface.PluginEventArgs) <0x0002b>
  at VirtualRadar.WinForms.Controls.PluginDetailPanel.OnConfigureClicked (VirtualRadar.Interface.PluginEventArgs) <0x00043>
  at VirtualRadar.WinForms.Controls.PluginDetailPanel.buttonConfigure_Click (object,System.EventArgs) <0x00063>
  at System.Windows.Forms.Control.OnClick (System.EventArgs) <0x00077>
  at System.Windows.Forms.Button.OnClick (System.EventArgs) <0x0004b>
  at System.Windows.Forms.ButtonBase.OnMouseUp (System.Windows.Forms.MouseEventArgs) <0x00123>
  at System.Windows.Forms.Button.OnMouseUp (System.Windows.Forms.MouseEventArgs) <0x0001b>
  at System.Windows.Forms.Control.WmLButtonUp (System.Windows.Forms.Message&) <0x0010f>
  at System.Windows.Forms.Control.WndProc (System.Windows.Forms.Message&) <0x00237>
  at System.Windows.Forms.ButtonBase.WndProc (System.Windows.Forms.Message&) <0x00087>
  at System.Windows.Forms.Button.WndProc (System.Windows.Forms.Message&) <0x0001b>
  at System.Windows.Forms.Control/ControlWindowTarget.OnMessage (System.Windows.Forms.Message&) <0x0002b>
  at System.Windows.Forms.Control/ControlNativeWindow.WndProc (System.Windows.Forms.Message&) <0x0003b>
  at System.Windows.Forms.NativeWindow.WndProc (intptr,System.Windows.Forms.Msg,intptr,intptr) <0x0028b>
  at System.Windows.Forms.XplatUIX11.DispatchMessage (System.Windows.Forms.MSG&) <0x00023>
  at System.Windows.Forms.XplatUI.DispatchMessage (System.Windows.Forms.MSG&) <0x0002b>
  at System.Windows.Forms.Application.RunLoop (bool,System.Windows.Forms.ApplicationContext) <0x00acb>
  at System.Windows.Forms.Form.ShowDialog (System.Windows.Forms.IWin32Window) <0x007cf>
  at System.Windows.Forms.Form.ShowDialog () <0x00017>
  at (wrapper remoting-invoke-with-check) System.Windows.Forms.Form.ShowDialog () <0xffffffff>
  at VirtualRadar.WinForms.MainView.menuPluginsToolStripMenuItem_Click (object,System.EventArgs) <0x0005f>
  at System.Windows.Forms.ToolStripItem.OnClick (System.EventArgs) <0x00077>
  at System.Windows.Forms.ToolStripMenuItem.OnClick (System.EventArgs) <0x00337>
  at System.Windows.Forms.ToolStripMenuItem.HandleClick (int,System.EventArgs) <0x00027>
  at System.Windows.Forms.ToolStripItem.FireEvent (System.EventArgs,System.Windows.Forms.ToolStripItemEventType) <0x000bb>
  at (wrapper remoting-invoke-with-check) System.Windows.Forms.ToolStripItem.FireEvent (System.EventArgs,System.Windows.Forms.ToolStripItemEventType) <0xffffffff>
  at System.Windows.Forms.ToolStrip.OnMouseUp (System.Windows.Forms.MouseEventArgs) <0x00167>
  at System.Windows.Forms.ToolStripDropDown.OnMouseUp (System.Windows.Forms.MouseEventArgs) <0x0001b>
  at System.Windows.Forms.Control.WmLButtonUp (System.Windows.Forms.Message&) <0x0010f>
  at System.Windows.Forms.Control.WndProc (System.Windows.Forms.Message&) <0x00237>
  at System.Windows.Forms.ScrollableControl.WndProc (System.Windows.Forms.Message&) <0x0001b>
  at System.Windows.Forms.ToolStrip.WndProc (System.Windows.Forms.Message&) <0x0001b>
  at System.Windows.Forms.ToolStripDropDown.WndProc (System.Windows.Forms.Message&) <0x0003f>
  at System.Windows.Forms.Control/ControlWindowTarget.OnMessage (System.Windows.Forms.Message&) <0x0002b>
  at System.Windows.Forms.Control/ControlNativeWindow.WndProc (System.Windows.Forms.Message&) <0x0003b>
  at System.Windows.Forms.NativeWindow.WndProc (intptr,System.Windows.Forms.Msg,intptr,intptr) <0x0028b>
  at System.Windows.Forms.XplatUIX11.DispatchMessage (System.Windows.Forms.MSG&) <0x00023>
  at System.Windows.Forms.XplatUI.DispatchMessage (System.Windows.Forms.MSG&) <0x0002b>
  at System.Windows.Forms.Application.RunLoop (bool,System.Windows.Forms.ApplicationContext) <0x00acb>
  at System.Windows.Forms.Application.Run (System.Windows.Forms.ApplicationContext) <0x0005f>
  at System.Windows.Forms.Application.Run (System.Windows.Forms.Form) <0x0002b>
  at VirtualRadar.Program.StartApplication (string[]) <0x001df>
  at VirtualRadar.Program.Main (string[]) <0x0036f>
  at (wrapper runtime-invoke) <Module>.runtime_invoke_void_object (object,intptr,intptr,intptr) <0xffffffff>

Native stacktrace:


Debug info from gdb:


=================================================================
Got a SIGABRT while executing native code. This usually indicates
a fatal error in the mono runtime or one of the native libraries 
used by your application.
=================================================================

Aborted
ubuntu@arm:~/vrs$ 

-------------------------------------------------
Fourth: system performance
VRS under mono at the moment doesn't take up much cpu horsepower, but then again, the database isn't being update.

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1253 ubuntu 20 0 25028 6112 888 R 41.0 1.2 523:15.75 dump1090
8229 ubuntu 20 0 112320 71652 17908 S 13.0 14.1 118:56.23 mono

agw
Posts: 2241
Joined: Fri Feb 17, 2012 3:20 am

Re: VRS on ubuntu on Beable Bone Black

Post by agw » Mon Jul 14, 2014 1:15 am

I've been answering the posts in reverse order, sorry :)

The TextBox crash appears to be a known bug in the current ARM build of Mono. There aren't may WinForms applications out there that don't use a textbox somewhere or other so you'd hope that it'd get fixed sooner rather than later. I posted a link to the Xamarin bugzilla report for it in the other thread.

In the meantime you could work around it by setting up the plugin on a non-ARM system and then copy the PluginsConfiguration.txt file and Configuration.xml file to your ARM box. The latter contains almost all of the configuration settings for VRS so you may need to set that up on your non-ARM system too - the Database Writer plugin makes two references to values in Configuration.xml, the filename for the database and the receiver to record, so it's best to try to keep those two in sync if you can.

Failing that both of those are text files, and as the options screen doesn't currently use text boxes (unfortunately in 2.0.3 it will) you should be able to edit Configuration.xml via the program and use vi for PluginsSettings.txt. The only settings that the database writer plugin writes to PluginsConfiguration.txt are:

Code: Select all

VirtualRadar.Plugin.BaseStationDatabaseWriter.Enabled=1
VirtualRadar.Plugin.BaseStationDatabaseWriter.AllowUpdateOfOtherDatabases=1
VirtualRadar.Plugin.BaseStationDatabaseWriter.ReceiverId=1
(where ReceiverId is the UniqueId of the receiver or merged feed to record - you should be able to find that fairly easily in Configuration.xml).

gariac
Posts: 31
Joined: Sun Jan 13, 2013 6:25 am

Re: VRS on ubuntu on Beable Bone Black

Post by gariac » Wed Jul 16, 2014 10:55 am

That did the trick. I had to edit in some obvious differences between the two systems, but it does read the database. I'll check later if the flights are logged correctly. Thus far no horsepower issues. Mono is pulling about 15% of the CPU. Dump1090 about 40%. The BBB is a reasonably powerful SBC. Certainly more than the R PI. But the GPU kind of sours a lot of users. Not an issue in my case.

Thanks for your help. I am one step closer to VRS in a box. I'm trying to set up a BBB to decode and log the aircraft, then read the activity via tablet or smartphone.

gariac
Posts: 31
Joined: Sun Jan 13, 2013 6:25 am

Re: VRS on ubuntu on Beable Bone Black

Post by gariac » Wed Jul 16, 2014 4:42 pm

The database analysis is functional. Running "top", you can see mono max out the CPU when you generate a report. That could potentially cause a loss of aircraft sniffing, albeit momentary. Memory never seems to be an issue. Mono uses about 17% of it.

gariac
Posts: 31
Joined: Sun Jan 13, 2013 6:25 am

Re: VRS on ubuntu on Beable Bone Black

Post by gariac » Wed Jan 07, 2015 3:40 am

I was using opensuse at the time.

I've come to the conclusion that you should just run Angstrom on the BBB if you can. It is the most stable.

agw
Posts: 2241
Joined: Fri Feb 17, 2012 3:20 am

Re: VRS on ubuntu on Beable Bone Black

Post by agw » Sat Jan 10, 2015 3:11 pm

You were replying to a (soon to be deleted) spambot :) It had copied a posting from another thread, I think the idea is to just get their post count up without posting the usual generic garbage that gives away the fact that they're a machine.

Post Reply