Jump to content

OpiZero-Plus2 -H3 experimental ?


specialist383

Recommended Posts

Last year I started a solar-sensing project with the Orange-Pi-Zero (256k), Armbian5.25, legacy kernel and made it work after a while. The Wifi funktion was rather poor and deteriorating, so I ordered a new OpiZero-Plus2-H3, same physical shape and connectors (I thought). Now the -P2 Armbian image 5.30 for the new board loaded perfectly, the Wifi function is really improved due to better hardware. The python part of the code works (still) perfectly.

Only (most of) the gpio-functions of my project do not work any more with the new board attached. I use PA07, PA13 and PA14 for bit-bang gpio and a 1-wire sensor via the kernel. I modified the OPi-P2 fex file, shipped with Armbian, turning off hdmi and SPI functions the same way as before, setting min clk to 408 MHz and max clk to 1200 MHz. Powersaving seems much improved. I checked the fex file for other connections to my nodes - nothing. I loaded the kernel drivers as before. But the result is: PA13 and PA14 work as before, the PA7 input pin does not see any levels (open), the 1-wire device is not recognized, neither the old or a brand-new component. I am pretty stuck - the alternative pin PA16 cannot be activated because it is not mapped in the pyA20-H3 driver. The author duxingkei33 writes the mapping can be expanded, but I could not find enough information how to define the extra parameters. The SPI built-in interface would use PA 13,14,16 but they are not all included in the pin mapping.

Q: is the 1-wire function in the new Armbian for OpiZero-P2 already a tested function? Is there something new with the gpio-connector? Is there any more information available about the pin and connectors mappings for the pyA20-H3 driver?  Is there already any other I/O-experience with the new Zero-P2 board around ?

After quite some hours I am running out of ideas to fix it. I added the modified/reduced fex file.

orangepizeroplus2-h3.fex

Link to comment
Share on other sites

[Solved] With the above input I finally made the OpiZero2Plus board work like the standard OpiZero board with legacy kernel.

The 2Plus board requires in the fex file ...

  [w1_para]

  w1_used = 1

  w1_gpio = 110          to attach the 1-wire sense line to pin (GPIO-conn) 26

 

The gpio pins PD11 and PA16 are not defined in the pyA20 mapping. As an alternative I use

[gpio_para]
gpio_used = 1
gpio_num = 3
gpio_pin_0 = port:PA13<1><1><1>                                           => pin GPIO-conn 23  out
gpio_pin_1 = port:PA14<1><1><1>                                           => pin GPIO-conn 24  out
gpio_pin_2 = port:PA18<0><default><default><1>                  => pin GPIO-conn 18   in

 

these used as SPI-CSEL, SPI-CLK and SPI-DATA with a MCP3201 A/D converter.

 

When using these pins, some other H3 functions need to be disabled in the .fex/.bin file to avoid a double functional assignement. To disable hdmi, bluetooth etc (if not needed) helps to save power. The kernel CPU temp is now correct. Below is a text file with the required changes in ....fex/bin to support a standalone monitor/control device.  Maybe this helps.

opizeroplus2-h3.fexinfo.txt

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...

Important Information

Terms of Use - Privacy Policy - Guidelines