Skip to main content
Version: 2.2.0

Software Development

ThingsPro Edge offers rich RESTful APIs to help SI/ISVs leverage or integrate many of the capabilities to simplify solution development. Please refer to the online document for the list of Open API and the instruction of thingspro-agent utility.

Linux Development Note

If the developers want to add the missing features or extend the functions provided by ThingsPro Edge, the developers can log in to the computer and run their programs.

ThingsPro Edge provides general settings, network configuration, and so on. Hence, the developers need to pay attention to this notice to avoid using some system operations and commands to unstable the system.

Linux development is not recommended in the field in the production environment. Please do develop and test in the lab to reach the device before going to production.

Things MUST be avoided

Items listed in the section usually managed by ThingsPro Edge. You may able to modify the configuration for a while then get reverted.

  • Networking: IP Settings, Routing, Ethernet, Wi-Fi, Cellular, including commands such as ip, dhclient, dhcpd, route, iw, hostapd, wpa_supplicant, cell_mgmt
  • LED control: mx-led-ctl
  • Serial: mx-uart-ctl
  • Time: timedatectl, ntpd
  • SD card: Auto-mounted configuration
  • Snapshot: mx-snapshot-ctl, mx-system-ctl

Things COULD be done with caution

Items listed in the section are not managed by ThingsPro Edge. Please modify carefully in case of breaking ThingsPro Edge.

  • Networking: iptables (Don't modify the MOXA-* CHAINS, everything else should be ok)

  • Package Management:

    apt-get

    (Read the warning messages carefully every time before install/upgrade/remove packages)

    • By default, ThingsPro Edge comments out all the sources in the source list (/etc/apt/sources.list)

Notes

  1. Web Server is bound to the following:

    • HTTP : 80 port
    • HTTPS : 8443 port
  2. SSH Server is bound to port 22 but disabled by default. You can turn it via the Web UI or Restful API.

  3. ICMP protocol is disabled by default.

  4. All containers' logs are integrated into the Linux journal service. You can monitor the Azure IoT Edge containers' logs using the following commands.

    journalctl CONTAINER_NAME=edgeAgent -f
    journalctl CONTAINER_NAME=edgeHub -f
    journalctl CONTAINER_NAME=thingspro-agent -f

Last updated on 2022-05-31 by Aeluin Chen (陳映攸)