Project

General

Profile

Application » History » Version 5

Alex Seferidis, 07/17/2025 12:36 PM

1 1 Alex Seferidis
# Application
2
3
FBX-3566 can run on 5 different modes:
4
- Fleex Embedded
5
- Fleex Prime
6
- Fleex DS
7
- IPTV STB
8
- DS player (not implemented yet)
9
10
The main QT application opens a full screen web browser (QT web engine, based on chromium 87)
11
On Fleex embedded it opens a web page from the headend.
12
On Fleex DS and Fleex Prime it opens a web page from DS server, or Prime server
13
On IPTV it opens a local page (inside FBX-3566) /htdocs/IPTV/index.php
14
15
There are three main applications:
16
- Web server
17
- QT application
18
- External player
19 2 Alex Seferidis
20 4 Alex Seferidis
Copy eglfs.conf to device home directory (/home/root)
21
Unzip and copy home.zip to home directory
22 5 Alex Seferidis
In case the remote control needs to send different keycodes:
23 4 Alex Seferidis
- change extra.kmap
24
(example for back key on remote : keycode 158 = Escape)
25
26
- execute  
27
./kmap2qmap extra.kmap extra.qmap
28
29
call qt main application, declare env variable:
30
export QT_QPA_EVDEV_KEYBOARD_PARAMETERS=keymap=/home/root/extra.qmap
31
32
33
34 2 Alex Seferidis
## Web server
35
36
The device can serve PHP web pages, using Apache2 web server. Settings are saved on SQLITE3 database
37
We can connect to device by opening a web browser from a PC directly to it's IP address
38
http://xxx.xxx.xxx.xxx
39
40
user: admin
41
pass: 12345
42
43
On the device the web application is located at:
44
/data/firmware/htdocs
45
46
Databases are located at:
47
/data/settings
48
49
On development machine (Alex windows PC):
50
C:\wamp64\www\stb
51
52
**Note: two critical files**
53
1. /htdocs/python/init.py 
54
This script runs on powerup and prepares the system, copy necessary files, etc.
55
56
2. On DS mode a JavaScript file (main.ds) is downloaded from DS server, and runs all the logic needed for the DS  
57 3 Alex Seferidis
58
TODO: add git server link for web application
59
60
## QT application
61
62
It is the main application, runs on the screen when the device powers up.
63
Opens QT web engine in full screen. Main application communicate with external player (GSteamer) with internal UDP commnads on 127.0.0.1 address.
64
Source code is located at Virtual machine (Alex PC):
65
/data/Yocto_SDK_QT5/QTplayer
66
67
See QT Creator section, how to setup IDE and then open this application from QT Creator.
68
69
TODO: add git server link for main application
70
71
72
## External player
73
74
External player is used to play media streams.
75
It is based on Gstreamer. Source code is located with gst-play-1.0 tool inside Yocto:
76
77
/data/Yocto/poky/build-rockchip/tmp/work/armv8a-poky-linux/gstreamer1.0-plugins-base/1.20.7-r0/gst-plugins-base-1.20.7/tools
78
79
It is one file: gst-external.c
80
81
build with:
82
83
```
84
bitbake -c compile -f gstreamer1.0-plugins-base
85
```
86
87
find executable at /media/alex/data/Yocto/poky/build-rockchip/tmp/work/armv8a-poky-linux/gstreamer1.0-plugins-base/1.20.7-r0/build/tools
88
Then you can copy this executable to the device (/data/firmware)
89
90
TODO: add git server link for external player