Cruisers Forum
 


Reply
  This discussion is proudly sponsored by:
Please support our sponsors and let them know you heard about their products on Cruisers Forums. Advertise Here
 
Thread Tools Search this Thread Rate Thread Display Modes
Old 15-09-2013, 20:30   #1
Registered User
 
rwsaxon's Avatar

Join Date: Sep 2013
Posts: 6
opcn on android ienc trouble

Just got opcn loaded on my galaxy tab 10.1 (ver 1). Works well with BNC charts from NOAA. Great install thanks to good instructions. However ACOE only makes IENC charts available for inland waterways. When I load one (or an ENC from NOAA), depare will not complete and opcn crashes. Do I have a memory issue? Is it possible to create SENC files on a laptop and move them to tablet?

Thanks,
Bert
rwsaxon is offline   Reply With Quote
Old 17-09-2013, 12:46   #2
Registered User
 
Wrong's Avatar

Join Date: Jul 2013
Posts: 1,702
Re: opcn on android ienc trouble

Quote:
Originally Posted by rwsaxon View Post
Just got opcn loaded on my galaxy tab 10.1 (ver 1). Works well with BNC charts from NOAA. Great install thanks to good instructions. However ACOE only makes IENC charts available for inland waterways. When I load one (or an ENC from NOAA), depare will not complete and opcn crashes. Do I have a memory issue? Is it possible to create SENC files on a laptop and move them to tablet?

Thanks,
Bert
Bert,

I believe you are right. It is probably a memory issue because I experience the same problem. Too bad whoever creates these charts has apparently deviated from other publishers in how the charts are processed/loaded.

I recommend canvassing other sailors to obtain CM93 charts. Or, download from the internet. Links can be found on CF.

I have limited experience converting chart types, but believe you will find abundant information in the navigation and OpenCPN forums.

Thanks for your positive comment in reference to my instructions.
Wrong is offline   Reply With Quote
Old 19-09-2013, 08:09   #3
Registered User
 
rwsaxon's Avatar

Join Date: Sep 2013
Posts: 6
I don't believe that it is a problem with the charts as the program crashes at the same point during the conversion of either charts created by NOAA or the Army CoE. Both charts process fine on my WinXP laptop. I think it is either a memory issue or a problem in the compiled linux code (maybe a missing library ?). I don't have the skills to investigate these.

Again, thanks for your help.
rwsaxon is offline   Reply With Quote
Old 19-09-2013, 18:29   #4
Registered User
 
Wrong's Avatar

Join Date: Jul 2013
Posts: 1,702
Re: opcn on android ienc trouble

Quote:
Originally Posted by rwsaxon View Post
I don't believe that it is a problem with the charts as the program crashes at the same point during the conversion of either charts created by NOAA or the Army CoE. Both charts process fine on my WinXP laptop. I think it is either a memory issue or a problem in the compiled linux code (maybe a missing library ?). I don't have the skills to investigate these.

Again, thanks for your help.
I'll see what I can find out. Do you have CM93 charts?

Both NOAA and Coast Guard charts run fine under linux on my laptop. While the flavour is Fedora 18, I doubt it is related to Wheezy/Sid (armhf) on my Xoom.

I agree the fact the crash point is the same with your charts suggests it may be either a shortage of memory or the region in memory that's accessed when the charts are being opened. I'll run the process in a debug program as soon as I get resettled in the S.F. Bay area and learn how.

In the meanwhile, If you don't have them, I recommend you obtain and install CM93 charts. I have found them to be reliably accurate in the course of sailing nearly 2 global circumnavigations. The permissions for the charts should be rwxrwxrwx.
Using the FX file manager from Google Play change "CM93" to rwxrwxrwx. Then login as root and execute the following command in the android terminal.

chmod -R /home/android/CM93 --reference=/home/android/CM93

The -R changes all of the charts under CM93 recursively to rwxrwxrwx.

