Home > Allwinner A6X, Allwinner R-Series, Hardware > Banana Pi BPI-M64 & BPI-M2 Ultra Boards PDF Schematics Published

Banana Pi BPI-M64 & BPI-M2 Ultra Boards PDF Schematics Published

December 13th, 2016 Leave a comment Go to comments

SinoVoip has recently released PDF schematics for both of their Banana Pi boards, namely BPI-M64 board powered by Allwinner A64 processor, and BPI-M2 Ultra board based on the latest Allwinner R40 SoC with an on-chip SATA interface.

banana-pi-bpi-m2-ultra-schematicsFor most boards on the market, this should not be news, but SinoVoip does not always release schematics in a timely manner, so you may want to be noticed when it happens:

The clear benefit of BPI-M2 Ultra is the presence of a SATA connector NOT implemented via a slow USB 2.0 to SATA bridge, but instead directly through the SATA interface of the R40 quad core processor. As for BPI-M64 ($46), it can be compared to Pine64+ with 2GB RAM and a WiFi module ($39), and despite the higher price it does come with some benefits like adb over OTG working, it is equipped with an 8GB eMMC flash instead of just a micro SD card slot, and it’s powered by a separate power connector. Pine64+ comes with DDR3 memory, while BPI-M64 is fitted with LPDDR3, which should consume less power (Update: BPI-M64 comes with DDR3 memory too , the specs on Banana Pi website are wrong).

One the other side, there have been several instances – not to say many – where SinoVoip did  not take inputs from the community in order to fix bugs, and they’ve made some interesting decisions including using a 6-pin battery header on BPI-M2 Ultra, and are now unable to explain one of their customers where to source such type of battery or even just the connector [Update: Banana Pi will sell the connector soon]

