New sub-forum for G2 unique software discussions

G2 operating system and special app's (e.g. p2app) discussion only--post Thetis and piHPSDR questions in their own sub-forums
User avatar
w-u-2-o
Posts: 5603
Joined: Fri Mar 10, 2017 1:47 pm

New sub-forum for G2 unique software discussions

Postby w-u-2-o » Mon Jun 26, 2023 7:15 pm

All,

With the impending arrival of G2 units, I've created this sub-forum to discuss software issues that will be unique to the G2 operating experience.

Things are going to be a lot more complex than they are with the previous radio types. For example, with 7000 series hardware you've only got to worry about firmware, a single piece of client software, and a single client OS. Now, with the G2, there are more pieces and parts: firmware, Rasberry Pi OS, Raspberry Pi software (middleware?), client software, which may be on the G2 Pi processor or on a separate Windows machine, and Windows if you are staying with Thetis.

Hence this sub-forum is for discussing:

- The Raspberry Pi operating system
- The special app's that must run on the Pi to make the G2 work

Thetis discussions should continue in the Thetis sub-forum.

piHPSDR discussions should continue in the piHPSDR sub-forum.

Also, I've rearranged the order of the client software forums in the expectation that we will see a lot more message traffic in the piHPSDR forum shortly.

73,

Scott
User avatar
w-u-2-o
Posts: 5603
Joined: Fri Mar 10, 2017 1:47 pm

Re: New sub-forum for G2 unique software discussions

Postby w-u-2-o » Mon Jun 26, 2023 7:16 pm

Those looking for the early Saturn and G2 hardware discussions, they have been consolidated with the other Apache-specific hardware discussions here: https://community.apache-labs.com/viewforum.php?f=46

Please post your G2 related hardware questions in that sub-forum.
laurencebarker
Posts: 227
Joined: Mon Nov 11, 2019 7:39 pm

Re: New sub-forum for G2 unique software discussions

Postby laurencebarker » Tue Jun 27, 2023 5:40 pm

I can shed some light on what the different software "layers" are.

Firstly there is a linux device driver for the PCI Express interface. It controls access to the FPGA's registers and DMA engine; the I/Q samples for RX and TX are transferred to and fro by those DMA engines. The device driver is a patched Xilinx code: it is unsupported on ARM processors but with a couple of simple changes it works fine. Periodically if there is a major operating system updated this may have to be changed, because the interface to the linux kernel gets updated regularly.

Secondly, there is a "middleware" or server application called "p2app". This access the FPGA registers on one side, and provides a protocol 2 ethernet interface on the other. This allows any protocol 2 compliant application to access Saturn. We've assigned a new board id for Saturn, and modified Thetis and pihpsdr to support that new id. p2app is likely to be pre-installed and loaded after power up (I don't know the final factory software build, but we've had that working for a while) and it means that once Saturn is powered up then client apps like Thetis or pihpsdr can connect to it without any other user steps.

If p2app is executed at startup, you can't see its console window. If you start it manually in a console window you can see its report of FPGA and software version numbers and build dates. You can run more than one, so you can always access that anyway.

Protocol 2, and with it Thetis or pihpsdr, have no settings to select the XLR balanced microphone input. In time maybe that can be added, but we'd have to check that the changes to the protocol had no effect onto other radios. In the short term in can be turned on manually with a command line option.

That is the "main" software. We have also written some simple desktop apps for management and development:

A desktop app to reflash the FPGA's configuration memory. This is the equivalent of the HPSDR bootloader. It can set the primary and the fallback configuration images.

A desktop app for microphone and speaker testing. This allows a test tone to be played to either speaker, and allows you to record a few seconds of audio then play it to the speaker. great for level checking, and checking PTT and bias etc.

A desktop app for reading back driver and PA current for bias setting. This is for factory use and isn't intended for user use, unless you are developing the RF part of the radio.

A desktop app for register reads and writes. This is useful for development but isn't intended for user use. It gives a good way to find what the registers have been set to by the embedded software. Don't use it if you don't know what you are doing, and why.
Laurence Barker G8NJJ
User avatar
w-u-2-o
Posts: 5603
Joined: Fri Mar 10, 2017 1:47 pm

Re: New sub-forum for G2 unique software discussions

Postby w-u-2-o » Tue Jun 27, 2023 6:46 pm

Thanks for that, Laurence. No doubt your knowledge is going to be in high demand on the forum very shortly, if you have the time.

Right now there are no plans for me to have a G2, so I'm not going to be in a good position to do my usual job of answering questions!
laurencebarker
Posts: 227
Joined: Mon Nov 11, 2019 7:39 pm

Re: New sub-forum for G2 unique software discussions

Postby laurencebarker » Tue Jun 27, 2023 7:37 pm

Saturn mini desktop apps.pdf
(219.5 KiB) Downloaded 195 times
I've also written some notes on using 4 of the "mini desktop apps" which may be helpful.
Laurence Barker G8NJJ

Return to “G2 Operating System & Applications”