Thank you for your donation!


Cloudsmith graciously provides open-source package management and distribution for our project.


Auto-config wifi setup issues
#1
Hi all,

I am new to the world of Moode and having an issue that I was hoping to get some support with. I am running Moode 8.3.6 (32-bit) on a old Raspberry Pi 2B I had lying around. I am trying to run the auto-config to set up Access Point mode. I followed the instructions, and modified the apdpwd value to set a network password, but when I boot up my Pi the network doesn't show up. I've tried using the default "Moode" SSID, changing the SSID, doesn't matter. The weird thing is, if I copy and paste the moodecfg.ini file to /boot without making any changes, the "Moode" network will show up, but it prompts for a password when none has been set, and therefore I can't connect. 

Below is the moodecfg.ini file with the AP network info entered: 
Quote:; #########################################
; Copy this file to /boot/moodecfg.ini
; It will be processed at startup and the
; system will automatically Restart.
;
; All param = "value" pairs must be present.
; Set wlanssid = blank to start AP mode.
; Example: wlanssid = ""
;
; Moode Release : 8.0.0 2022-03-12
; Create date : 2022-03-12 14:30:51
;
; ##########################################

[Names]
browsertitle = "moOde Player"
hostname = "moode"
btname = "Moode Bluetooth"
airplayname = "Moode AirPlay"
spotifyname = "Moode Spotify"
squeezelitename = "Moode"
upnpname = "Moode UPNP"
dlnaname = "Moode DLNA"

[System]
timezone = "America/Detroit"
keyboard = "us"
cpugov = "ondemand"
hdmiport = "1"
ipaddr_timeout = "90"
eth0chk = "0"
led_state = "1,1"
localui = "0"
p3wifi = "1"
p3bt = "1"

[I2S Device]
i2soverlay = "None"
i2sdevice = "None"

[ALSA]
alsa_output_mode = "plughw"
alsa_loopback = "Off"

[Multiroom]
multiroom_tx = "Off"
multiroom_rx = "Disabled"
multiroom_tx_bfr = "64"
multiroom_tx_host = "239.0.0.1"
multiroom_tx_port = "1350"
multiroom_tx_sample_rate = "48000"
multiroom_tx_channels = "2"
multiroom_tx_frame_size = "1920"
multiroom_tx_bitrate = "128"
multiroom_rx_bfr = "64"
multiroom_rx_host = "239.0.0.1"
multiroom_rx_port = "1350"
multiroom_rx_jitter_bfr = "32"
multiroom_rx_sample_rate = "48000"
multiroom_rx_channels = "2"
multiroom_initial_volume = "0"
multiroom_tx_rtprio = "45"
multiroom_tx_query_timeout = "1"
multiroom_rx_frame_size = "1920"
multiroom_rx_rtprio = "45"
multiroom_rx_alsa_output_mode = "plughw"
multiroom_rx_mastervol_opt_in = "0"
multiroom_initial_volume = "0"

[MPD]
mixer_type = "hardware"
device = "0"
audio_output_format = "disabled"
selective_resample_mode = "0"
sox_quality = "high"
sox_multithreading = "1"
sox_precision = "20"
sox_phase_response = "50"
sox_passband_end = "95"
sox_stopband_begin = "100"
sox_attenuation = "0"
sox_flags = "0"
dop = "no"
replaygain = "off"
replaygain_preamp = "0"
volume_normalization = "no"
audio_buffer_size = "4096"
max_output_buffer_size = "131072"
max_playlist_length = "16384"
input_cache = "Disabled"
log_level = "default"
stop_dsd_silence = "no"
thesycon_dsd_workaround = "no"
autoplay = "0"
mpdcrossfade = "0"
crossfeed = "Off"
invert_polarity = "0"
volume_step_limit = "10"
volume_mpd_max = "100"
volume_db_display = "0"
ashufflesvc = "0"
ashuffle_mode = "Track"
ashuffle_filter = "None"
mpd_httpd = "0"
mpd_httpd_port = "8000"
mpd_httpd_encoder = "lame"

[DSP]
alsaequal = "Off"
eqfa12p = "Off"
camilladsp_quickconv = "0;Sennheiser_HD800S_L_44100Hz_32b.raw;Sennheiser_HD800S_R_44100Hz_32b.raw;S32LE'"
cdsp_fix_playback = "Yes"
camilladsp = "off"