Thanks to Jon and Thomas for the info.

  1. tkaiser
    December 13th, 2016 at 18:27 | #1

    BPi-M64 has no LPDDR3 DRAM but DDR3. It’s just the usual ‘we don’t give a sh*t’ attitude of this vendor that stuff provided as ‘technical documentation’ is in reality the result of ‘copy&paste gone wrong’. Both the LPDDR3 claim and also DRAM clockspeed of 733 MHz are copy&paste from BPi M3. it should also be noted that none of their OS images for BPi M64 can use eMMC or stuff like Wi-Fi/BT at the moment since this vendor simply copied/uses all settings from Pine64+ which do not fit for their own hardware. Also A64’s MMC controller used for eMMC is slightly different than the controller on other Allwinner SoCs and needs a tweak.

    Regarding BPi M2 it should be noted that SATA is unfortunately no improvement compared to A20 (but Gigabit Ethernet is, R40 SoC uses a newer IP block comparable to other more recent Allwinner SoCs), that eMMC used on all new SinoVoip boards is the slowest Samsung provides (rated for just 6/40 MB/s write/read) and that the 733 MHz DRAM clockspeed claim is even more wrong here since in reality DRAM is clocked with just 576 MHz on BPi-M2. It should also be noted that a PSU with 1.7/4.0mm barrel plug is necessary otherwise no SATA disk can be powered by their board (of course they do not provide this information by themselves)

    Also count of USB ports or leds in their gitbook ‘specs’ is wrong but hey… that’s just minor issues — when it’s like with older boards from them then it should suffice to tell them 10 or 20 times what’s wrong and then they correct it maybe in their ‘specs’ months later. So everything as usual πŸ™‚

  2. Jon Smirl
    December 13th, 2016 at 19:53 | #2

    @tkaiser “none of their OS images for BPi M64 can use eMMC or stuff like Wi-Fi/BT”

    eMMC and Ampak support works in their Android image.

  3. tkaiser
    December 13th, 2016 at 21:03 | #3

    @Jon Smirl
    Interesting. So I would assume Android is stuff they got from Allwinner while all Linux based OS images are simply based on longsleep’s/communities work and there this isn’t working since they moronically ship with the .dtb for Pine64+

  4. tkaiser
    December 13th, 2016 at 21:04 | #4

    @Jon Smirl
    At least you could try to halt the board in u-boot and to extract sys_config.fex contents to get an idea how settings should look like.

  5. Jon Smirl
    December 14th, 2016 at 03:01 | #5

    We have ayufan’s Android 7 port running on the M64. Everything works except Bluetooth and we are working on that now. We have not yet decoded the correct way to configure Bluetooth to make it work.

    Ayufan’s Android 7 port is not organized such that another device directory can be created so it is not simple to push out our changes. It does not appear to be possible to make a single Android image that works on both Pine and M64. That is because the Realtek wifi/BT module support has been added into Android user space using #ifdefs instead of as a driver. Someone has done that to the Allwinner source, the #ifdefs are not present in AOSP.

    Now that you have schematics it a simple matter to adjust the Pine DTS to match the M64 hardware, so Linux should work. If I recall correctly, the only significant changes are running WIFI from DLDO1 instead of DLD04. And ELDO3 is 1.8V on Pine and it needs to be 3.3V on M64. Not 100% sure on those regulator numbers. ELD03 powers IR on Pine and Bluetooth on M64. Of it is Broadcom WIFI/BT on M64 vs Realtek on Pine.

    Linux uses a much more sane BT stack so I don’t think BT will cause you problems.

  6. @lex
    December 14th, 2016 at 04:11 | #6

    I enabled eMMC on M64 (1.8v and 3.3v) to see what would happen, seems it tries to boot always from eMMC. i did not look further to see it in details anyway.

    @Jon Smirl, could you tell which wifi/BT driver should be loaded?

  7. Jon Smirl
    December 14th, 2016 at 19:46 | #7

    M64 uses the Ampak AP6212 wifi/BT – so for mainline linux it is bcrmfmac
    On 3.10 with Android it is bcmdhd
    You need UART based BT HCI.

    The ROM will always boot from eMMC first if eMMC contains a valid image signature. The FEL button overrides this.

  8. ayufan
    December 15th, 2016 at 01:50 | #8

    Jon Smirl: I don’t know if I do understand. It’s always possible to add another device tree to existing tree that will support Banana PI as part of existing image.

    And yes. I use the AOSP way to configure Wifi/BT. I find it easier and more in-sync with upstream. Generally it’s not a problem of releasing two versions for two different platforms. I would say that this is even better, then trying to have one image to support everything.

  9. December 15th, 2016 at 05:44 | #9

    You guys are my hero! Thank you for linking my issue with finding the specs for the battery connectors.

    Here is the link someone provided: http://www.ebay.com/itm/Mini-JST-1-25-T-1-6-Pin-Connector-with-Wire-x-10-sets-/171361716307

    I am going to credit your article with getting them to finally address the question!

  10. December 15th, 2016 at 09:28 | #10

    @Mike Schinkel
    Glad I could help. By the way, that “someone” is me πŸ™‚

  11. tkaiser
    December 15th, 2016 at 20:05 | #11

    Jon Smirl :
    Linux uses a much more sane BT stack so I don’t think BT will cause you problems.

    BT on this device will not cause any problems since I don’t plan to get/support any new SinoVoip devices as long as they don’t start to provide at least correct information and do some basic support (see the battery dilemma: a vendor using a weird 6-pin connector on all his new boards and not able to tell the part number or specs of this connector). Apart from that their stuff is overpriced too and thermal design sucks (all their offerings except of first A20 based Bananas are prone to overheating/throttling but they save heatsink and mounting holes)

  12. Jon Smirl
    December 15th, 2016 at 22:46 | #12


    miniJST connector are not uncommon. You can buy them in Digikey. A common use of them is inside toys – many drones use miniJST power connectors. There is probably a standard drone battery that plugs into that connector.

  13. Jon Smirl
  14. tkaiser
    December 16th, 2016 at 22:02 | #14

    @Jon Smirl
    Thanks for the Amazon link (though not a single 6-pin connector/cable listed — it’s still a new and absolutely proprietary battery solution SinoVoip is trying to implement here and the only real information is Jean-Luc’s link above)

    @Mike Schinkel
    Why are you so keen on getting products without support? There exist a lot of Allwinner boards based on A series (A10, A13, A20, A33, A64 and so on) with a common battery connector and excellent vendor support (eg. from Olimex who use one single battery connector for all devices and also sell appropriate batteries)

  1. No trackbacks yet.