Git Product home page Git Product logo

mypois's People

Contributors

jimmyh avatar mjesun avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

mypois's Issues

Setting warnings to False doesn't turn them off for MIB2HIGH

The check in this line (in mib2high.py):
warning=1 if warning else 0
will only check if warning was defined or not hence always enable it. And the line reading the warning variable, forces us to enter that label for all sections, hence it's not possible to not have warnings enabled.

I changed the line to the following, allowing me to disable this part:
warning=1 if warning.lower() == "true" else 0

Sorry didn't have the possibilty to do the pull request on this computer, hope you can add this yourself!

Thanks!

Add support for additional POI formats

We currently only support CSV files for POIs. It would be good to add support for additional formats eg GPX, ASC, etc.

If you are interested in these being supported, please add a request for the format you want to this issue.

OverflowError: Python int too large to convert to SQLite INTEGER

Hi,

I'm running mypois.py on Mac OS X.
It fails on my custom CSV:

Traceback (most recent call last):
  File "./mypois.py", line 96, in <module>
    sys.exit(main())
  File "./mypois.py", line 93, in main
    create_mypois( cfg )
  File "./mypois.py", line 73, in create_mypois
    if not skipmib2tsd: mib2tsd.read_csv(config[section])
  File "/Users/1e1/Documents/repogit/mypois/mib2tsd.py", line 113, in read_csv
    poiaddr.to_sql(name='pPoiAddressTable',con=self.conn,if_exists='append',index=False)
  File "/usr/local/lib/python3.7/site-packages/pandas/core/generic.py", line 2130, in to_sql
    dtype=dtype)
  File "/usr/local/lib/python3.7/site-packages/pandas/io/sql.py", line 450, in to_sql
    chunksize=chunksize, dtype=dtype)
  File "/usr/local/lib/python3.7/site-packages/pandas/io/sql.py", line 1481, in to_sql
    table.insert(chunksize)
  File "/usr/local/lib/python3.7/site-packages/pandas/io/sql.py", line 641, in insert
    self._execute_insert(conn, keys, chunk_iter)
  File "/usr/local/lib/python3.7/site-packages/pandas/io/sql.py", line 1270, in _execute_insert
    conn.executemany(self.insert_statement(), data_list)
OverflowError: Python int too large to convert to SQLite INTEGER

I add .txt only for uploading the CSV here
GATSO_50.csv.txt

Perhaps my Python is 64-bits and sqlite is 32-bits?

Add support for MIB1 units

We currently only support MIB2 units. The format for MIB1 unit is significantly different, but looks possible.

If you are interested in this being supported please add a +1 request to this issue.

Example MIB1 POI file: MIB1PersonalPOI.zip

Note: Looks like MIB1 still uses morton codes for coordinates, but uses a (-180.0,-180.0) offset.

documentation about the database?

Hi,

Do you have some links where read how the database works?

I see the schema of MIB2HIGH:

CREATE VIRTUAL TABLE poicoord USING rtree (poiid INTEGER,latmin REAL,latmax REAL,lonmin REAL,lonmax REAL);
CREATE TABLE IF NOT EXISTS "poicoord_rowid"(rowid INTEGER PRIMARY KEY,nodeno);
CREATE TABLE IF NOT EXISTS "poicoord_node"(nodeno INTEGER PRIMARY KEY,data);
CREATE TABLE IF NOT EXISTS "poicoord_parent"(nodeno INTEGER PRIMARY KEY,parentnode);
CREATE TABLE poidata (poiid INTEGER,type INTEGER,namephon TEXT,ccode INTEGER,zipcode TEXT,city TEXT,street TEXT,housenr TEXT,phone TEXT,ntlimportance INTEGER,exttype TEXT,extcont TEXT,warning TEXT,warnphon TEXT,CONSTRAINT PK_poidata PRIMARY KEY (poiid));
CREATE VIRTUAL TABLE poiname USING fts3 (name TEXT);
CREATE TABLE IF NOT EXISTS 'poiname_content'(docid INTEGER PRIMARY KEY, 'c0name');
CREATE TABLE IF NOT EXISTS 'poiname_segments'(blockid INTEGER PRIMARY KEY, block BLOB);
CREATE TABLE IF NOT EXISTS 'poiname_segdir'(level INTEGER,idx INTEGER,start_block INTEGER,leaves_end_block INTEGER,end_block INTEGER,root BLOB,PRIMARY KEY(level, idx));

