description | Electronic Tour Guide Bike/Segway Headset |
last change | Fri, 28 Sep 2018 07:22:40 +0000 (09:22 +0200) |
Clone the code | git clone https://git.shalnoff.com/git/ETG_Helmet |
This is an experimental version of the Electronic Guide, designed specifically for use with tour groups during bicycle or segway rides.
The device operates by analyzing the user's location, direction, and speed of travel. It automatically compiles a narrative that adjusts in real-time as the style of the ride changes. This ensures that the narrative remains engaging and relevant to the listener's experience.
Moreover, the device facilitates communication between the ride leader and all group members. By creating the network, the devices enable an exchange of audo messages and communication.
The unique algorithm creates a non-linear narrative. By maintaining a common thread that ties all the stories together and ensures that the group remains engaged throughout the journey."
The device's enclosure is fully designed using OpenSCAD. This approach allows for the easy modification of basic dimensions and the placement of elements, making it adaptable to meet the requirements of various projects.
Note: All of the following must be done on the Omega2+ module unless otherwise noted. Flashing and setting up SSH access to the device is out of scope of this description. Please refer to the if necessary.
ssh to Omega and install necessary utils
opkg update
opkg install mc
mcedit /etc/opkg/distfeeds.conf
# unremark
src/gz reboot_base http://downloads.lede-project.org/snapshots/packages/mipsel_24kc/base
src/gz reboot_packages http://downloads.lede-project.org/snapshots/packages/mipsel_24kc/packages
opkg update
opkg install usbutils screen alsa-lib libsndfile alsa-utils madplay openssh-sftp-server libxml2 e2fsprogs socat netcat sox espeak lftp
copy files from SOFTWARE/OMEGA2 in /root/ on Omega
add 'etg' service in init.d
#!/bin/sh /etc/rc.common
START=99
start() {
mkdir /tmp/ETGPID/
cd /root/
./run.sh 2>&1 > /dev/null
echo $! > /tmp/ETGPID/run
}
stop() {
for pid in $(ls /tmp/ETGPID/)
do
kill $(cat /tmp/ETGPID/$pid)
echo "killed $pid"
done
}
disable default console (probably not required) (community topic)
/etc/inittab
# ::askconsole:/bin/ash --login
maybe in new version
# ::askconsole:/usr/libexec/login.sh
activate it
/etc/init.d/etg enable
set your client-server settings in settings.sh
mcedit settings.sh
or
vi settings.sh
add your playback logic in player.sh
playFile <your_current_file.mp3>
reboot and enjoy :)
check buttons
./fast-gpio bgread 0xf800d echo
test GPS on device
cat /dev/ttyS1
kill etg service
/etc/init.d/etg stop
stop it alternatively
for pid in $(ls /tmp/ETGPID/); do kill $(cat /tmp/ETGPID/$pid); echo "killed $pid"; done
100% CPU usage isuue, disable wifimanager (community topic)
/etc/init.d/wifimanager stop; /etc/init.d/wifimanager disable; killall wifimanager; rm /etc/rc.d/S79wifimanager
- Optimise sound recording, connect USB SND via DC-DC decoupler, remove filtering
- Upgrade HW to LiFePO battery, remove USB boost converter
Copyright © 2019 Dmitry Shalnov [electronictourguide.com] [interplaymedium.org]
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this files except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
2018-09-28 | Dmitry Shalnoff | initial commit master | commit | commitdiff | tree | snapshot |
6 years ago | master | shortlog | log | tree |