craigerl / digipi Goto Github PK
View Code? Open in Web Editor NEWDigiPi code and config files
DigiPi code and config files
In the latest patreon build image (1.8-1) the code lines
if (isset($_POST["flrig"])) { $output = shell_exec("sudo sed -i 's/NEWFLRIG=.*/NEWFLRIG=1/gi' /home/pi/localize.sh "); } if (isset($_POST["bigvnc"])) { $output = shell_exec("sudo sed -i 's/NEWBIGVNC=.*/NEWBIGVNC=1/gi' /home/pi/localize.sh "); }
Don't have a matching entry to edit in the header of localize.sh meaning that neither of those options are set.
During the setup it would be beneficial to be able to see the devices connected to the digipi, ideally this would look something like a device manager tree but filtered by "potential" radio devices, probably in a javascript app interrogating /dev/tty* for example that updates when new devices are connected allowing users to see whats connected, as its plugged in
Hello Sir,
I believe it would be a nicer on-boarding experience if the initial configuration screen had an option to enter the users grid square and have the latitude and longitude calculated for them.
Something like:
def gridtolatlon(maiden):
"""
Converts a maidenhead gridsquare to a latitude longitude pair.
"""
try:
maiden = str(maiden).strip().upper()
chars_in_grid_square = len(maiden)
if not 8 >= chars_in_grid_square >= 2 and chars_in_grid_square % 2 == 0:
return 0, 0
lon = (ord(maiden[0]) - 65) * 20 - 180
lat = (ord(maiden[1]) - 65) * 10 - 90
if chars_in_grid_square >= 4:
lon += (ord(maiden[2]) - 48) * 2
lat += ord(maiden[3]) - 48
if chars_in_grid_square >= 6:
lon += (ord(maiden[4]) - 65) / 12 + 1 / 24
lat += (ord(maiden[5]) - 65) / 24 + 1 / 48
if chars_in_grid_square >= 8:
lon += (ord(maiden[6])) * 5.0 / 600
lat += (ord(maiden[7])) * 2.5 / 600
return round(lat, 4), round(lon, 4)
except IndexError:
return 0, 0
Since most people know their gridsquare, this maybe useful.
Cheers!
Mike K6GTE
Just wondering where the php scripts and web interface code can be found in this repository?
Things like setup.php are referred to in other issues here but aren't present within your repository.
Not looking for the image or compiled code, I can happily get that from patreon, but isn't the entire project meant to be open source?
Fresh install on a Zero W. Image written via Rufus on Windows.
Boots fine, I can access the Pi/web UI via an ethernet dongle. dmesg
output below seems to indicate some kind of issue with the inbuilt WiFi card:
[ 92.961392] brcmfmac: brcmf_cfg80211_set_power_mgmt: power save disabled
[ 95.526097] brcmfmac: brcmf_sdio_bus_rxctl: resumed on timeout
[ 95.529838] ieee80211 phy0: brcmf_cfg80211_set_power_mgmt: error (-110)
[ 98.085987] brcmfmac: brcmf_sdio_bus_rxctl: resumed on timeout
[ 98.089575] ieee80211 phy0: brcmf_cfg80211_set_power_mgmt: Unable to set pm timeout, (-110)
[ 124.086033] brcmfmac: brcmf_sdio_bus_rxctl: resumed on timeout
[ 126.646043] brcmfmac: brcmf_sdio_bus_rxctl: resumed on timeout
[ 129.206052] brcmfmac: brcmf_sdio_bus_rxctl: resumed on timeout
[ 131.766020] brcmfmac: brcmf_sdio_bus_rxctl: resumed on timeout
[ 131.769619] ieee80211 phy0: brcmf_dongle_scantime: Scan assoc time error (-110)
[ 134.326013] brcmfmac: brcmf_sdio_bus_rxctl: resumed on timeout
[ 134.329676] ieee80211 phy0: brcmf_netdev_open: failed to bring up cfg80211
[ 138.726024] brcmfmac: brcmf_sdio_bus_rxctl: resumed on timeout
[ 138.729682] ieee80211 phy0: brcmf_cfg80211_get_channel: chanspec failed (-110)
[ 141.285992] brcmfmac: brcmf_sdio_bus_rxctl: resumed on timeout
[ 141.289645] ieee80211 phy0: brcmf_cfg80211_get_tx_power: error (-110)
[ 143.845962] brcmfmac: brcmf_sdio_bus_rxctl: resumed on timeout
[ 143.849544] ieee80211 phy0: brcmf_cfg80211_get_channel: chanspec failed (-110)
[ 146.405993] brcmfmac: brcmf_sdio_bus_rxctl: resumed on timeout
[ 146.409659] ieee80211 phy0: brcmf_cfg80211_get_tx_power: error (-110)
[ 148.965998] brcmfmac: brcmf_sdio_bus_rxctl: resumed on timeout
[ 148.969651] ieee80211 phy0: brcmf_cfg80211_get_channel: chanspec failed (-110)
[ 151.525986] brcmfmac: brcmf_sdio_bus_rxctl: resumed on timeout
[ 151.529668] ieee80211 phy0: brcmf_cfg80211_get_tx_power: error (-110)
[ 154.086087] ieee80211 phy0: brcmf_proto_bcdc_query_dcmd: brcmf_proto_bcdc_msg failed w/status -110
[ 154.086121] ieee80211 phy0: brcmf_cfg80211_get_channel: chanspec failed (-110)
[ 156.645978] ieee80211 phy0: brcmf_proto_bcdc_query_dcmd: brcmf_proto_bcdc_msg failed w/status -110
[ 156.646016] ieee80211 phy0: brcmf_cfg80211_get_tx_power: error (-110)
[ 159.205983] ieee80211 phy0: brcmf_proto_bcdc_query_dcmd: brcmf_proto_bcdc_msg failed w/status -110
[ 159.206025] ieee80211 phy0: brcmf_cfg80211_get_channel: chanspec failed (-110)
[ 161.765978] ieee80211 phy0: brcmf_proto_bcdc_query_dcmd: brcmf_proto_bcdc_msg failed w/status -110
[ 161.766018] ieee80211 phy0: brcmf_cfg80211_get_tx_power: error (-110)
[ 164.325999] ieee80211 phy0: brcmf_proto_bcdc_query_dcmd: brcmf_proto_bcdc_msg failed w/status -110
[ 169.445939] ieee80211 phy0: brcmf_dongle_scantime: Scan assoc time error (-110)
[ 172.005984] ieee80211 phy0: brcmf_netdev_open: failed to bring up cfg80211
Some more useful output from hostapd
:
Jun 13 11:09:34 digipi hostapd[1710]: Could not set interface wlan0 flags (UP): Input/output error
Jun 13 11:09:34 digipi hostapd[1710]: nl80211: Could not set interface 'wlan0' UP
Jun 13 11:09:34 digipi kernel: [ 577.926110] ieee80211 phy0: brcmf_netdev_open: failed to bring up cfg80211
Jun 13 11:09:34 digipi hostapd[1710]: nl80211: deinit ifname=wlan0 disabled_11b_rates=0
Jun 13 11:09:37 digipi kernel: [ 580.486115] ieee80211 phy0: brcmf_proto_bcdc_query_dcmd: brcmf_proto_bcdc_msg failed w/status -110
Jun 13 11:09:37 digipi kernel: [ 580.486155] ieee80211 phy0: brcmf_cfg80211_get_channel: chanspec failed (-110)
Jun 13 11:09:39 digipi hostapd[1710]: nl80211 driver initialization failed.
Jun 13 11:09:39 digipi kernel: [ 583.046116] ieee80211 phy0: brcmf_proto_bcdc_query_dcmd: brcmf_proto_bcdc_msg failed w/status -110
Jun 13 11:09:39 digipi kernel: [ 583.046153] ieee80211 phy0: brcmf_cfg80211_get_tx_power: error (-110)
Jun 13 11:09:39 digipi hostapd[1710]: wlan0: interface state UNINITIALIZED->DISABLED
Jun 13 11:09:39 digipi hostapd[1710]: wlan0: AP-DISABLED
Jun 13 11:09:39 digipi hostapd[1710]: wlan0: CTRL-EVENT-TERMINATING
Jun 13 11:09:39 digipi hostapd[1710]: hostapd_free_hapd_data: Interface wlan0 wasn't started
I think I'm gonna get a Zero 2 W to test, but figured this bug report might help others, especially if there's a documented fix floating around somewhere.
As an aside: is there supposed to be something on the TFT display by default?
Because many GPS enabled radios (and other devices) cannot get a GPS lock indoors, switching between a static location (Home) or using the Real-Time location would be a great feature.
In addition being able to update a static location without starting over with your image would be helpful.
I think a drop-down would be ideal:
I'm using 1.8.1 on a RP4.
Trying to change the wifi with raspi-conf returns "There was an error running option S1 Wireless LAN".
I've tried editing /etc/wpa_supplicant/wpa_supplicant.conf and running
wpa_supplicant -i wlan0 -c /etc/wpa_supplicant/wpa_supplicant.conf
Please consider adding the following feature to the next release:
Description: GPSD Configurator
Suggested implementation
Update initial config script html to ask for the GPS Device ID
Update the localize.sh script to configure /etc/default/gpsd with the device info.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.