1 Introduction
This document is written for people who will use the eDIVE SW platform - mainly students and teachers, potentially also for technical staff helping them with the initial system setup.
- If you are a developer aiming at extending the eDIVE code base - see For Developers section.
- If you are a student or teacher, everything was set for you in advance, and you need to learn just how to start using the software - jump to Section 3.
- If you need to set up the eDIVE SW platform in your environment, but you are already familiar with eDIVE SW and terms like "client", "server", or "relay server" are clear to you - jump to Section 2.
- If you want to learn more about the software structure of eDIVE and what "client" and "server" terms mean in the scope of eDIVE, continue right here.
1.1 Basic Terms
We will illustrate the structure of eDIVE SW as an example of traditional, frontal teaching and then "translate" these common terms into their SW counterparts.
Image a school building with multiple classrooms and multiple teachers. Teachers are teaching various courses. The base "unit" of teaching is one "lesson", where one (or more) teacher(s) and a group of students gather in one classroom for a given time, and the teacher ... well, teaches. In the scope of one school, typically more lessons are conducted at the same time, or even the same lesson (e.g. lesson about "WW1" in the scope of a history course) can be taught twice at the same time - by different teachers, to different groups of students. School schedule exists, defining what lessons are happening in what classrooms. So the students and teachers know: "Now it is time for my history lesson, happening in classroom A419."
We have designed eDIVE SW on a similar structure but using different terms:
- students and teachers are - in our terminology - called users. And the piece of SW they use is called "client application" or just client for short.
- classroom - a piece of SW representing a virtual place where one lesson is happening is called server.
- schedule - telling students and teachers (users) in which classroom (server) their lesson will take place is called relay server.
1.2 Basis Workflow
The following represents a typical workflow for conducting a lesson using eDIVE SW. We describe individual steps in more detail in the following sections.
- Someone will start a server application (i.e. prepare a virtual classroom). This cloud be done by, e.g., a teacher, IT assistant or library staff.
- The code for particular lesson is created - either selected by the teacher or generated by SW.
- Code is distributed to all lesson users (teacher, students).
- At the beginning of the lesson, each user starts the client application, typically using a VR headset.
- Inside the client application, the user enters the lesson code. The relay server then interconnects the client application to the correct server (meaning the teacher/student will arrive at the right classroom).
- Lesson is conducted in VR.
- VR session ends, and users quit their client applications.
2 Installation
Installation process differs based on intended hardware platform:
2.1 Client Application - VR headsets
Requirements
Currently, we are supporting following VR headsets:
- Meta Quest
- Meta Quest II
Support for more types, including e.g. Pico Neo is in progress.
Installation Process
For VR headsets, the eDIVE is distributed in form of installation package = .apk file.
- Check, that "Developer mode" is enabled on your headset. If not, enable it. See details e.g. here. Also, there is a plethora of online tutorials for this topic.
- Download the .apk with required teaching scenario - currently, each scenario is distributed as individual package. All downloads can be found at edive.muni.cz/downloads
- Install downloaded .apk into your headset. Several ways to do this exists, such as:
- Using Meta Quest Developer Hub application
- Using SideQuest application
- DONE.
2.2 Client Application - Desktop (non-VR variant)
Requirements
- common PC or laptop with "decent" GPU (any GPU (integrated or dedicated) not older than 6 years should be OK).
- Windows OS - currently, we are providing pre-made binaries only for Windows platform, but it should be possible (we didn't try, yet) to create binaries also for Mac OS and Linux operating systems
Installation Process
For Windows platform, the eDIVE is distributed in form of pre-made binaries in .zip format.
- Download the .zip of client application with required teaching scenario(s) - currently, each scenario is distributed as individual package. All downloads can be found at edive.muni.cz/downloads
- Unzip the package to convenient location on your disk. You can delete the .zip package now.
- Open unzipped folder and run eDIVE...exe file for first time. Most probably, the Windows Defender Firewall or your own anti-virus SW will ask you to grant permission to eDIVE app to use network connection - please, allow this. eDIVE is online tool, without network connection, it will not work properly.
- DONE.
2.3 Server Application - Desktop
Requirements
- common desktop PC, laptop or virtual machine with static, public IP address
- No GPU is required - eDIVE servers runs as console application, without graphical output.
- Windows OS - currently, we are providing pre-made binaries only for Windows platform, but it should be possible (we didn't try, yet) to create binaries also for Mac OS and Linux operating systems
- Network architecture allowing communication on "higher" port numbers (e.g. port 60621). This could be problematic at e.g. University campus network high level of network security settings. If not sure, please contact administrators of your network.
Installation and Setup Process
For Windows platform, the eDIVE is distributed in form of pre-made binaries in .zip format.
- Download the .zip of server application with required teaching scenario(s) - currently, each scenario is distributed as individual package.
- Unzip the package to convenient location on your disk. You can delete the .zip package now.
- Open unzipped folder and run .exe file for first time. Most probably, the Windows defender, Windows Firewall or your own anti-virus SW will ask you to grant permission to eDIVE app to use network connection - please, allow this. eDIVE is online tool, without network connection, it will not work properly.
- Close the running server.
Setup the server:
- Open file
server.txt
in folderServerSettings
Change the title (name) of your server instance. E.g.:
server_title=My cool server name
. Try to keep naming conventions clear - if you will be running more server at the time, you should be able to recognize "which is which" by these server titles.If you plan to run multiple servers from the same machine, you need to manually set different port number for every server (automatic port assignment is on our development TODO list). You can select arbitrary port number in range 1024 to 65535. Range between 49152 and 65535 is recommended. Example:
port=54321
.
- Open file
- Optional - check, that server is "visible" to clients
- Open relay server web page:
- In case of pre-made binaries or if you are developer from MUNI, it is here.
- If you are operating your own relay server (see next section), it has its own front-end and its own web-address.
- If your server is running, but it is not visible, see Troubleshooting section
- Open relay server web page:
2.4 Relay Server
The pre-made binaries are linked with relay-server operated by Masaryk University. You can freely use it and there is nothing to install or set-up.
It is possible to run eDIVE in scope of your own, completely separated eDIVE eco-system (e. g. in scope of your university or corporate). This will require your own binaries and separated relay-server. Source codes for relay server and documentation how to deploy it will be released soon.
3 Running eDIVE
3.1 Client Application - VR headsets
Once the eDIVE is installed to your headset (see section 2.1 for details), you can run it directly from your headset. In case of Meta Quest headset:
- Open
App Library
- Click on top
Search apps
bar. - Click on on
All
and selectUknown Sources
from dropdown menu - Start the app by clicking on its name such as
eDIVE - Contour Lines
3.2 Server Application
Server is a common Windows application. You can start it simply by double-clicking on eDIVE...exe file. Linux and Mac OS are not officially supported, yet.
Server code
end-users of eDIVE = teachers and students will need a classroom code to connect to your server. You can find classroom code in console window of server application.
Note
Do not forget to distribute the classroom-code to relevant users (teachers, students).
4 Trouble-shooting
Server is not Visible on Relay
The most common cause of this issues is network setting of either machine running the server or university/corporate network.
What to try (after each step, try to close the server, run it again, wait for few seconds and refresh the web-page with Relay Server)
- Double check the server console for possible error messages such as
server registration failed
. - Double-check that your machine has public IP.
- Check the settings of Windows Defender Firewall and other security SW on the machine. Make sure, that the server binary is allowed to make network connection. E.g. settings of Windows Defender Firewall rules:
- Contact administrators of your network and ask them about port filtering or other security measurements. If needed, ask them to allow some reasonable range of ports for eDIVE. E.g.: port numbers 60621 to 60671 - this will allow you to run up to 50 servers in the same time.
If you are still not able to see your server on the Relay, there is always an option to run eDIVE in Local Network mode. It is less convenient to run, but should work even in quite improvised network conditions (such as a running a server on a laptop with 5G internet connection and WIFI hotspot providing local network for all VR headsets).
5 Local Network Mode
This was developed mainly as back-up option for situations where network communication between teaching server and relay server do not work (see troubleshooting section for possible fixes).
- Check, that the server and all clients (VR headsets or desktop clients) are on the same local network.
- Find the local IP address of machine running the server. E.g. writting
ipconfig /all
into Console or Power Shell will provide the data. - Run the server as usual - no extra settings are needed
- Run the client(s) as usual. In the Lobby environment, click on
connect with IP
and enter the local IP of the server machine. TODO screenshot here - DONE.
Note
You still need some internet connection for audio-chat feature.