Group Details Private

administrators

Member List

  • RE: 开贴记录MangoPi-1设计过程(争取日更)

    @hlym123 TypeC引出网口,你的思路是纯硬件魔改,还是USB转网口芯片?

    posted in 芒果派-MangoPi™
  • RE: 开贴记录MangoPi-1设计过程(争取日更)

    @hlym123 其实很担心设计太激进了反而不方便 : (

    暂时网口选择了沉板式带灯,7mm高度与USB A口差不多。
    USB3.0的A口则是超短体无卷边。

    背面PCIE是妥妥的没有NGFF座子位置了哈哈

    posted in 芒果派-MangoPi™
  • 邮件推送已修复

    NodeBB不让人省心!

    posted in 其他
  • 主线固件,/etc/config/wireless 定制

    这个文件是根据 package/kernel/mac80211/files/lib/wifi/mac80211.sh 生成的,内容如下:

    其中110-123行动态生成配置,如需定制就要改动这里。

    #!/bin/sh
    append DRIVERS "mac80211"
    
    lookup_phy() {
            [ -n "$phy" ] && {
                    [ -d /sys/class/ieee80211/$phy ] && return
            }
    
            local devpath
            config_get devpath "$device" path
            [ -n "$devpath" ] && {
                    for phy in $(ls /sys/class/ieee80211 2>/dev/null); do
                            case "$(readlink -f /sys/class/ieee80211/$phy/device)" in
                                    *$devpath) return;;
                            esac
                    done
            }
    
            local macaddr="$(config_get "$device" macaddr | tr 'A-Z' 'a-z')"
            [ -n "$macaddr" ] && {
                    for _phy in /sys/class/ieee80211/*; do
                            [ -e "$_phy" ] || continue
    
                            [ "$macaddr" = "$(cat ${_phy}/macaddress)" ] || continue
                            phy="${_phy##*/}"
                            return
                    done
            }
            phy=
            return
    }
    
    find_mac80211_phy() {
            local device="$1"
    
            config_get phy "$device" phy
            lookup_phy
            [ -n "$phy" -a -d "/sys/class/ieee80211/$phy" ] || {
                    echo "PHY for wifi device $1 not found"
                    return 1
            }
            config_set "$device" phy "$phy"
    
            config_get macaddr "$device" macaddr
            [ -z "$macaddr" ] && {
                    config_set "$device" macaddr "$(cat /sys/class/ieee80211/${phy}/macaddress)"
            }
    
            return 0
    }
    
    check_mac80211_device() {
            config_get phy "$1" phy
            [ -z "$phy" ] && {
                    find_mac80211_phy "$1" >/dev/null || return 0
                    config_get phy "$1" phy
            }
            [ "$phy" = "$dev" ] && found=1
    }
    
    detect_mac80211() {
            devidx=0
            config_load wireless
            while :; do
                    config_get type "radio$devidx" type
                    [ -n "$type" ] || break
                    devidx=$(($devidx + 1))
            done
    
            for _dev in /sys/class/ieee80211/*; do
                    [ -e "$_dev" ] || continue
    
                    dev="${_dev##*/}"
    
                    found=0
                    config_foreach check_mac80211_device wifi-device
                    [ "$found" -gt 0 ] && continue
    
                    mode_band="g"
                    channel="11"
                    htmode=""
                    ht_capab=""
    
                    iw phy "$dev" info | grep -q 'Capabilities:' && htmode=HT20
    
                    iw phy "$dev" info | grep -q '5180 MHz' && {
                            mode_band="a"
                            channel="36"
                            iw phy "$dev" info | grep -q 'VHT Capabilities' && htmode="VHT80"
                    }
    
                    [ -n "$htmode" ] && ht_capab="set wireless.radio${devidx}.htmode=$htmode"
    
                    if [ -x /usr/bin/readlink -a -h /sys/class/ieee80211/${dev} ]; then
                            path="$(readlink -f /sys/class/ieee80211/${dev}/device)"
                    else
                            path=""
                    fi
                    if [ -n "$path" ]; then
                            path="${path##/sys/devices/}"
                            case "$path" in
                                    platform*/pci*) path="${path##platform/}";;
                            esac
                            dev_id="set wireless.radio${devidx}.path='$path'"
                    else
                            dev_id="set wireless.radio${devidx}.macaddr=$(cat /sys/class/ieee80211/${dev}/macaddress)"
                    fi
    
                    uci -q batch <<-EOF
                            set wireless.radio${devidx}=wifi-device
                            set wireless.radio${devidx}.type=mac80211
                            set wireless.radio${devidx}.channel=${channel}
                            set wireless.radio${devidx}.hwmode=11${mode_band}
                            ${dev_id}
                            ${ht_capab}
                            set wireless.radio${devidx}.disabled=1
    
                            set wireless.default_radio${devidx}=wifi-iface
                            set wireless.default_radio${devidx}.device=radio${devidx}
                            set wireless.default_radio${devidx}.network=lan
                            set wireless.default_radio${devidx}.mode=ap
                            set wireless.default_radio${devidx}.ssid=OpenWrt
                            set wireless.default_radio${devidx}.encryption=none
    EOF
                    uci -q commit wireless
    
                    devidx=$(($devidx + 1))
            done
    }
    
    posted in 联发科MTK
  • RE: 开贴记录MangoPi-1设计过程(争取日更)

    电源部分小幅度优化,主控可直接兼容贴A311D和S905D3

    posted in 芒果派-MangoPi™
  • RE: 注意:原有u-boot-mt7688无法直接用于MT7628DAN posted in 联发科MTK
  • 注意:原有u-boot-mt7688无法直接用于MT7628DAN

    因DAN内部封的DDR2颗粒,与我们市面上常见的DDR2颗粒在时延参数上有细微区别。所以u-boot代码必须要调整DDR2配置参数。否则会有小概率的系统运行中崩溃。

    此处fix优先照顾批量客户,请直接联系 m@widora.io / 18810241129 。

    posted in 联发科MTK
  • RE: 开贴记录MangoPi-1设计过程(争取日更)

    @zhangsan 一方面确实担心漏查了RPI的专利,所以设计避免雷同

    posted in 芒果派-MangoPi™
  • RE: 开贴记录MangoPi-1设计过程(争取日更)

    两个问题

    1、是否有必要板载网口,如果不板载,有什么好的方式引出千兆网
    2、是否有必要将右侧的USB3.0 A型口替换成TypeC的

    posted in 芒果派-MangoPi™
  • RE: 开贴记录MangoPi-1设计过程(争取日更)

    20201127

    整体大小按树莓派的50%来设计,保持一个相对美观的长宽比,初步定为60*40mm

    20201123102426.png

    接口资源

    正面: MIPI-DSI,千兆网口,HDMI,USB-TypeC(供电+OTG),USB3.0-A口,天线端子,按键,双排针。
    背面:MIPI-CSI(兼容树莓0用过的24Pin),TF卡槽,引出PCIE信号的小端子

    主要器件布局

    正面:CPU,LPDDR4,电源树
    背面:EMMC,PHY,WiFi&BT,若干电源

    散热考虑

    因CPU布局在正面,12nm工艺@2Ghz,首选能覆盖CPU和LPDDR颗粒的铝板固定。(因为LPDDR4走双通道,也需要一定的散热)

    PCB

    6层PCB,总厚度1.6mm,沉金,亚光蓝(暂定)

    天线

    一个Ipex,一个板载陶瓷

    操作系统

    初步可提供Ubuntu xfce和Android

    posted in 芒果派-MangoPi™