Thanks
Wrong is offline   Reply With Quote
Old 20-09-2013, 11:05   #5
Marine Service Provider
 
bdbcat's Avatar

Join Date: Mar 2008
Posts: 7,401
Re: opcn on android ienc trouble

Bert...

What version of OpenCPN are you running on the tablet? Where did you download it from?

There were known problems with ENCs on ARM processor some versions ago....

Thanks
Dave
bdbcat is offline   Reply With Quote
Old 20-09-2013, 13:40   #6
Registered User
 
rwsaxon's Avatar

Join Date: Sep 2013
Posts: 6
3.3.1 not site about the .1. Got it off the site a couple of days ago.

Think I'll try a complete reinstall this week end.

Not using it for navigation yet. Need to paint my boat and get it ready for when the weather cools.
rwsaxon is offline   Reply With Quote
Old 20-09-2013, 17:20   #7
Registered User
 
Wrong's Avatar

Join Date: Jul 2013
Posts: 1,702
Re: opcn on android ienc trouble

Dave,

I'm running 3.3.827. Ubuntu Precise 12.04 LTS \n \1
Kernel version 2.6.39.4
armhf architecture swp half thumb fastmult vfp edsp vfpv3 vfpv3-d16
Wrong is offline   Reply With Quote
Old 01-10-2013, 20:11   #8
Marine Service Provider
 
bdbcat's Avatar

Join Date: Mar 2008
Posts: 7,401
Re: opcn on android ienc trouble

rwsaxon/wrong....

Can you tell me exactly which iENC chart is causing a crash on arm platform?

Any other info would be useful, too.

Thanks
Dave
bdbcat is offline   Reply With Quote
Old 01-10-2013, 20:43   #9
Registered User
 
Wrong's Avatar

Join Date: Jul 2013
Posts: 1,702
Re: opcn on android ienc trouble

Quote:
Originally Posted by bdbcat View Post
rwsaxon/wrong....

Can you tell me exactly which iENC chart is causing a crash on arm platform?

Any other info would be useful, too.

Thanks
Dave
Dave,

In my case they are NOAA ENCS. Prefix is "US5" followed by letters denoting the State. rwsaxon has the same problem but also with NOAA CoE. Core of Engineers?

Result is during 'ingestion' OpenCPN crashes.
Wrong is offline   Reply With Quote
Old 01-10-2013, 21:15   #10
Marine Service Provider
 
bdbcat's Avatar

Join Date: Mar 2008
Posts: 7,401
Re: opcn on android ienc trouble

Bob...

Check your PM for procedure to use "ddd" to isolate crash point.

Dave
bdbcat is offline   Reply With Quote
Old 02-10-2013, 08:36   #11
Registered User
 
Wrong's Avatar

Join Date: Jul 2013
Posts: 1,702
Re: opcn on android ienc trouble

Quote:
Originally Posted by bdbcat View Post
Bob...

Check your PM for procedure to use "ddd" to isolate crash point.

Dave



Dave,

Per my pm. 'ddd opencpn', Program, 'run' from the menu
hangs at 'waiting until GDB gets ready'. Tried removing /home/android/.ddd which makes no difference.

Other terminal output:

could not convert >~Shift Ctrl<Key>Insert< to a KeyCode
~Shift Ctrl<Key>Insert -> 0000ff63 -> 0

Warning: Cannot convert string "-*-helvetica-medium-*-*-*-*-120-*-*-*-*-iso8859-*" to type FontStruct
Warning: Could not load font "-*-lucidatypewriter-medium-*-*-*-*-120-*-*-*-*-iso8859-*", using font "fixed" instead

Lots more...


Same result whether run as root or android.

Edit: New issue, unrelated to NOAA charts. CM93, same area:

