Skip to content

Conversation

zafersn
Copy link
Contributor

@zafersn zafersn commented May 6, 2025

This pull request introduces the initial draft implementation of the HL78XX modem driver, built on the modem_chat framework. The current version establishes the core structure and essential functionality required to support the HL78XX modem series.

The primary objective at this stage is to review and align on the overall design and integration approach. Following this, development will continue with additional features such as:

  • Power saving mode support

  • User pipe connection handling

  • Other modem-specific enhancements

  • Verified compatibility and correct operation with the following sample applications:

    • aws_mqtt
    • dns_resolve
    • big_http_download
    • lwm2m

Feedback on both structure and test approach is welcome.

@rerickson1 rerickson1 self-requested a review May 6, 2025 14:48
@rerickson1 rerickson1 self-assigned this May 6, 2025
@zafersn zafersn force-pushed the hl78xx_driver branch 2 times, most recently from 31e6d9f to b1e6ffc Compare May 8, 2025 10:27
@nashif nashif requested a review from Copilot May 8, 2025 11:03
Copy link

@Copilot Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This pull request introduces the initial HL78XX modem driver implementation based on the modem_chat framework while updating sample applications to integrate power management calls. Key changes include:

  • Adding power management includes and calls in sample applications to power on the modem.
  • Enhancing the modem socket poll routine with temporary POLLOUT handling.
  • Introducing new HL78XX utility and header files to support modem functionality.

Reviewed Changes

Copilot reviewed 8 out of 14 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
samples/net/lwm2m_client/src/lwm2m-client.c Added power management headers and a power-on invocation for the HL78XX modem.
samples/net/cloud/aws_iot_mqtt/src/main.c Added similar power management initialization for the modem in the AWS IoT MQTT sample.
drivers/modem/modem_socket.c Updated POLLOUT event handling with temporary logging and fallback behavior.
drivers/modem/hl78xx/hl78xx_utility.c Added HL78XX utility functions; note an inconsistent module name in the log registration.
drivers/modem/hl78xx/hl78xx.h Introduced declarations and definitions supporting the HL78XX modem driver.
Files not reviewed (6)
  • drivers/modem/CMakeLists.txt: Language not supported
  • drivers/modem/Kconfig: Language not supported
  • drivers/modem/hl78xx/CMakeLists.txt: Language not supported
  • samples/net/cloud/aws_iot_mqtt/boards/hl78xx_chat.conf: Language not supported
  • samples/net/lwm2m_client/Kconfig: Language not supported
  • samples/net/lwm2m_client/overlay-hl78xx_chat.conf: Language not supported
Comments suppressed due to low confidence (1)

drivers/modem/hl78xx/hl78xx_utility.c:18

  • [nitpick] The module name 'hl7812_utility' appears inconsistent with the HL78XX naming convention used elsewhere. Consider renaming it to 'hl78xx_utility' for naming consistency.
LOG_MODULE_REGISTER(hl7812_utility, CONFIG_MODEM_LOG_LEVEL);

@zafersn zafersn force-pushed the hl78xx_driver branch 16 times, most recently from c4e404b to df0f647 Compare May 12, 2025 11:04
@zafersn zafersn marked this pull request as ready for review May 12, 2025 13:10
@zephyrbot zephyrbot requested a review from rerickson1 October 8, 2025 20:16
@zafersn zafersn force-pushed the hl78xx_driver branch 3 times, most recently from 440ca12 to ecbc759 Compare October 9, 2025 09:38
@rerickson1
Copy link
Member

This PR depends on this fix if using the UART ISR backend: #97132

zafersn and others added 6 commits October 9, 2025 21:28
Adding HL78XX Modem Driver Implementation Using Modem Chat Framework

Signed-off-by: Zafer SEN <[email protected]>
Add HL78xx driver sample application

Signed-off-by: Zafer SEN <[email protected]>
add support for HL78xx driver

Signed-off-by: Zafer SEN <[email protected]>
add support for HL78xx driver

Signed-off-by: Zafer SEN <[email protected]>
Add support for Pinnacle 100 modem (HL7800) platforms.

Signed-off-by: Ryan Erickson <[email protected]>
Add support for using the HL78XX modem driver with Pinnacle 100
modem boards.

Signed-off-by: Ryan Erickson <[email protected]>
Add support for using the HL78XX modem driver with Pinnacle 100
modem boards.

Signed-off-by: Ryan Erickson <[email protected]>
Copy link

sonarqubecloud bot commented Oct 9, 2025

Copy link
Member

@rerickson1 rerickson1 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have tested this driver against the Pinnacle 100 DVK (HL7800).
The following samples were tested:

  • AWS IoT (MQTT, TCP, TLS)
  • LwM2M client (CoAP, UDP, DTLS)
  • HL78XX Hello

All samples run great. This PR is ready for others review.

@jukkar, ready for your re-review.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants