FPV Control Station

Built a new control station for my rover. 
It work with my old rover: FPV Rover but i work on a new rover with 8 wheels and suspension. 

I call it Squid Rover.

Below is a work log and some explanations of features of my control station.

WiFi 

Solder together metal boxes for the different parts, this is the wifi card.
Thought it would shield a little, but is probably completely unnecessary ... but fun to build...
I use the WiFi when i develop the code. Steelsquid Kiss OS that i use will automatically upload changes to the Raspberry Pi in the control station via ssh.

Transceiver

The transceiver i use to send and receive command to and from the rover.
It is a HM-TRLR-S LoRa transceiver. It has pretty long range 5km LOS in only 100mW.
But it is slow, when only sending (not wait for answer) a command takes about 80ms to send.
You can speed it up by changing the settings for the LoRa, but then the range will suffer.
I found a setting i think is good, about 1km range with trees and houses in the way...
  
It is easy to use just send a serial TTL signal on one side and it will apper on the other....

Send request:
I send a simple package like this <Request byte>|<command>|<parameter>|<parameter>...<new line>
Server:
<Response OK byte>|<parameter>|<parameter>...<new line>
Or
<Response ERROR byte>|<error message><new line>

Client can also send broadcast:
<Broadcast byte>|<command>|<parameter>|<parameter>...<new line>
Server just read the request and to what it tell, but do not answer back with any response...

Audio/video switch

I can switch the audio and video from the internal receiver to a external and also connect a external monitor (goggles).
  
I do not use the buck converter you see in the first picture, it resulted a lot of noise in the picture, and it did not help with an LC filter.

Monitor, WiFi and transceiver

The monitor and final WiFi and transceiver.

ADC and extra GPIO

The Raspberry Pi do not have any ADC so i use a BYVAC P012-I2C to read joystick location and battery voltage.
I also need more GPIOs, for that i use 2 MCP23017.

Briefcase

The painted and strengthened briefcase.
 

Starting to fit stuff

 

Panel for buttons and other controls

  
Left side
  • USB and LAN to Raspberry Pi
  • Buttons for different controls
  • Move the camera
Right side
  • External power or internal power
  • LED bar with remote and rover voltage
  • OLED bar with remote and rover voltage
  • OK led: A ok event, example a message on the OLED
  • ERR led: Example a bug in the code.
  • Enable or disable the WiFi
  • Enable disable the transceiver
    The remote will send a signal to the rover every second for update of example voltage.
    I can disable it here.
  • Enable disable the receiver and monitor.
  • Steer the rover

Rat's nest of wires

The wiring on the pack of the panel :-)
https://steelsquid-58e13.firebaseapp.com/pics/station_14_panel_wire_01.jpg  
On the left side, the Raspberry Pi and on the right side the ADC and extra GPIO PCB.

Antenna pole

The pole for my Crosshair antenna.
 https://steelsquid-58e13.firebaseapp.com/pics/station_18_anten_pole_02.jpg

Equipment bag

A detachable bag for equipment on the lid of the case.


Airblade antenna

Protection for my IBcrazy Airblade antenna.
A simple drainpipes stop part...

Finished closed case

The "finished" case with equipment.
https://steelsquid-58e13.firebaseapp.com/pics/station_21_case_close_01.jpg 

Finished open case

Here is the "finished" case.
Added a DVR and a small keyboard.
The keyboard i will use to send text to the rover and a text to speech engine on the rover speaks it :-)
I also made a Moxon antenna.
   

Text To Speech

If you write a text on the keyboard and press enter the text will speak on the rover.
The LCD show a simple webpage where you can write the text and when you press enter it is handled by Steelsquid Kiss OS python webserver that send it to the rover.
I Use eSpeak as text to speech on the rover.