Skip to content

Wi‐Fi

Sean P. Harrington edited this page Oct 20, 2024 · 14 revisions

Aquarius+ Wi-Fi

Setting Up Wi-Fi

You can set up your Wi-Fi by bringing up the Settings overlay at any time (even in a program or game) by typing CTRL + TAB. This will will bring up a pop-up overlay where you can type navigate the available commands using the UP and DOWN cursor keys, with ENTER/RETURN to activate and ESC to "go back".

To set up Wi-Fi...

  1. Bring up the Settings overlay and arrow down to the ESP settings menu item. Hit ENTER/RETURN, and you will be on the Wi-Fi menu item.

  2. Hit ENTER/RETURN again to go into the Wi-Fi menu. Using either the RIGHT arrow, toggle the Wi-Fi to ON. (Use LEFT arrow to turn it OFF.)

  3. A list of Available networks will be listed. Arrow UP or DOWN to select your preferred network and hit ENTER/RETURN.

  4. If the network requires a password, you will be prompted to enter it, followed by ENTER/RETURN. Note that the characters of the password are masked with asterisks. If you didn't mean to connect to that network, you can type ESC to go back.

  5. Once you have successfully connected to a Wi-Fi network, it will show up as the Current network. You can arrow DOWN or UP to it and hit ENTER/RETURN to see details of the connection or to Forget network if you want to disconnect from it. Use ESC to go back.

*Note: use run "esp:settings", run "esp:settings.caq", or run "esp:terminal.caq" for older versions of the OS (pre V1.0). Type HELP within those older applications to perform Wi-Fi or other settings updates.

Hostname

The default Hostname for the Aquarius+ is aqplus, but you can update it within the Wi-Fi section of the Settings overlay by selecting Hostname aqplus and then deleting the old name with BKSP and typing a new one, followed by ENTER/RETURN to save the setting, or ESC to go back and not change the setting.

Wi-Fi Functions

Updating the firmware of your Aquarius+ via Wi-Fi from GitHub.

From the Settings overlay, you can go to the ESP settings section and select the System update from GitHub option to update the firmware of your Aquarius+ over Wi-Fi directly from the releases page of the aquarius-plus GitHub repository.

The system will give you options to either select the newest version or type a specific version. If you opt for a specific version, you must use the EXACT case-sensitive version number, i.e. V0.34. The name of the release can be found on the release page next to a little icon of a tag, for example:
tag example

Time Synchronization

If you have already connected the Aquarius+ to a Wi-Fi, it will sync the time with an internet time service. This time is used to give newly created files a correct time and date. You MUST be connected to Wi-Fi for the time settings to work, so do that first.

To edit the Time Zone...

  1. Go into the Settings overlay with CTRL+TAB and arrow DOWN to ESP settings and hit ENTER/RETURN.

  2. Arrow DOWN to Time zone: not set and hit ENTER/RETURN.

  3. First select your continent and then the specific time zone, using UP or DOWN arrows and ENTER/RETURN.

  4. You will be back at the ESP settings page, and the Time zone: should now be set.

  5. Press ESC to go back to the main menu of the Settings overlay, and the date and time should now be correct. In some cases with slow internet, it may take a few moments to update. If it does not, arrow DOWN to Restart ESP (CTRL-SHIFT-ESC) and hit ENTER/RETURN to reset the system.

File Server (WebDav)

The Aquarius+ has an integrated file server implementing the WebDav protocol. This allows the contents of the SD card to be remotely accessed from your PC.

This feature is OFF by default, but can be turned on...

  1. Bring up the Settings overlay, arrow DOWN to ESP settings, and hit ENTER/RETURN.

  2. Arrow DOWN to File server and arrow RIGHT to turn this feature ON. (Arrow LEFT to turn it OFF.)

You should now be able to access the system remotely.

Depending on your operating system there are different possibilities of accessing the contents, for example:

  • On macOS and Linux you can use a command line WebDav client called cadaver.
  • On Windows you can mount the Aquarius+ via the Windows explorer as a network drive. As path you type http://aqplus/ (or whatever you have updated your hostname to)
  • On macOS you can mount Aquarius+ via Finder as a network drive. Use CMD+K in Finder to open the Connect to server dialog, here type http://aqplus/ and click connect.

You can also upload and download files using curl, which is a command-line tool supporting many protocols.

For example, to upload a file from your PC to the root of the SD card of your Aquarius+ use:

curl -T myfile.caq http://aqplus/

To download a file from the Aquarius+ to your PC, you can type:

curl -O http://aqplus/myfile.caq

Remote Typing

In addition the WebDav protocol the Aquarius+ has another endpoint called http://aqplus/keyboard. You can do a HTTP POST request to this endpoint to remotely control the keyboard.

The easiest way to use this is to use curl.

For example:

printf '\x1E\nRUN"myfile.caq"\n' | curl --data-binary @- http://aqplus/keyboard

Special codes are:

Code Description
\n Newline (press ENTER key)
\x1C Delay for 100ms
\x1D Delay for 500ms
\x1E Reset the Aquarius+

Combined with the file upload, you can use the remote typing feature to automatically compile/assmeble, upload and start your program from a script that you run while developing.

Soft-Updating the System ROM

The Aquarius+ has another endpoint called http://aqplus/sysrom. You can do a HTTP POST request to this endpoint to update the contents of the System ROM. The system is automatically reset after performing this action. This feature is useful for people working on developing the System ROM.

For example, too update the Aquarius+ system ROM with a file on your PC called my_new_sysrom.bin:

curl --data-binary @aquarius.rom http://aqplus/sysrom

Note that this data will only stay in the system until the FPGA is reconfigured. The FPGA is reconfigured every time the ESP32 is booted (on power-on, or when using the CTRL+SHIFT+ESC key combination to request a reboot of the ESP32).

Clone this wiki locally