Skip to content
lora-gateway edited this page Dec 6, 2023 · 1 revision

Welcome to the esxp1302 wiki!

Ideas for future development

In the near future, there are a few urgent problems needing to be addressed:

  • update to SX1302_HAL
  • compile works with latest stable esp-idf branch
  • add test functions along pkt-fwd

Below are just rough thoughts about how to implement them.

update to SX1302_HAL v2.1.0

This includes three parts:

  • lib. This needs to be done first. Some unused files (such as related to USB port communication) won't be included, others should be put in its own folder named main/libloragw instead as of scattering under main folder.
  • pkt-fwd. This part won't change too much; will just be updated. Some code may needs to be disabled at least temporarily (such as LBT).
  • test. This part is next topic as below:

Test functions

The original SX1302_HAL contains some test functions which is useful sometimes.

In ESXP1302, most of such test functions are been ported and still available (under main/test folder), but needs to change the main.c link to it and re-compile and re-flash the ESP32 to use it, which is very inconvenient.

In the future, such functions should also be kept and updated, better have an easier way to use them. There are 2 options:

  • stupid old way. Same as before but I don't like this way
  • call from shell way. This would like what we do under Raspbian. Now that ESXP1302 introduces its own "shell" to do configure, we can extend it to support more than just pkt-fwd.

To choose the 2nd way, we can keep both buttons pressed when power-on to enter this shell interface, no wifi connection involved and no other service needed. Just a command line for a few test functions.

Still, this way has a few problems:

  • Add all arguments support to different test functions are tedious.
  • It takes some extra flash space; so maybe need an option to enable/disable it.

update ESP-IDF toolchain

The latest esp-idf branch applies more strict check to the source code; so just need to follow the error output and fix all small issues one by one, which should be easy. But this step should be done only after above update works are done to avoid waste efforts.

Clone this wiki locally