(opencpn:10459): Gdk-CRITICAL **: IA__gdk_cairo_create: assertion `GDK_IS_DRAWABLE (drawable)' failed
Segmentation fault
Wrong is offline   Reply With Quote
Old 02-10-2013, 16:52   #12
Marine Service Provider
 
bdbcat's Avatar

Join Date: Mar 2008
Posts: 7,401
Re: opcn on android ienc trouble

Bob...

It seems that ddd on arm/linux is broken. So we can use gdb, the command line debugger instead.

Here is a sample screen output from a gdb session...
My comments/commands in Bold

$gdb opencpn

Reading symbols from /home/dsr/Projects/opencpn_sf/opencpn/build/opencpn...done.

(gdb) run

Starting program: /home/dsr/Projects/opencpn_sf/opencpn/build/opencpn
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/i386-linux-gnu/libthread_db.so.1".
[New Thread 0xb21cbb40 (LWP 6123)]
[Thread 0xb21cbb40 (LWP 6123) exited]
[New Thread 0xb21cbb40 (LWP 6124)]
[Thread 0xb21cbb40 (LWP 6124) exited]
[New Thread 0xb21cbb40 (LWP 6125)]
[Thread 0xb21cbb40 (LWP 6125) exited]
[New Thread 0xb21cbb40 (LWP 6126)]
[Thread 0xb21cbb40 (LWP 6126) exited]
[New Thread 0xb21cbb40 (LWP 6127)]
[Thread 0xb21cbb40 (LWP 6127) exited]
[New Thread 0xb21cbb40 (LWP 6140)]
[New Thread 0xb5a80b40 (LWP 6145)]

Error opening coefficient file


OCPN is running at this point. Make it crash....

Program received signal SIGSEGV, Segmentation fault.
0x0831d824 in s52plib::RenderToBufferFilledPolygon (this=0x86d3a80, rzRules=0x893efa8, obj=0x893eda0, c=0x90d11a0, BBView=..., pb_spec=0xbfffbfbc,
pPatt_spec=0x0) at /home/dsr/Desktop_Old/opencpn/src/s52plib.cpp:5028
5028 TriPrim *p_tp = ppg->tri_prim_head;


(gdb) backtrace



#0 0x0831d824 in s52plib::RenderToBufferFilledPolygon (this=0x86d3a80, rzRules=0x893efa8, obj=0x893eda0, c=0x90d11a0, BBView=...,
pb_spec=0xbfffbfbc, pPatt_spec=0x0) at /home/dsr/Desktop_Old/opencpn/src/s52plib.cpp:5028
#1 0x0831ebf9 in s52plib::RenderToBufferAC (this=0x86d3a80, rzRules=0x893efa8, rules=0x8968d88, vp=0xbfffbf38, pb_spec=0xbfffbfbc)
at /home/dsr/Desktop_Old/opencpn/src/s52plib.cpp:5894
#2 0x0831ef6f in s52plib::RenderAreaToDC (this=0x86d3a80, pdcin=0xbfffc928, rzRules=0x893efa8, vp=0xbfffbf38, pb_spec=0xbfffbfbc)
at /home/dsr/Desktop_Old/opencpn/src/s52plib.cpp:5958
#3 0x08329cf9 in s57chart:CRenderRect (this=0x88a5950, dcinput=..., vp=..., rect=0xbfffc3b0)
at /home/dsr/Desktop_Old/opencpn/src/s57chart.cpp:2325
#4 0x083298f1 in s57chart:oRenderViewOnDC (this=0x88a5950, dc=..., VPoint=..., option=DC_RENDER_ONLY, force_new_view=true)
at /home/dsr/Desktop_Old/opencpn/src/s57chart.cpp:2246
#5 0x083285a9 in s57chart:oRenderRegionViewOnDC (this=0x88a5950, dc=..., VPoint=..., Region=..., b_overlay=false)
at /home/dsr/Desktop_Old/opencpn/src/s57chart.cpp:1963
#6 0x08328436 in s57chart::RenderRegionViewOnDC (this=0x88a5950, dc=..., VPoint=..., Region=...)
at /home/dsr/Desktop_Old/opencpn/src/s57chart.cpp:1929
#7 0x0834e4db in cm93compchart:oRenderRegionViewOnDC (this=0x88a4870, dc=..., VPoint=..., Region=...)
at /home/dsr/Desktop_Old/opencpn/src/cm93.cpp:5469
#8 0x0834e16a in cm93compchart::RenderRegionViewOnDC (this=0x88a4870, dc=..., VPoint=..., Region=...)
at /home/dsr/Desktop_Old/opencpn/src/cm93.cpp:5397
#9 0x081c9f13 in Quilt::RenderQuiltRegionViewOnDC (this=0x8dd16d8, dc=..., vp=..., chart_region=...)
at /home/dsr/Desktop_Old/opencpn/src/Quilt.cpp:1949
#10 0x08190583 in ChartCanvas::OnPaint (this=0x8f022b0, event=...) at /home/dsr/Desktop_Old/opencpn/src/chcanv.cpp:8399
#11 0xb7e75367 in wxAppConsole::HandleEvent (this=0x85469a0, handler=0x8f022b0, func=
---Type <return> to continue, or q <return> to quit---


So, we get the file and line numbers of the stack context leading up to the crash.

Post the results here for analysis, please.

Thanks
Dave
bdbcat is offline   Reply With Quote
Old 02-10-2013, 17:10   #13
Registered User
 
Wrong's Avatar

Join Date: Jul 2013
Posts: 1,702
Re: opcn on android ienc trouble

Quote:
Originally Posted by bdbcat View Post
Bob...

It seems that ddd on arm/linux is broken. So we can use gdb, the command line debugger instead.

Here is a sample screen output from a gdb session...
My comments/commands in Bold

$gdb opencpn

Reading symbols from /home/dsr/Projects/opencpn_sf/opencpn/build/opencpn...done.

(gdb) run

Starting program: /home/dsr/Projects/opencpn_sf/opencpn/build/opencpn
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/i386-linux-gnu/libthread_db.so.1".
[New Thread 0xb21cbb40 (LWP 6123)]
[Thread 0xb21cbb40 (LWP 6123) exited]
[New Thread 0xb21cbb40 (LWP 6124)]
[Thread 0xb21cbb40 (LWP 6124) exited]
[New Thread 0xb21cbb40 (LWP 6125)]
[Thread 0xb21cbb40 (LWP 6125) exited]
[New Thread 0xb21cbb40 (LWP 6126)]
[Thread 0xb21cbb40 (LWP 6126) exited]
[New Thread 0xb21cbb40 (LWP 6127)]
[Thread 0xb21cbb40 (LWP 6127) exited]
[New Thread 0xb21cbb40 (LWP 6140)]
[New Thread 0xb5a80b40 (LWP 6145)]

Error opening coefficient file


OCPN is running at this point. Make it crash....

Program received signal SIGSEGV, Segmentation fault.
0x0831d824 in s52plib::RenderToBufferFilledPolygon (this=0x86d3a80, rzRules=0x893efa8, obj=0x893eda0, c=0x90d11a0, BBView=..., pb_spec=0xbfffbfbc,
pPatt_spec=0x0) at /home/dsr/Desktop_Old/opencpn/src/s52plib.cpp:5028
5028 TriPrim *p_tp = ppg->tri_prim_head;


(gdb) backtrace



#0 0x0831d824 in s52plib::RenderToBufferFilledPolygon (this=0x86d3a80, rzRules=0x893efa8, obj=0x893eda0, c=0x90d11a0, BBView=...,
pb_spec=0xbfffbfbc, pPatt_spec=0x0) at /home/dsr/Desktop_Old/opencpn/src/s52plib.cpp:5028
#1 0x0831ebf9 in s52plib::RenderToBufferAC (this=0x86d3a80, rzRules=0x893efa8, rules=0x8968d88, vp=0xbfffbf38, pb_spec=0xbfffbfbc)
at /home/dsr/Desktop_Old/opencpn/src/s52plib.cpp:5894
#2 0x0831ef6f in s52plib::RenderAreaToDC (this=0x86d3a80, pdcin=0xbfffc928, rzRules=0x893efa8, vp=0xbfffbf38, pb_spec=0xbfffbfbc)
at /home/dsr/Desktop_Old/opencpn/src/s52plib.cpp:5958
#3 0x08329cf9 in s57chart:CRenderRect (this=0x88a5950, dcinput=..., vp=..., rect=0xbfffc3b0)
at /home/dsr/Desktop_Old/opencpn/src/s57chart.cpp:2325
#4 0x083298f1 in s57chart:oRenderViewOnDC (this=0x88a5950, dc=..., VPoint=..., option=DC_RENDER_ONLY, force_new_view=true)
at /home/dsr/Desktop_Old/opencpn/src/s57chart.cpp:2246
#5 0x083285a9 in s57chart:oRenderRegionViewOnDC (this=0x88a5950, dc=..., VPoint=..., Region=..., b_overlay=false)
at /home/dsr/Desktop_Old/opencpn/src/s57chart.cpp:1963
#6 0x08328436 in s57chart::RenderRegionViewOnDC (this=0x88a5950, dc=..., VPoint=..., Region=...)
at /home/dsr/Desktop_Old/opencpn/src/s57chart.cpp:1929
#7 0x0834e4db in cm93compchart:oRenderRegionViewOnDC (this=0x88a4870, dc=..., VPoint=..., Region=...)
at /home/dsr/Desktop_Old/opencpn/src/cm93.cpp:5469
#8 0x0834e16a in cm93compchart::RenderRegionViewOnDC (this=0x88a4870, dc=..., VPoint=..., Region=...)
at /home/dsr/Desktop_Old/opencpn/src/cm93.cpp:5397
#9 0x081c9f13 in Quilt::RenderQuiltRegionViewOnDC (this=0x8dd16d8, dc=..., vp=..., chart_region=...)
at /home/dsr/Desktop_Old/opencpn/src/Quilt.cpp:1949
#10 0x08190583 in ChartCanvas::OnPaint (this=0x8f022b0, event=...) at /home/dsr/Desktop_Old/opencpn/src/chcanv.cpp:8399
#11 0xb7e75367 in wxAppConsole::HandleEvent (this=0x85469a0, handler=0x8f022b0, func=
---Type <return> to continue, or q <return> to quit---


So, we get the file and line numbers of the stack context leading up to the crash.

Post the results here for analysis, please.

Thanks
Dave
Dave,

Here ya are.

Bob

opencpn:3430): Gdk-WARNING **: shmget failed: error 38 (Function not implemented)

Program received signal SIGBUS, Bus error.
0x002b1626 in s57chart::CreateSENCRecord (this=0xb47e00, pFeature=0xc20050,
fpOut=0xa84698, mode=1, poReader=0xa85d58)
at /home/android/Downloads3/OpenCPN/src/s57chart.cpp:5097
5097 lon = *psd++; // fetch the point
(gdb) backtrace
#0 0x002b1626 in s57chart::CreateSENCRecord (this=0xb47e00,
pFeature=0xc20050, fpOut=0xa84698, mode=1, poReader=0xa85d58)
at /home/android/Downloads3/OpenCPN/src/s57chart.cpp:5097
#1 0x002ae68e in s57chart::BuildSENCFile (this=0xb47e00, FullPath000=...,
SENCFileName=...)
at /home/android/Downloads3/OpenCPN/src/s57chart.cpp:4065
#2 0x002a9d96 in s57chart::FindOrCreateSenc (this=0xb47e00, name=...)
at /home/android/Downloads3/OpenCPN/src/s57chart.cpp:2681
#3 0x002a93d2 in s57chart::Init (this=0xb47e00, name=..., flags=FULL_INIT)
at /home/android/Downloads3/OpenCPN/src/s57chart.cpp:2503
#4 0x0010ca1c in ChartDB::OpenChartUsingCache (this=0x10017e0, dbindex=152,
init_flag=FULL_INIT)
at /home/android/Downloads3/OpenCPN/src/chartdb.cpp:1135
#5 0x0010be6e in ChartDB::OpenChartFromDB (this=0x10017e0, index=152,
init_flag=FULL_INIT)
at /home/android/Downloads3/OpenCPN/src/chartdb.cpp:800
#6 0x000f2ffe in MyFrame::SelectQuiltRefdbChart (this=0x5fe800, db_index=152)
at /home/android/Downloads3/OpenCPN/src/chart1.cpp:5508
#7 0x000f2904 in MyFrame::HandlePianoClick (this=0x5fe800, selected_index=2,
selected_dbIndex=152)
at /home/android/Downloads3/OpenCPN/src/chart1.cpp:5393
#8 0x001e6160 in PianoWin::MouseEvent (this=0xf52da0, event=...)
at /home/android/Downloads3/OpenCPN/src/statwin.cpp:519
#9 0x4006f54c in wxAppConsole::HandleEvent(wxEvtHandler*, void (wxEvtHandler::*)(wxEvent&), wxEvent&) const ()
from /usr/lib/arm-linux-gnueabihf/libwx_baseu-2.8.so.0
#10 0x400bdf08 in wxEvtHandler::ProcessEventIfMatches(wxEventTableEn tryBase const&, wxEvtHandler*, wxEvent&) ()
from /usr/lib/arm-linux-gnueabihf/libwx_baseu-2.8.so.0
#11 0x400bdfe2 in wxEventHashTable::HandleEvent(wxEvent&, wxEvtHandler*) ()
from /usr/lib/arm-linux-gnueabihf/libwx_baseu-2.8.so.0
#12 0x400be214 in wxEvtHandler::ProcessEvent(wxEvent&) ()
from /usr/lib/arm-linux-gnueabihf/libwx_baseu-2.8.so.0
#13 0x4022939e in wxWindow::GTKProcessEvent(wxEvent&) const ()
from /usr/lib/arm-linux-gnueabihf/libwx_gtk2u_core-2.8.so.0
#14 0x4022d6da in ?? ()
from /usr/lib/arm-linux-gnueabihf/libwx_gtk2u_core-2.8.so.0
#15 0x4022d6da in ?? ()
from /usr/lib/arm-linux-gnueabihf/libwx_gtk2u_core-2.8.so.0
Backtrace stopped: previous frame identical to this frame (corrupt stack?)
(gdb) (gdb)
Wrong is offline   Reply With Quote
Old 02-10-2013, 18:41   #14
Marine Service Provider
 
bdbcat's Avatar

Join Date: Mar 2008
Posts: 7,401
Re: opcn on android ienc trouble

Bob...

OK, got it.

This is an ArmHF double alignment problem. Its a consequence of squeezing every unnecessary transistor out of the silicon to cut costs. The effect is usually corrected for in arm gcc libraries. However, OCPN does direct core access of packed data types to improve performance. There is a 1 in 4 chance that it will NOT crash, and I guess I have been lucky so far.

Will have a fix in github soon, probably tonight.

Thanks
Dave
bdbcat is offline   Reply With Quote
Old 02-10-2013, 19:08   #15
Marine Service Provider
 
bdbcat's Avatar

Join Date: Mar 2008
Posts: 7,401
Re: opcn on android ienc trouble

Bob...

The armhf double alignment fix is now available in github (3.3.1003 Alpha)

Good Luck
Dave
bdbcat is offline   Reply With Quote
Reply

Tags
enc


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are Off
Refbacks are Off


Advertise Here


All times are GMT -7. The time now is 09:20.


Google+
Powered by vBulletin® Version 3.8.8 Beta 1
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Social Knowledge Networks
Powered by vBulletin® Version 3.8.8 Beta 1
Copyright ©2000 - 2024, vBulletin Solutions, Inc.

ShowCase vBulletin Plugins by Drive Thru Online, Inc.