Adam Dobrowolski ab8ef46b98 [EGD-2167] Workaround for crash when no modem on Linux
When there is no modem connected to PC, there is crash, which is not
caused by Read and Write, but somewhere deeper.
2019-11-19 12:53:29 +01:00
2019-06-11 14:03:39 +02:00
2019-07-09 09:17:40 +02:00
2019-09-12 10:47:02 +02:00
2019-10-29 13:22:00 +01:00
2019-10-03 10:16:05 +02:00
2019-10-23 09:17:57 +02:00
2019-10-14 15:32:06 +02:00
2019-09-09 07:40:51 +02:00
2019-10-14 15:32:06 +02:00
2019-08-05 08:05:40 +02:00
2019-07-22 09:35:31 +02:00
2019-07-17 11:41:27 +02:00
2019-10-23 09:17:57 +02:00
2019-05-21 12:16:40 +02:00

PurePhone repository

Quickstart

Prior to any build setup environment, need to be run once. (See: ## Run provisioning) cd config && ./bootstrap.sh

Super quick and dirty to run app on linux:

cp ./env.cmake.sample ./env.cmake && sed -i "s:<HOME>:$HOME:" env.cmake     # set env.cmake
git submodule update --init --recursive                                     # initialize submodules
cd ./config/ && ./bootstrap.sh && cd ../                                    # bootstrap requirements
./rebuild.sh && make -C build -j4                                           # run rebuild (cmake configuration) and build
cd build && ./PurePhone                                                     # run PurePhone - emulator screen will pop up

Super quick and dirty to run app on Phone

Prior to all - install JLink driver (see ## Install JLink driver)

cp ./env.cmake.sample ./env.cmake && sed -i "s:<HOME>:$HOME:" env.cmake
git submodule update --init --recursive
cd ./config/ && ./bootstrap.sh && cd ../
./rebuild.sh rt1051 && make -C build -j4

now in 3 separate consoles

Start JLink server

./StartJLinkServer.sh

Load app with GDB via JLink connected to PurePhone

./run.sh

Catch logs from PurePhone from JLink RTT and write them to /tmp/log.txt

JLinkRTTClient | tee /tmp/log.txt

Longstart

Run provisioning

There is provisioning script ./config/bootstrap.sh run it to install all dependencies - written for Ubuntu tested on 18.10

  • This script will require sudo (for apt)
  • needed cmake and GCC will be installed by default to ${HOME} - in case of other needs, change it
  • script doesn't install ccache, but if ccache is on system - it's support is added to env.cmake.sample
  • need to be run once (not more on restart or anything)

cd config && ./bootstrap.sh

We use JLink driver in version JLink v634f, for ubuntu download from here: tested JLink we use

To install this driver on linux: sudo dpkg -i JLink_Linux_V634f_x86_64.deb

First time repo checkout with submodules

git submodule update --init --recursive

Building project

after running provisioning you are ready to build project for both linux and rt1051 target

Repo update with submodules

git pull --recurse-submodules

Documentation:

Linux Bluetooth device

Bluetooth service by default initializes bluetooth device. On linux it's tellit developer kit plugged via USB-CDC. To properly inteface with bluetooth telit device (and not have conflicts in names) please add following script as: /etc/udev/rules.d/99-purephone.rules on linux.

ACTION=="add", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6001", ATTRS{serial}=="AL02ZDVH", GROUP="dialout", SYMLINK+="telit"
ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6001", MODE="666", GROUP="dialout"

This will enable you to use Bluetooth telit board as /dev/telit which is expected by code. To access devices without root priviledges add yourselve to dialout group. sudo usermod -a -G dialout $USER

For changes to take place run: sudo udevadm control --reload-rules && sudo udevadm trigger

S
Description
No description provided
Readme GPL-3.0
1 GiB
0 Stars 1 Watchers 0 Forks
Languages
C 54.6%
C++ 42.2%
CMake 1.2%
Python 1%
Lua 0.4%
Other 0.5%