[Parametric EQ]
eqp12_curve_name[0] = "Default curve"
eqp12_settings[0] = "0 20 1 0  0 20 1 0  0 20 1 0  0 20 1 0  0 20 1 0  0 20 1 0  0 20 1 0  0 20 1 0  0 20 1 0  0 20 1 0  0 20 1 0  0 20 1 0  0"
eqp12_active[0] = "No"

[Graphic EQ]
eqg_curve_name[0] = "Flat"
eqg_curve_values[0] = "60,60,60,60,60,60,60,60,60,60"
eqg_curve_name[1] = "Lo Boost"
eqg_curve_values[1] = "60,72,60,60,60,60,60,60,60,60"
eqg_curve_name[2] = "Lo Boost Plus"
eqg_curve_values[2] = "68,78,68,60,60,60,60,60,60,60"
eqg_curve_name[3] = "Hi Boost"
eqg_curve_values[3] = "60,60,60,60,60,60,60,60,72,60"
eqg_curve_name[4] = "Hi Boost Plus"
eqg_curve_values[4] = "60,60,60,60,60,60,60,68,78,68"
eqg_curve_name[5] = "Hi-Lo Boost"
eqg_curve_values[5] = "60,72,60,60,60,60,60,60,72,60"
eqg_curve_name[6] = "Hi-Lo Boost Plus"
eqg_curve_values[6] = "68,78,68,60,60,60,60,68,78,68"
eqg_curve_name[7] = "Midrange Suppress"
eqg_curve_values[7] = "60,60,60,60,39,39,60,60,60,60"
eqg_curve_name[8] = "Shallow V"
eqg_curve_values[8] = "60,68,60,54,44,44,54,60,68,60"
eqg_curve_name[9] = "Classic V"
eqg_curve_values[9] = "60,72,60,60,39,39,60,60,72,60"
eqg_curve_name[10] = "Classic V Plus"
eqg_curve_values[10] = "68,78,68,60,39,39,60,68,78,68"
eqg_curve_name[11] = "Vinyl Touch"
eqg_curve_values[11] = "60,66,62,61,60,60,60,54,48,68"
eqg_curve_name[12] = "Vinyl Touch Plus"
eqg_curve_values[12] = "60,68,64,60,60,60,60,46,41,68"

[Renderers]
btsvc = "0"
pairing_agent = "0"
btmulti = "0"
rsmafterbt = "0"
airplaysvc = "0"
rsmafterapl = "No"
spotifysvc = "0"
rsmafterspot = "No"
slsvc = "0"
rsmaftersl = "No"
rbsvc = "0"
rsmafterrb = "No"

[Bluetooth]
bluez_pcm_buffer = "500000"
audioout = "Local"

[AirPlay]
airplay_interpolation = "soxr"
airplay_output_format = "S16"
airplay_output_rate = "44100"
airplay_allow_session_interruption = "no"
airplay_session_timeout = "120"
airplay_audio_backend_latency_offset_in_seconds = "0.0"
airplay_audio_backend_buffer_desired_length_in_seconds = "0.2"

[Spotify]
spotify_bitrate = "160"
spotify_initial_volume = "0"
spotify_volume_curve = "log"
spotify_volume_normalization = "No"
spotify_normalization_pregain = "0"
spotify_autoplay = "No"
spotify_normalization_method = "dynamic"
spotify_normalization_gain_type = "auto"
spotify_normalization_threshold = "-2"
spotify_normalization_attack = "5"
spotify_normalization_release = "100"
spotify_normalization_knee = "1"
spotify_format = "S16"
spotify_dither = ""
spotify_volume_range = "60"

[Squeezelite]
squeezelite_PLAYERNAME = "Moode"
squeezelite_AUDIODEVICE = "0"
squeezelite_ALSAPARAMS = "80:4::1"
squeezelite_OUTPUTBUFFERS = "40000:100000"
squeezelite_TASKPRIORITY = "45"
squeezelite_CODECS = "flac,pcm,mp3,ogg,aac,alac,dsd"
squeezelite_OTHEROPTIONS = "-W -D 500 -R E -S /var/local/www/commandw/slpower.sh"