I would know more about poiname_segments. I would add POI on a road section.

Thanks

MIB2 STD Delphi units

@jimmyH thank you for your project. Currently I am trying to make own POI Builder also with Python and faced with one issue. My POI everywhere (Audi MIB1/MIB2, VW MIB2 High, VW MIB2 TSD) work fine except of MIB2 TSD Delphi units. During installation I got -1% progress bar and error about can't install. I think issue in MIB2DE/metainfo2.txt file. Every file I create from zero so I generate it programatically. What can be wrong? Maybe some files have something like digital signature and Delphi units check it?

If I take POI from poibase, make changes (add translations) and run your scripts for generating hashes it will work fine. When I do it from zero with my POI I get error.

image

image image

MIB2DE/metainfo2.txt

# 
# This is the description file for the Software Update of Volkswagen components
# 
#################################################################################

[common]
skipSaveTrainName = "true"
vendor = "Delphi"
skipCheckSignatureAndVariant = "true"
region = "Europe"
region2 = "RoW"
region3 = "USA"
variant = "17245"
variant2 = "17246"
variant3 = "17250"
variant4 = "17251"
variant5 = "17247"
variant6 = "17252"
variant7 = "17254"
variant8 = "17255"
variant9 = "17268"
variant10 = "17269"
variant11 = "17270"
variant12 = "17271"
release = "2012/2013"
UserSWDL = "true"
skipMetaCRC = "true"
MetafileChecksum = "ab9032783ae6739433a0103b691a02a99f73cc95"
skipFileCopyCrc = "true"

[PersonalPOI]
VendorInfo = "Delphi"
DeviceDescription = "Personal POI Packages"

ConfigComponent = "PersonalPOI"
PacketName = "Package"
ConfigCheckPath = "../MIB2HIGH/PersonalPOI/Package/0/default"
ConfigFinalizePath = "/media/swdl/packages/PersonalPOI/Package"
IncludeModules = ",Package,"

[PersonalPOI\Package\0\default\Dir]
CheckSumSize = "524288"
CheckSum = "6184f75a6cc47d07d6dee27ff63b5b6d40340fa9"
FileSize = "7836017"
CheckType = "CheckReadData"
DeleteDestinationDirBeforeCopy = "true"
Version = "1"
UpdateOnlyExisting = "false"
IsDestinationInFFS = "false"
Source = "../../../../../MIB2HIGH/PersonalPOI/Package/0/default/"
Destination = "/media/swdl/packages/PersonalPOI/Package"
DisplayName = "Personal POIs"

[PersonalPOI\InfoFile\0\default\File]
CheckSumSize = "524288"
CheckSum = "3c52c35208731962315e14a939c031742dd90a27"
FileSize = "713"
Version = "3"
Source = "../../../../../MIB2HIGH/PersonalPOI/InfoFile/0/default/Update.txt"
Destination = "/media/swdl/packages/PersonalPOI/"
DisplayName = "Database Information"
DeleteDestinationDirBeforeCopy = "false"
UpdateOnlyExisting = "false"

Add support for Audi, Volkswagen and Seat

The VW group uses the same SatNav units across the group. So it should be possible to support all these MIB2 devices. However, it is likely that the metainfo2.txt files are different.

If you are interested in this please add a +1 request to this issue.

Morton Code for RNS

Hi, sorry to ask this here, but I couldn't find other free projects talking about something similar.
I guess there is a small diference in the morton calculation for VW RNS 510 devices.

Have you got any info about it?

Thank you very much.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.