Collecting Signal Strength Metadata in ODK

Not a developer, but would love to collect the cell signal strength (in rssi or really any format) in order to map the cell signal strength in areas where we have deployed a project. Is this doable in odk collect?

Thanks.

Neal

There are a few external apps that can read rssi data. How would you return
them to collect?

··· On Friday, October 16, 2015 at 3:09:47 PM UTC+8, Neal Barsch wrote: > > Not a developer, but would love to collect the cell signal strength (in > rssi or really any format) in order to map the cell signal strength in > areas where we have deployed a project. Is this doable in odk collect? > > Thanks. > > Neal

Hi Neal,

It's not as simple as editing XML for a form. If you want the data in
the form, this will require a new widget inside Collect or some
external application that can read RSSIs and return them to Collect.
Alternatives are to use an existing RSSI mapper and collect that data
separately, or in the background.

Yaw

··· -- Need ODK consultants? https://nafundi.com provides form design, server setup, in-field training, and software development for ODK.

On Fri, Oct 16, 2015 at 12:26 PM, nbarsch@grameenfoundation.org wrote:

Not a developer, but would love to collect the cell signal strength (in rssi or really any format) in order to map the cell signal strength in areas where we have deployed a project. Is this doable in odk collect?

Thanks.

Neal

--

Post: opendatakit@googlegroups.com
Unsubscribe: opendatakit+unsubscribe@googlegroups.com
Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to the Google Groups "ODK Community" group.
To unsubscribe from this group and stop receiving emails from it, send an email to opendatakit+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Neal,

https://opendatakit.org/help/form-design/external-apps/ is the overview.

Those RSSI apps would have to be modified to return the data to
Collect. That's not always practical, so you'll likely have to roll
your own mini-app to do the return.

Yaw

··· -- Need ODK consultants? https://nafundi.com provides form design, server setup, in-field training, and software development for ODK.

On Fri, Oct 16, 2015 at 3:05 PM, Neal Barsch nbarsch@grameenfoundation.org wrote:

There are a few external apps that can read rssi data. How would you return
them to collect?

On Friday, October 16, 2015 at 3:09:47 PM UTC+8, Neal Barsch wrote:

Not a developer, but would love to collect the cell signal strength (in
rssi or really any format) in order to map the cell signal strength in areas
where we have deployed a project. Is this doable in odk collect?

Thanks.

Neal

--

Post: opendatakit@googlegroups.com
Unsubscribe: opendatakit+unsubscribe@googlegroups.com
Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to the Google Groups
"ODK Community" group.
To unsubscribe from this group and stop receiving emails from it, send an
email to opendatakit+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Neal,

Not sure if you have seen this. It would mean collecting data outside of
ODK and then doing the reconciliation after but could potentially be a
viable approach.

http://wiki.opencellid.org/wiki/Data_sources

Thanks,

Matt

··· On Fri, Oct 16, 2015 at 11:13 AM, Yaw Anokwa wrote:

Neal,

https://opendatakit.org/help/form-design/external-apps/ is the overview.

Those RSSI apps would have to be modified to return the data to
Collect. That's not always practical, so you'll likely have to roll
your own mini-app to do the return.

Yaw

Need ODK consultants? https://nafundi.com provides form design, server
setup, in-field training, and software development for ODK.

On Fri, Oct 16, 2015 at 3:05 PM, Neal Barsch nbarsch@grameenfoundation.org wrote:

There are a few external apps that can read rssi data. How would you
return
them to collect?

On Friday, October 16, 2015 at 3:09:47 PM UTC+8, Neal Barsch wrote:

Not a developer, but would love to collect the cell signal strength (in
rssi or really any format) in order to map the cell signal strength in
areas

where we have deployed a project. Is this doable in odk collect?

Thanks.

Neal

--

Post: opendatakit@googlegroups.com
Unsubscribe: opendatakit+unsubscribe@googlegroups.com
Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to the Google Groups
"ODK Community" group.
To unsubscribe from this group and stop receiving emails from it, send an
email to opendatakit+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--

Post: opendatakit@googlegroups.com
Unsubscribe: opendatakit+unsubscribe@googlegroups.com
Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to the Google Groups
"ODK Community" group.
To unsubscribe from this group and stop receiving emails from it, send an
email to opendatakit+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Hey Matt,

