NebraLtd / hm-pyhelper

A helper module used across various Nebra repos to reduce redundant features.
https://nebra.io/hmpyhelper
MIT License
9 stars 16 forks source link

Added hw definition for Heltec HT-M2808 #275

Closed radicale closed 1 year ago

radicale commented 1 year ago

Issue Added hardware definition for Heltec HT-M2808. The BalenaOS image is still under development (RK3328) so "rockpro64" is used as a placeholder.

How Have been ruining a Heltec for several weeks using this hardware definition. However, Heltec produced devices with different ECC chip types, including single-wire interface variants. Unfortunately, these SWI variants interface to a GPIO pin instead of a UART. To reliably use the chip, I wrote a kernel driver that mimics an I2C interface for it. This would typically be available as i2c-4 device 0x60. A standard I2C ECC variant of the Heltec has not been tested, but should present as i2c-1 device 0x60.

References SWI ECC Driver: https://github.com/radicale/i2c-swi-gpio

Checklist

shawaj commented 1 year ago

Awesome 😎 thanks @radicale

The driver looks great also.

Re the balenaOS thing ... This is something you are working on as well?

How are you running it currently? Just using the rockpro image and modifying it?

sonarcloud[bot] commented 1 year ago

Kudos, SonarCloud Quality Gate passed!    Quality Gate passed

Bug A 0 Bugs
Vulnerability A 0 Vulnerabilities
Security Hotspot A 0 Security Hotspots
Code Smell A 1 Code Smell

No Coverage information No Coverage information
0.0% 0.0% Duplication

radicale commented 1 year ago

Re the balenaOS thing ... This is something you are working on as well?

How are you running it currently? Just using the rockpro image and modifying it?

Yeah, I started with the rockpro64 since it uses the rockchip yocto layer. It's a different SoC and still has some quirks. Might rebase on balena-isg instead. Things that were not working well:

I've fixed some of those, but not all together. Need to settle on a uboot version / kernel version, upstream or rockchip that gets me closest.

shawaj commented 1 year ago

@radicale that's awesome 😎

We used isg as a base for the 1gb Bobcat px30 and had similar issues - particularly with the WiFi, no fixed ethernet Mac, weird handling of CPU serial number and some other weirdness too.

@ccrisan worked on that so copying him in I'm case he has any tips or info.

Heltec is on our to do list of adding support but we wanted to get bobcat 1gb and 2gb ram out of the way first. So let us know if you make any progress with it!

shawaj commented 1 year ago

By the way @radicale if it's using the ap6256 chip as shown in #122 then we had trouble with this same chip on RockPi before.

It's an ampak module using a broadcom bcm43435 chipset but due to broadcom selling to cypress/infineon and to synaptics it seems there is disagreement and conflicting documentation of which drivers to use for the WiFi and BT on this chipset

shawaj commented 1 year ago

@radicale just FYI, I've found out from helium folks that you can use the SWI ECC directly with gateway-mfr-rs and gateway-rs using three SWI address.

So for example instead of ecc://i2c-1:96?slot=0 you would use ecc://tty2?slot=0

Did you try that with the Heltec at all?