[UPnP/DLNA]
upnpsvc = "0"
dlnasvc = "0"
upnpav = "1"
openhome = "0"
checkcontentformat = "1"

[Network (eth0)]
ethmethod = "dhcp"
ethipaddr = ""
ethnetmask = ""
ethgateway = ""
ethpridns = ""
ethsecdns = ""

[Network (wlan0)]
wlanmethod = "dhcp"
wlanipaddr = ""
wlannetmask = ""
wlangateway = ""
wlanpridns = ""
wlansecdns = ""
wlanssid = ""
wlanpwd = ""
wlansec = "wpa"
wlancountry = "US"

[Network (apd0)]
apdssid = "Speakers"
apdpwd = "moodeaudio"
apdchan = "6"

[Appearance]
themename = "Default"
accent_color = "Carrot"
alphablend = "1.0"
adaptive = "No"
cover_backdrop = "No"
cover_blur = "20px"
cover_scale = "1.25"
font_size = "Normal"

[Playback]
playlist_art = "Yes"
extra_tags = "album,genre,track,disc,date,composer,conductor,performer,encoded"
playhist = "No"
show_npicon = "Yes"
show_cvpb = "Yes"

[Library]
library_onetouch_album = "Play"
library_onetouch_radio = "Play"
library_albumview_sort = "Artist"
library_tagview_sort = "Artist"
library_recently_added = "2592000000"
library_encoded_at = "9"
library_covsearchpri = "Embedded cover"
library_hiresthm = "Auto"
library_thumbnail_columns = "6/2 (Default)"

[Library (Advanced)]
library_tagview_genre = "Genres"
library_tagview_artist = "Artist"
library_misc_options = "No,Album@Artist (Default)"
library_ignore_articles = "a,an,the"
library_show_genres = "Yes"
library_tagview_covers = "Yes"
library_ellipsis_limited_text = "No"
library_utf8rep = "No"

[CoverView]
scnsaver_style = "Gradient (Linear)"
scnsaver_timeout = "Never"

[Internal]
first_use_help = "Yes"

[Sources]
usb_auto_updatedb = "0"
cuefiles_ignore = "1"


I might be missing an obvious step but as I said I'm new to Moode so I appreciate any help!

Cheers!
Reply
#2
Did you prep the image using the Pi Imager to enable SSH and setup a userid and password?
Enjoy the Music!
moodeaudio.org | Mastodon Feed | GitHub
Reply
#3
(10-11-2023, 01:39 PM)Tim Curtis Wrote: Did you prep the image using the Pi Imager to enable SSH and setup a userid and password?

Yes, I did both.
Reply
#4
To troubleshoot:

1. Reboot and wait 3 minutes to allow AP mode to start (or fail)
2. Connect an Ethernet cable
3. Post the startup log and auto-config log

Code:
# Startup log
moodeutl -l

# Auto-config log
cat /var/log/moode_autocfg.lo
Enjoy the Music!
moodeaudio.org | Mastodon Feed | GitHub
Reply
#5
@avsfan19 

I can't try reproducing your issue until tonight but first off---the RPi2B doesn't have an onboard WiFi transceiver so I presume you are using a USB-WiFi adapter. What specifically are you using and is it known to be capable of running in AP mode?