Thanks for the tip! Have you ever used any of these in projects of your
own/had any success? I've been looking into tower collector, looks like it
could be a viable solution. I'm certainly all for contributing to the open
source (heck as long as I get the cell coverage in the areas we're looking
into, I couldn't care less who else has the same information).

Thanks!

Neal

··· On Friday, October 16, 2015 at 10:36:29 PM UTC+8, Matt Berg wrote: > > Neal, > > Not sure if you have seen this. It would mean collecting data outside of > ODK and then doing the reconciliation after but could potentially be a > viable approach. > > http://wiki.opencellid.org/wiki/Data_sources > > Thanks, > > Matt > > On Fri, Oct 16, 2015 at 11:13 AM, Yaw Anokwa <yan...@nafundi.com > wrote: > >> Neal, >> >> https://opendatakit.org/help/form-design/external-apps/ is the overview. >> >> Those RSSI apps would have to be modified to return the data to >> Collect. That's not always practical, so you'll likely have to roll >> your own mini-app to do the return. >> >> Yaw >> -- >> Need ODK consultants? https://nafundi.com provides form design, server >> setup, in-field training, and software development for ODK. >> >> On Fri, Oct 16, 2015 at 3:05 PM, Neal Barsch <nba...@grameenfoundation.org > wrote: >> > There are a few external apps that can read rssi data. How would you >> return >> > them to collect? >> > >> > >> > On Friday, October 16, 2015 at 3:09:47 PM UTC+8, Neal Barsch wrote: >> >> >> >> Not a developer, but would love to collect the cell signal strength (in >> >> rssi or really any format) in order to map the cell signal strength in >> areas >> >> where we have deployed a project. Is this doable in odk collect? >> >> >> >> Thanks. >> >> >> >> Neal >> > >> > -- >> > -- >> > Post: opend...@googlegroups.com >> > Unsubscribe: opendatakit...@googlegroups.com >> > Options: http://groups.google.com/group/opendatakit?hl=en >> > >> > --- >> > You received this message because you are subscribed to the Google >> Groups >> > "ODK Community" group. >> > To unsubscribe from this group and stop receiving emails from it, send >> an >> > email to opendatakit...@googlegroups.com . >> > For more options, visit https://groups.google.com/d/optout. >> >> -- >> -- >> Post: opend...@googlegroups.com >> Unsubscribe: opendatakit...@googlegroups.com >> Options: http://groups.google.com/group/opendatakit?hl=en >> >> --- >> You received this message because you are subscribed to the Google Groups >> "ODK Community" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to opendatakit...@googlegroups.com . >> For more options, visit https://groups.google.com/d/optout. >> > >

Hey all,

Just wanted to update this on the workaround I used. Yaw and Matt, serious
thanks for all you guys do on ODK. Unfortunately paying for a custom widget
was a little out of my organizations budget but we did find a great
workaround via the link Matt sent.

We used TowerCollector (one of the apps in the link:
http://wiki.opencellid.org/wiki/Data_sources
http://www.google.com/url?q=http%3A%2F%2Fwiki.opencellid.org%2Fwiki%2FData_sources&sa=D&sntz=1&usg=AFQjCNH6uV3YRPpEJmHGuc7dNae8EKmxUg)
and ran it in the background on the day-to-day data collection on Samsung
Galaxy 2 tablets. TowerCollector worked in the background of the surveys
and gathered a cell reading (despite documentation to the contrary) even
when the tablet screen was off. This was great for us as it even collected
readings when we were moving between survey locations. During our 3 week
project we got about 30,000 readings between two tablets, a bit much for
our mapping items, but a bit of data consolidation using the GPS
coordinates to remove duplicate locations and interspace readings by about
100meters and boom, 5000 nice cell readings for our map.

TowerCollector must be started every morning and switched off, and exports
must be sent as CSV files, but it was great at collecting cell readings and
GPS coordinates. I don't know if collecting readings when the screen was
off is unique to our galaxy tabs or the fact they are running on Android
4.1.2, but cool in any case. Either way, using ODK you're going to turn the
screen on anyhow, so you'll get a cell reading during the surveys. Battery
drain was less than expected (we got about 6 hours use out of the tablets
before needing external battery packs in the field, with heavy use and the
screen on most of the time).

We used the geocoder available in Google Earth Pro (the pro version is now
available for free) to geocode all 5000 readings. Were able to filter the
icons by the cell signal to color code them on a scale of green to red.
Exactly what we were looking for.

Figured this could be helpful to somebody in the future.

Cheers (And thanks again Yaw and Matt)!

Neal

··· On Monday, October 19, 2015 at 2:11:14 PM UTC+8, Neal Barsch wrote: > > Hey Matt, > > Thanks for the tip! Have you ever used any of these in projects of your > own/had any success? I've been looking into tower collector, looks like it > could be a viable solution. I'm certainly all for contributing to the open > source (heck as long as I get the cell coverage in the areas we're looking > into, I couldn't care less who else has the same information). > > Thanks! > > Neal > > > > On Friday, October 16, 2015 at 10:36:29 PM UTC+8, Matt Berg wrote: >> >> Neal, >> >> Not sure if you have seen this. It would mean collecting data outside of >> ODK and then doing the reconciliation after but could potentially be a >> viable approach. >> >> http://wiki.opencellid.org/wiki/Data_sources >> >> Thanks, >> >> Matt >> >> On Fri, Oct 16, 2015 at 11:13 AM, Yaw Anokwa wrote: >> >>> Neal, >>> >>> https://opendatakit.org/help/form-design/external-apps/ is the overview. >>> >>> Those RSSI apps would have to be modified to return the data to >>> Collect. That's not always practical, so you'll likely have to roll >>> your own mini-app to do the return. >>> >>> Yaw >>> -- >>> Need ODK consultants? https://nafundi.com provides form design, server >>> setup, in-field training, and software development for ODK. >>> >>> On Fri, Oct 16, 2015 at 3:05 PM, Neal Barsch wrote: >>> > There are a few external apps that can read rssi data. How would you >>> return >>> > them to collect? >>> > >>> > >>> > On Friday, October 16, 2015 at 3:09:47 PM UTC+8, Neal Barsch wrote: >>> >> >>> >> Not a developer, but would love to collect the cell signal strength >>> (in >>> >> rssi or really any format) in order to map the cell signal strength >>> in areas >>> >> where we have deployed a project. Is this doable in odk collect? >>> >> >>> >> Thanks. >>> >> >>> >> Neal >>> > >>> > -- >>> > -- >>> > Post: opend...@googlegroups.com >>> > Unsubscribe: opendatakit...@googlegroups.com >>> > Options: http://groups.google.com/group/opendatakit?hl=en >>> > >>> > --- >>> > You received this message because you are subscribed to the Google >>> Groups >>> > "ODK Community" group. >>> > To unsubscribe from this group and stop receiving emails from it, send >>> an >>> > email to opendatakit...@googlegroups.com. >>> > For more options, visit https://groups.google.com/d/optout. >>> >>> -- >>> -- >>> Post: opend...@googlegroups.com >>> Unsubscribe: opendatakit...@googlegroups.com >>> Options: http://groups.google.com/group/opendatakit?hl=en >>> >>> --- >>> You received this message because you are subscribed to the Google >>> Groups "ODK Community" group. >>> To unsubscribe from this group and stop receiving emails from it, send >>> an email to opendatakit...@googlegroups.com. >>> For more options, visit https://groups.google.com/d/optout. >>> >> >>

Hi Neal,

Glad you found a solution! Will you be able to share the data (CSV or
in a map)? I'd love to see it.

Yaw

··· -- Need ODK consultants? Nafundi provides form design, server setup, in-field training, and software development for ODK. Go to https://nafundi.com to get started.

On Mon, Jan 11, 2016 at 11:35 PM, Neal Barsch nbarsch@grameenfoundation.org wrote:

Hey all,

Just wanted to update this on the workaround I used. Yaw and Matt, serious
thanks for all you guys do on ODK. Unfortunately paying for a custom widget
was a little out of my organizations budget but we did find a great
workaround via the link Matt sent.

We used TowerCollector (one of the apps in the link:
http://wiki.opencellid.org/wiki/Data_sources) and ran it in the background
on the day-to-day data collection on Samsung Galaxy 2 tablets.
TowerCollector worked in the background of the surveys and gathered a cell
reading (despite documentation to the contrary) even when the tablet screen
was off. This was great for us as it even collected readings when we were
moving between survey locations. During our 3 week project we got about
30,000 readings between two tablets, a bit much for our mapping items, but a
bit of data consolidation using the GPS coordinates to remove duplicate
locations and interspace readings by about 100meters and boom, 5000 nice
cell readings for our map.

TowerCollector must be started every morning and switched off, and exports
must be sent as CSV files, but it was great at collecting cell readings and
GPS coordinates. I don't know if collecting readings when the screen was off
is unique to our galaxy tabs or the fact they are running on Android 4.1.2,
but cool in any case. Either way, using ODK you're going to turn the screen
on anyhow, so you'll get a cell reading during the surveys. Battery drain
was less than expected (we got about 6 hours use out of the tablets before
needing external battery packs in the field, with heavy use and the screen
on most of the time).

We used the geocoder available in Google Earth Pro (the pro version is now
available for free) to geocode all 5000 readings. Were able to filter the
icons by the cell signal to color code them on a scale of green to red.
Exactly what we were looking for.

Figured this could be helpful to somebody in the future.

Cheers (And thanks again Yaw and Matt)!

Neal

On Monday, October 19, 2015 at 2:11:14 PM UTC+8, Neal Barsch wrote:

Hey Matt,

Thanks for the tip! Have you ever used any of these in projects of your
own/had any success? I've been looking into tower collector, looks like it
could be a viable solution. I'm certainly all for contributing to the open
source (heck as long as I get the cell coverage in the areas we're looking
into, I couldn't care less who else has the same information).

Thanks!

Neal

On Friday, October 16, 2015 at 10:36:29 PM UTC+8, Matt Berg wrote:

Neal,

Not sure if you have seen this. It would mean collecting data outside of
ODK and then doing the reconciliation after but could potentially be a
viable approach.

http://wiki.opencellid.org/wiki/Data_sources

Thanks,

Matt

On Fri, Oct 16, 2015 at 11:13 AM, Yaw Anokwa yan...@nafundi.com wrote:

Neal,

https://opendatakit.org/help/form-design/external-apps/ is the overview.

Those RSSI apps would have to be modified to return the data to
Collect. That's not always practical, so you'll likely have to roll
your own mini-app to do the return.

Yaw

Need ODK consultants? https://nafundi.com provides form design, server
setup, in-field training, and software development for ODK.

On Fri, Oct 16, 2015 at 3:05 PM, Neal Barsch nba...@grameenfoundation.org wrote:

There are a few external apps that can read rssi data. How would you
return
them to collect?

On Friday, October 16, 2015 at 3:09:47 PM UTC+8, Neal Barsch wrote:

Not a developer, but would love to collect the cell signal strength
(in
rssi or really any format) in order to map the cell signal strength
in areas
where we have deployed a project. Is this doable in odk collect?

Thanks.

Neal

--

Post: opend...@googlegroups.com
Unsubscribe: opendatakit...@googlegroups.com
Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to the Google
Groups
"ODK Community" group.
To unsubscribe from this group and stop receiving emails from it, send
an
email to opendatakit...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--

Post: opend...@googlegroups.com
Unsubscribe: opendatakit...@googlegroups.com
Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to the Google
Groups "ODK Community" group.
To unsubscribe from this group and stop receiving emails from it, send
an email to opendatakit...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--

Post: opendatakit@googlegroups.com
Unsubscribe: opendatakit+unsubscribe@googlegroups.com
Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to the Google Groups
"ODK Community" group.
To unsubscribe from this group and stop receiving emails from it, send an
email to opendatakit+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Agreed that would be very cool.

Greatly appreciate the update. It's great to here you were able to find a
good solution.

Matt

··· On Tuesday, January 12, 2016, Yaw Anokwa wrote:

Hi Neal,

Glad you found a solution! Will you be able to share the data (CSV or
in a map)? I'd love to see it.

Yaw

Need ODK consultants? Nafundi provides form design, server setup,
in-field training, and software development for ODK. Go to
https://nafundi.com to get started.

On Mon, Jan 11, 2016 at 11:35 PM, Neal Barsch <nbarsch@grameenfoundation.org <javascript:;>> wrote:

Hey all,

Just wanted to update this on the workaround I used. Yaw and Matt,
serious
thanks for all you guys do on ODK. Unfortunately paying for a custom
widget
was a little out of my organizations budget but we did find a great
workaround via the link Matt sent.

We used TowerCollector (one of the apps in the link:
http://wiki.opencellid.org/wiki/Data_sources) and ran it in the
background
on the day-to-day data collection on Samsung Galaxy 2 tablets.
TowerCollector worked in the background of the surveys and gathered a
cell
reading (despite documentation to the contrary) even when the tablet
screen
was off. This was great for us as it even collected readings when we were
moving between survey locations. During our 3 week project we got about
30,000 readings between two tablets, a bit much for our mapping items,
but a
bit of data consolidation using the GPS coordinates to remove duplicate
locations and interspace readings by about 100meters and boom, 5000 nice
cell readings for our map.

TowerCollector must be started every morning and switched off, and
exports
must be sent as CSV files, but it was great at collecting cell readings
and
GPS coordinates. I don't know if collecting readings when the screen was
off
is unique to our galaxy tabs or the fact they are running on Android
4.1.2,
but cool in any case. Either way, using ODK you're going to turn the
screen
on anyhow, so you'll get a cell reading during the surveys. Battery drain
was less than expected (we got about 6 hours use out of the tablets
before
needing external battery packs in the field, with heavy use and the
screen
on most of the time).

We used the geocoder available in Google Earth Pro (the pro version is
now
available for free) to geocode all 5000 readings. Were able to filter the
icons by the cell signal to color code them on a scale of green to red.
Exactly what we were looking for.

Figured this could be helpful to somebody in the future.

Cheers (And thanks again Yaw and Matt)!

Neal

On Monday, October 19, 2015 at 2:11:14 PM UTC+8, Neal Barsch wrote:

Hey Matt,

Thanks for the tip! Have you ever used any of these in projects of your
own/had any success? I've been looking into tower collector, looks
like it

could be a viable solution. I'm certainly all for contributing to the
open

source (heck as long as I get the cell coverage in the areas we're
looking

into, I couldn't care less who else has the same information).

Thanks!

Neal

On Friday, October 16, 2015 at 10:36:29 PM UTC+8, Matt Berg wrote:

Neal,

Not sure if you have seen this. It would mean collecting data outside
of

ODK and then doing the reconciliation after but could potentially be a
viable approach.

http://wiki.opencellid.org/wiki/Data_sources

Thanks,

Matt

On Fri, Oct 16, 2015 at 11:13 AM, Yaw Anokwa <yan...@nafundi.com <javascript:;>> wrote:

Neal,

https://opendatakit.org/help/form-design/external-apps/ is the
overview.

Those RSSI apps would have to be modified to return the data to
Collect. That's not always practical, so you'll likely have to roll
your own mini-app to do the return.

Yaw

Need ODK consultants? https://nafundi.com provides form design,
server

setup, in-field training, and software development for ODK.

On Fri, Oct 16, 2015 at 3:05 PM, Neal Barsch <nba...@grameenfoundation.org <javascript:;>> wrote:

There are a few external apps that can read rssi data. How would you
return
them to collect?

On Friday, October 16, 2015 at 3:09:47 PM UTC+8, Neal Barsch wrote:

Not a developer, but would love to collect the cell signal strength
(in
rssi or really any format) in order to map the cell signal strength
in areas
where we have deployed a project. Is this doable in odk collect?

Thanks.

Neal

--

Post: opend...@googlegroups.com <javascript:;>
Unsubscribe: opendatakit...@googlegroups.com <javascript:;>
Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to the Google
Groups
"ODK Community" group.
To unsubscribe from this group and stop receiving emails from it,
send

an
email to opendatakit...@googlegroups.com <javascript:;>.
For more options, visit https://groups.google.com/d/optout.

--

Post: opend...@googlegroups.com <javascript:;>
Unsubscribe: opendatakit...@googlegroups.com <javascript:;>
Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to the Google
Groups "ODK Community" group.
To unsubscribe from this group and stop receiving emails from it, send
an email to opendatakit...@googlegroups.com <javascript:;>.
For more options, visit https://groups.google.com/d/optout.

--

Post: opendatakit@googlegroups.com <javascript:;>
Unsubscribe: opendatakit+unsubscribe@googlegroups.com <javascript:;>
Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to the Google Groups
"ODK Community" group.
To unsubscribe from this group and stop receiving emails from it, send an
email to opendatakit+unsubscribe@googlegroups.com <javascript:;>.
For more options, visit https://groups.google.com/d/optout.

--

Post: opendatakit@googlegroups.com <javascript:;>
Unsubscribe: opendatakit+unsubscribe@googlegroups.com <javascript:;>
Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to the Google Groups
"ODK Community" group.
To unsubscribe from this group and stop receiving emails from it, send an
email to opendatakit+unsubscribe@googlegroups.com <javascript:;>.
For more options, visit https://groups.google.com/d/optout.

Hey Matt and Yaw,

Sorry for the (very) slow reply on this. Had to run approval up the chain
in my org to share a bit of the data. I can give you guys some screenshots
and a sample.

So basically what we did was collected the cell signal using TowerCollector
in the background of Samsung Galaxy 2 tabs that we were also using with
ODK. TowerCollector claims it only collects data when the screen is on, but
like I said before this wasn't the case with our tabs (it collected with
the screen off or on). This may be due to the old android version we are
still using (and now I'm afraid to update them because I like that the cell
signal is collected even with the screen off).

Attached is a CSV output of a small sample (100 readings) but you get the
idea. We have collected about 30,000 of these readings now.

Once we have the readings we use Google Earth Pro to geocode and map them
(Google Earth Pro became free as of last
year: http://www.google.com.ph/earth/download/gep/agree.html)

One caveat that took me about an hour and a half to figure out a 3 second
solution: if you're working on a mac, you have to save the CSV as WINDOWS
FORMATTED CSV, rather than a mac formatted CSV otherwise Google Earth Pro
can't read them.

Earth pro can batch geocode the csv from there, but slows down after around
5000 readings as I have tested (it claims to slow down after 2500, but I
have found it's fine up to about 5k). With 30,000 readings that presented
an issue, though. We really only needed one reading about every 100-200
meters rather than the about every 20 meters that TowerCollector returned.
In excel I sorted the cell signal datapoints by timestamp (time is
collected automatically in TowerCollector), ran a quick repetition of 1-10
in a column, then re-sorted keeping only the 1's. This basically weeded out
9/10 datapoints in the order they were collected giving us a datapoint
every 200 meters rather than 20 meters. Google had no problem handling and
mapping the aprox. now 3000 points rather than 30,000.

I applied a style template to Earth Pro to sort the icon color by the
signal strength column (red to green, red being weak signal, green being
strong signal). I also sorted it based on 3G/2G signal. I don't know the
details of other countries, but here in the Philippines 3G is run
exclusively UMTS and 2G is run exclusively GSM, so it was easy to sort
2G/3G signal based on the net_type column returned by TowerCollector. In
other countries it may be different. Even if that hadn't been available,
the GSM towers are coded with a 5 digit tower ID in the Philippines, 3G
towers are coded 9 digits, so I could have done it that way. Again, this
may be exclusive to the Philippines and other countries code differently, I
don't know as the only country I've done this in is the Philippines. I'm
also not sure what LTE signal would look like collected (the availability
of LTE in the rural Philippines is basically zero, even though urban Manila
and other cities have LTE).

This is what the sample CSV (attached here) codes to using the style
template in google earth pro:

https://lh3.googleusercontent.com/-zDg3CJecpzE/VuJTIAmyGWI/AAAAAAAAAIM/plaVP_WLCZgUbhqNmVqss10AK25jdQjqw/s1600/Screen%2BShot%2B2016-03-11%2Bat%2B1.09.23%2BPM.png

With the following, if anybody has any tips please let me know. Would be
greatly appreciated:

What I'm working on from here is actually trying to deduce the cell site
locations themselves based on the readings. OpenCellID does some of this,
but I haven't found it to be all that accurate nor have cell sites where
I'm working.

I decided I'd try to write my own to try to figure out the cell site
locations. I have an econometrics background, but not a computer
programming one, so designing an app to do this was out of the question so
I'm currently trying to complete some work arounds.

I did a "where's waldo" style google earth search for a few of the towers
that my cell data readings were coming from. Once I found about 8 of the
towers (literally just going on google earth and looking for them as
associated with my readings) I wrote a quick and dirty quadratic regression
in Stata to get a basic assessment of the relationship between distance to
the tower and signal strength. Luckily, the geography of the terrain where
we are working is fairly consistent, so the algorithm came out pretty
decently when I compared it. Basically I wanted an average distance away
from the cell tower for each of my readings (i.e. at DBM -95 the distance
should be aprox. X km). I realize that this isn't going to be perfect, but
with a bunch of readings the distances estimated should converge near the
tower.

Indeed it worked fairly well visually, and using the website gpsvisualizer
which has an option to add circle radius' around GPS points I was able to
visually identify the locations of a few towers:

GPSVisualizer output:

https://lh3.googleusercontent.com/-D99uAZ3qtVE/VuJWno92wVI/AAAAAAAAAIY/bouzz4j1X2MRuKEp9ZKjHDIOjgOwbNXvg/s1600/Screen%2BShot%2B2016-03-11%2Bat%2B1.15.36%2BPM.png

Zooming in on near where the most radius' overlap (about 150 meters away
from the densest overlap) and sure enough, there's the tower!

https://lh3.googleusercontent.com/-JU-GzR5AtXo/VuJW2-VywYI/AAAAAAAAAIc/dJ5BcrL-HVAUAIEAeYmEiCSzVe6c6u87A/s1600/Screen%2BShot%2B2016-03-11%2Bat%2B1.15.57%2BPM.png

I have 30,000 readings and hundreds of towers though, so where I am
currently (and a little hung up) is automating this process. Getting the
overlaps of two circles based on centerpoint and radius is fairly easy
using calculus. Getting the overlaps of tens or even hundreds is wayyyy
more complex. I wish I had access to MatLab and the experience to write the
MatLab code, but I just don't on either count. I have been thinking about
using haversine and bearing to calculate the locations of each degree of
each circle in excel then comparing them, but concluded the resulting excel
sheet would be 360*360, then comparing and min the distance would be
psychotic. Plus not every tower has the same number of readings so
customizing that would be a pain. I looked into using MATA in Stata for
optimization, might be possible but would be a pain. Same goes for a monte
carlo method based approach.

An excel based approach where I just took the best cell signal circle and
compared all the other circle points to one circle might be possible,
rather than comparing all of the overlaps, could be possible. I just
haven't had the time to plug it out and see if it works or is accurate at
all. Should be.

I thought about doing a weighted average of the coordinates collected based
on the signal strength of each coordinate, but the issue is I have a lot of
readings along roads where the cell tower is likely off the road. If I had
coordinates all the way around a tower this approach would be great, but
unfortunately in a majority of cases I just don't.

I also thought about trying to get a bearing based on how the cell signal
changes from point to point, then estimating out the distance based on the
bearing. There are quite few towers though where I don't have enough
readings to get a bearing, so I'd drop a lot of data if I had to do it this
way. Might give it a shot in the future though.

Anybody else have any ideas?

Cheers,

Neal

(Attached is the sample CSV of 100 readings from our dataset)

CellSignalSample.csv (12.3 KB)

··· On Wednesday, January 13, 2016 at 7:35:37 PM UTC+8, Matt Berg wrote: > > Agreed that would be very cool. > > Greatly appreciate the update. It's great to here you were able to find a > good solution. > > Matt > > On Tuesday, January 12, 2016, Yaw Anokwa <yan...@nafundi.com > wrote: > >> Hi Neal, >> >> Glad you found a solution! Will you be able to share the data (CSV or >> in a map)? I'd love to see it. >> >> Yaw >> -- >> Need ODK consultants? Nafundi provides form design, server setup, >> in-field training, and software development for ODK. Go to >> https://nafundi.com to get started. >> >> On Mon, Jan 11, 2016 at 11:35 PM, Neal Barsch wrote: >> > Hey all, >> > >> > Just wanted to update this on the workaround I used. Yaw and Matt, >> serious >> > thanks for all you guys do on ODK. Unfortunately paying for a custom >> widget >> > was a little out of my organizations budget but we did find a great >> > workaround via the link Matt sent. >> > >> > We used TowerCollector (one of the apps in the link: >> > http://wiki.opencellid.org/wiki/Data_sources) and ran it in the >> background >> > on the day-to-day data collection on Samsung Galaxy 2 tablets. >> > TowerCollector worked in the background of the surveys and gathered a >> cell >> > reading (despite documentation to the contrary) even when the tablet >> screen >> > was off. This was great for us as it even collected readings when we >> were >> > moving between survey locations. During our 3 week project we got about >> > 30,000 readings between two tablets, a bit much for our mapping items, >> but a >> > bit of data consolidation using the GPS coordinates to remove duplicate >> > locations and interspace readings by about 100meters and boom, 5000 nice >> > cell readings for our map. >> > >> > TowerCollector must be started every morning and switched off, and >> exports >> > must be sent as CSV files, but it was great at collecting cell readings >> and >> > GPS coordinates. I don't know if collecting readings when the screen >> was off >> > is unique to our galaxy tabs or the fact they are running on Android >> 4.1.2, >> > but cool in any case. Either way, using ODK you're going to turn the >> screen >> > on anyhow, so you'll get a cell reading during the surveys. Battery >> drain >> > was less than expected (we got about 6 hours use out of the tablets >> before >> > needing external battery packs in the field, with heavy use and the >> screen >> > on most of the time). >> > >> > We used the geocoder available in Google Earth Pro (the pro version is >> now >> > available for free) to geocode all 5000 readings. Were able to filter >> the >> > icons by the cell signal to color code them on a scale of green to red. >> > Exactly what we were looking for. >> > >> > Figured this could be helpful to somebody in the future. >> > >> > Cheers (And thanks again Yaw and Matt)! >> > >> > Neal >> > >> > On Monday, October 19, 2015 at 2:11:14 PM UTC+8, Neal Barsch wrote: >> >> >> >> Hey Matt, >> >> >> >> Thanks for the tip! Have you ever used any of these in projects of your >> >> own/had any success? I've been looking into tower collector, looks >> like it >> >> could be a viable solution. I'm certainly all for contributing to the >> open >> >> source (heck as long as I get the cell coverage in the areas we're >> looking >> >> into, I couldn't care less who else has the same information). >> >> >> >> Thanks! >> >> >> >> Neal >> >> >> >> >> >> >> >> On Friday, October 16, 2015 at 10:36:29 PM UTC+8, Matt Berg wrote: >> >>> >> >>> Neal, >> >>> >> >>> Not sure if you have seen this. It would mean collecting data >> outside of >> >>> ODK and then doing the reconciliation after but could potentially be a >> >>> viable approach. >> >>> >> >>> http://wiki.opencellid.org/wiki/Data_sources >> >>> >> >>> Thanks, >> >>> >> >>> Matt >> >>> >> >>> On Fri, Oct 16, 2015 at 11:13 AM, Yaw Anokwa wrote: >> >>>> >> >>>> Neal, >> >>>> >> >>>> https://opendatakit.org/help/form-design/external-apps/ is the >> overview. >> >>>> >> >>>> Those RSSI apps would have to be modified to return the data to >> >>>> Collect. That's not always practical, so you'll likely have to roll >> >>>> your own mini-app to do the return. >> >>>> >> >>>> Yaw >> >>>> -- >> >>>> Need ODK consultants? https://nafundi.com provides form design, >> server >> >>>> setup, in-field training, and software development for ODK. >> >>>> >> >>>> On Fri, Oct 16, 2015 at 3:05 PM, Neal Barsch wrote: >> >>>> > There are a few external apps that can read rssi data. How would >> you >> >>>> > return >> >>>> > them to collect? >> >>>> > >> >>>> > >> >>>> > On Friday, October 16, 2015 at 3:09:47 PM UTC+8, Neal Barsch wrote: >> >>>> >> >> >>>> >> Not a developer, but would love to collect the cell signal >> strength >> >>>> >> (in >> >>>> >> rssi or really any format) in order to map the cell signal >> strength >> >>>> >> in areas >> >>>> >> where we have deployed a project. Is this doable in odk collect? >> >>>> >> >> >>>> >> Thanks. >> >>>> >> >> >>>> >> Neal >> >>>> > >> >>>> > -- >> >>>> > -- >> >>>> > Post: opend...@googlegroups.com >> >>>> > Unsubscribe: opendatakit...@googlegroups.com >> >>>> > Options: http://groups.google.com/group/opendatakit?hl=en >> >>>> > >> >>>> > --- >> >>>> > You received this message because you are subscribed to the Google >> >>>> > Groups >> >>>> > "ODK Community" group. >> >>>> > To unsubscribe from this group and stop receiving emails from it, >> send >> >>>> > an >> >>>> > email to opendatakit...@googlegroups.com. >> >>>> > For more options, visit https://groups.google.com/d/optout. >> >>>> >> >>>> -- >> >>>> -- >> >>>> Post: opend...@googlegroups.com >> >>>> Unsubscribe: opendatakit...@googlegroups.com >> >>>> Options: http://groups.google.com/group/opendatakit?hl=en >> >>>> >> >>>> --- >> >>>> You received this message because you are subscribed to the Google >> >>>> Groups "ODK Community" group. >> >>>> To unsubscribe from this group and stop receiving emails from it, >> send >> >>>> an email to opendatakit...@googlegroups.com. >> >>>> For more options, visit https://groups.google.com/d/optout. >> >>> >> >>> >> > -- >> > -- >> > Post: opendatakit@googlegroups.com >> > Unsubscribe: opendatakit+unsubscribe@googlegroups.com >> > Options: http://groups.google.com/group/opendatakit?hl=en >> > >> > --- >> > You received this message because you are subscribed to the Google >> Groups >> > "ODK Community" group. >> > To unsubscribe from this group and stop receiving emails from it, send >> an >> > email to opendatakit+unsubscribe@googlegroups.com. >> > For more options, visit https://groups.google.com/d/optout. >> >> -- >> -- >> Post: opendatakit@googlegroups.com >> Unsubscribe: opendatakit+unsubscribe@googlegroups.com >> Options: http://groups.google.com/group/opendatakit?hl=en >> >> --- >> You received this message because you are subscribed to the Google Groups >> "ODK Community" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to opendatakit+unsubscribe@googlegroups.com. >> For more options, visit https://groups.google.com/d/optout. >> >