Regards,
Kent
Reply
#6
{@avsfan19 

OK, I finally got some time this morning to think about your problem. 

While working with the WiFi station and AP modes should be the same irrespective of the RPi model---assuming it can access an appropriate WiFI transceiver---I ran the following exercises on an RPi2B with an outboard CanaKit USB-WiFi transceiver to try more or less to replicate your situation..

_____

First, let's see what happens with no moodecfg.ini file. Flash a fresh moOde 8.3.6 image to a uSD card using the Raspberry Pi Imager (in which settings I enabled SSH and set the default username and password).

Insert the card in the RPi2B and power up. Wait an insufferably long time (I forgot how slow the RPi2B is plus there's a timeout looking for the Ethernet connection which isn't there) and finally an AP with SSID "Moode" shows up on my laptop as an available WiFi Network.
By default, this AP requires the password "moodeaudio". This is a holdover from the good old days (sorry it isn't better documented) and basically is necessary because the Raspberry Pi Imager has no way to deal with AP-mode parameters in situ.

Connect to this network and now you can open moOde's WebUI at IP address 172.24.1.1.


Opening the Network Configuration panel, one gets the popup notice "An Access Point password needs to be set." which reinforces the new security emphasis. At this point, you can set your desired AP SSID "Speakers" and your selected AP password. Save the Access Point settings and reboot. All should be as you want it.

_____

Referring back to the Network Configuration panel, note that either before or after changing the AP SSID and AP password, the Network SSID setting is "None (Activates AP mode)". That's the same as the default setting in /boot/moodecfg.ini.default so let's try it in our second test.

As before, use Raspberry Pi Imager to flash a fresh image of moOde 8.3.6 to a uSD card. This time though---and before booting the card on the RPi2B---copy over the /boot/moodecfg.ini.default file to boot/moodecfg.ini. Leave wlanssid = "None (activates AP mode)" as is but make the desired AP settings under [Network (apd0)]. Save the file  and then boot the card on the RPi2B. Shazam! After waiting interminably again, your moOde player should have come up in AP mode with the new SSID/pw.

_____

Finally, try again with a fresh image and this time with your moodecfg.ini file which contains the line wlanssid="". Again, after waiting an insufferably long time, the moOde player should come up in AP mode with SSID "Speakers". The only salient difference I notice is that in the WebUI under Network Configuration, the Network SSID setting is "Nothing selected". Easily changed to "None (Activates AP mode)" if it bothers you.

_____

Sorry for the long-winded response but I figured TMI is better than TLI (too little information). Smile

Regards,
Kent

PS - note that Tim's response contained a trivial typo. The file is /var/log/moode_autocfg.log
Reply
#7
@TheOldPresbyope

There is no AP mode password on >= 830 images. 

Below is from a fresh 836 image. 

SQL table cfg_network
Code:
pi@moode:~ $ sqlite3 /media/rootfs/var/local/www/db/moode-sqlite3.db "select * from cfg_network"
1|eth0|dhcp||||||||||||
2|wlan0|dhcp||||||None (activates AP mode)|wpa|||US||
3|apd0|||||||Moode|||||6|Off

moodecfg.ini.default
Code:
[Network (wlan0)]
wlanmethod = "dhcp"
wlanipaddr = ""
wlannetmask = ""
wlangateway = ""
wlanpridns = ""
wlansecdns = ""
wlanssid = "None (activates AP mode)"
wlanpwd = ""
wlansec = "wpa"
wlancountry = "US"

[Network (apd0)]
apdssid = "Moode"
apdpwd = ""
apdchan = "6"
Enjoy the Music!
moodeaudio.org | Mastodon Feed | GitHub
Reply
#8
(10-12-2023, 08:52 PM)Tim Curtis Wrote: @TheOldPresbyope

There is no AP mode password on >= 830 images. 

Below is from a fresh 836 image. 

SQL table cfg_network
Code:
pi@moode:~ $ sqlite3 /media/rootfs/var/local/www/db/moode-sqlite3.db "select * from cfg_network"
1|eth0|dhcp||||||||||||
2|wlan0|dhcp||||||None (activates AP mode)|wpa|||US||
3|apd0|||||||Moode|||||6|Off

moodecfg.ini.default
Code:
[Network (wlan0)]
wlanmethod = "dhcp"
wlanipaddr = ""
wlannetmask = ""
wlangateway = ""
wlanpridns = ""
wlansecdns = ""
wlanssid = "None (activates AP mode)"
wlanpwd = ""
wlansec = "wpa"
wlancountry = "US"

[Network (apd0)]
apdssid = "Moode"
apdpwd = ""
apdchan = "6"

Could it be something related to the channel used by the AP? I remember (yes, long ago...) something like changing it to 11, but I may be totally wrong as well...
Reply
#9
Yes, changing the channel to 1 or 11 can sometimes fix the "AP mode doesn't come up" issue. It's because AP mode runs on the crowded 2.4 GHz band and if there are nearby 2.4 GHz networks on channel 6 then interference can occur that degrades the signal.
Enjoy the Music!
moodeaudio.org | Mastodon Feed | GitHub
Reply
#10
Umm, have a look at moode/etc/hostapd/hostapd.overwrite.conf in the repo.

Regards,
Kent
Reply


Forum Jump: