前两天看到晕哥帖子里面提到,如果想做基于V3x的开发板,并在哇酷社区开源的话,就可以得到两片免费的芯片,本着将白嫖(bu yao lian)进行到底的精神,果断找晕哥要了两片,所以开始吧。
--------------------------------------------------------------------------------------
原理图
V3x.pdf
效果图
当前pcb正在验证中,谨慎使用
-----
华秋打样的PCB
板子很精致(自恋)
早上5点起来开始焊接,不要多问,问就是早睡早起
焊接
成品展示
---
目前的问题:
1.LCD屏的背光电路好像有问题(最近和屏幕电路犯冲),接入电路后 核心、内存、主路电压高的飞起,应该是有一片V3x阵亡了。
2.因为没找到合适的测试镜像,参考https://whycan.com/t_6986.html 这个帖子第一种方案,做了一个u-boot,上电毫无反应,但是晶振旁边的电容电压为1.5V,应该是工作了,目前没有公对公USB线,所以没法测试fel是否可用。
---
使用V3s的镜像启动,卡在初始化内存了,正常,V3x使用的是ddr3
最近编辑记录 twzy (2021-12-18 09:13:24)
离线
这个尺寸是按树莓派大小吗?
感觉这就是个pi啊
离线
@twzy
另问V3x目前有没有比较容易上手的TF卡镜像呢?
离线
@twzy
另问V3x目前有没有比较容易上手的TF卡镜像呢?
我有,等会发
离线
@twzy
另问V3x目前有没有比较容易上手的TF卡镜像呢?
离线
touchey 说:@twzy
另问V3x目前有没有比较容易上手的TF卡镜像呢?
多谢,我晚上试试
离线
资本家大善人 说:touchey 说:@twzy
另问V3x目前有没有比较容易上手的TF卡镜像呢?多谢,我晚上试试
使用测试镜像已经成功执行,
那从u-boot移植开始吧,但是在此之前,需要分析一下背光电路,为啥会造成升压。
会不会是我把PT4103 焊反了?
离线
@twzy
V3X有可能搞个armbian镜像吗?
离线
一般这个脚是一脚。
离线
那应该是没接错,但是为啥会造成其他路电压猛增呢?
离线
@twzy
有没有可能是C51的耐压值不够?
离线
替换了D1 ,使用SS14,输出背光电压为5v,其他正常了。所以升了个寂寞,后续研究修改一下
https://whycan.com/files/members/6376/QQ图片20211218212330.jpg
D1S管脚跟V3X兼容吗?pin2pin
离线
twzy 说:替换了D1 ,使用SS14,输出背光电压为5v,其他正常了。所以升了个寂寞,后续研究修改一下
https://whycan.com/files/members/6376/QQ图片20211218212330.jpgD1S管脚跟V3X兼容吗?pin2pin
这是两种芯片吧,不兼容
离线
终于把心心念念的LCD屏驱动起来了
-------------------
全部硬件资料如下
V3x硬件资料.zip
目前调试进度:
------------------------
[ ]以太网卡未验证
[x]wifi已验证
[ ] 蓝牙未验证
[x]USB驱动已验证
[x]音频已验证
[x]LCD屏幕已验证
[ ] LED灯珠验证失败,大概是V3s中没有定义PC4~PC10,而我在V3x中定义LED灯珠为PC8\PC9\PC10,所以无法控制,另外我把丝印写错了。
离线
软件部分
--------------------
u-boot
https://gitee.com/byleefei/uboot-2021.07-v3x
如果想要通过直接在u-boot中配置bootcmd和bootargs
方法如下:
make ARCH=arm mipi-v3x_defconfig
make ARCH=arm menuconfig
关闭通过配置文件启动,取消图中的配置
配置参数
cmd
load mmc 0:1 0x41000000 zImage;load mmc 0:1 0x41800000 sun8i-v3s-licheepi-zero-with-480x272-lcd.dtb;bootz 0x41000000 - 0x41800000;
args
console=ttyS0,115200 root=/dev/mmcblk0p2 rootwait panic=10 earlyprintk rw
--------------
执行make 命令编译,烧写到TF卡,就可以启动了,对于内核和文件系统配置和V3s一致,就是需要注意PC4~PC10,和PD引脚的使用。
离线
内核以太网卡驱动成功
来源于:
https://wiki.sipeed.com/soft/Lichee/zh/Zero-Doc/Drive/Ethernet.html
因为使用的主线5.10.81 已经在设备树做了相关配置。只需要修改
arch/arm/boot/dts/sun8i-v3s-licheepi-zero.dts
使能以太网
&emac {
phy-handle = <&int_mii_phy>;
phy-mode = "mii";
allwinner,leds-active-low;
status = "okay";
};
复制zimage 和dtb文件到tf卡,上电以后,启动中就可以看到以太网灯已经亮了
进入系统,启动网卡
root@SnailPi:~# ifconfig
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
loop txqueuelen 1000 (Local Loopback)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
root@SnailPi:~# ifconfig eth0 up
[ 87.868047] dwmac-sun8i 1c30000.ethernet eth0: PHY [0.1:01] driver [Generic PHY] (irq=POLL)
[ 87.879265] dwmac-sun8i 1c30000.ethernet eth0: No Safety Features support found
[ 87.886622] dwmac-sun8i 1c30000.ethernet eth0: No MAC Management Counters available
[ 87.894407] dwmac-sun8i 1c30000.ethernet eth0: PTP not supported by HW
[ 87.901964] dwmac-sun8i 1c30000.ethernet eth0: configuring for phy/mii link mode
[ 87.985489] dwmac-sun8i 1c30000.ethernet eth0: Link is Up - 100Mbps/Full - flow control rx/tx
root@SnailPi:~# ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
ether d6:80:0d:77:87:5b txqueuelen 1000 (Ethernet)
RX packets 51 bytes 7408 (7.2 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
device interrupt 46
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
loop txqueuelen 1000 (Local Loopback)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
配置IP
root@SnailPi:~# udhcpc -i eth0
udhcpc: started, v1.30.1
udhcpc: sending discover
udhcpc: sending select for 192.168.3.107
udhcpc: lease of 192.168.3.107 obtained, lease time 86400
root@SnailPi:~#
root@SnailPi:~#
root@SnailPi:~#
root@SnailPi:~# ping www.baidu.com
PING www.a.shifen.com (220.181.38.149) 56(84) bytes of data.
64 bytes from 220.181.38.149 (220.181.38.149): icmp_seq=1 ttl=53 time=14.5 ms
64 bytes from 220.181.38.149 (220.181.38.149): icmp_seq=2 ttl=53 time=14.0 ms
64 bytes from 220.181.38.149 (220.181.38.149): icmp_seq=3 ttl=53 time=14.4 ms
64 bytes from 220.181.38.149 (220.181.38.149): icmp_seq=4 ttl=53 time=14.0 ms
64 bytes from 220.181.38.149 (220.181.38.149): icmp_seq=5 ttl=53 time=14.5 ms
64 bytes from 220.181.38.149 (220.181.38.149): icmp_seq=6 ttl=53 time=14.5 ms
64 bytes from 220.181.38.149 (220.181.38.149): icmp_seq=7 ttl=53 time=14.1 ms
64 bytes from 220.181.38.149 (220.181.38.149): icmp_seq=8 ttl=53 time=14.6 ms
离线
@twzy
高产,刚搞完200S,又启动了V3X👍
离线
u-boot,内核、Debain文件系统都在这里面了
链接:https://pan.baidu.com/s/12HrPDX7nl6pfvupotlY6Iw
提取码:00bv
1. rootfs用户名root密码123456
2 .拷贝 rtl8723bs_nic.bin 到根文件系统的 /lib/firmware/rtlwifi/ 目录下.
最近编辑记录 twzy (2021-12-21 13:14:44)
离线
@twzy
佩服,能不能为V3X试一下armbian系统?
前面有人试过V3s,不太成功,没有好用的镜像流传,
V3X RAM提升了不少,能不能再试一下呢
https://github.com/armbian/build
https://forum.armbian.com/topic/9504-very-small-platforms-rockchip-3308-and-allwinner-v3s/
离线
尝试使用lvgl,结果出现一种似花非花的尴尬局面
https://gitee.com/socbis/linux-lvgl/#lvgl-for-frame-buffer-device
git clone https://gitee.com/socbis/linux-lvgl.git -b lvgl-s5p6818
离线
尝试使用lvgl,结果出现一种似花非花的尴尬局面
https://gitee.com/socbis/linux-lvgl/#lvgl-for-frame-buffer-devicegit clone https://gitee.com/socbis/linux-lvgl.git -b lvgl-s5p6818
https://whycan.com/files/members/6376/QQ图片20211222212023.jpg
去官方github下载。改一下分辨率。改一下交叉编译器
离线
根据这个帖子的提示 https://whycan.com/t_7650.html
PC8~PC10 配置的LED灯已经可以点亮了
(ps 图中的丝印错了,PC应该对应的是64 ,PC8~PC10 应该是72~74)
把荔枝派的设备树文件包含的#include "sun8i-v3s.dtsi"换成#include "sun8i-v3.dtsi"就可以了
另外我在编译的时候报错了
我把sun8i-v3.dtsi文件中的
&mdio_mux {
external_mdio: mdio@2 {
reg = <2>;
#address-cells = <1>;
#size-cells = <0>;
};
};
注释了
离线
感谢楼主,解决我的大问题了。谢谢谢谢!
离线
https://whycan.com/files/members/6376/QQ图片20220110165110.jpg
使用Lvgl做的demo 为啥会分为左右两部分?
已经成功处理了,我是没想到竟然要修改
lv_conf.h
/*Color depth: 1 (1 byte per pixel), 8 (RGB332), 16 (RGB565), 32 (ARGB8888)*/
#define LV_COLOR_DEPTH 32 // 16
可以愉快的玩耍了
离线
背光自动开启已经好了
#include "sun8i-v3s-licheepi-zero.dts"
/ {
backlight: backlight {
compatible = "pwm-backlight";
pwms = <&pwm 0 1000000 0>;
//brightness-levels = <0 30 40 50 60 70 100>;
brightness-levels = <0 4 8 16 32 64 128 255>;
default-brightness-level = <6>;
//新增部分
enable-gpios = <&pio 1 4 0>;
post-pwm-on-delay-ms = <10>;
pwm-off-delay-ms = <10>;
};
……
离线
离线
楼主,您的uboot下 以太网可以跑吗?
离线
配置触屏驱动
1. 配置NS2009代码
下载NS2009驱动代码
ns2009.zip
根据原理图修改中断脚
#include <linux/input.h>
#include <linux/input-polldev.h>
#include <linux/input/touchscreen.h>
#include <linux/i2c.h>
/* polling interval in ms */
#define POLL_INTERVAL 148 //PE20 ****注意修改这里******
/* this driver uses 12-bit readout */
将代码放置到
drivers/input/touchscreen/ns2009.c
配置同一目录下kconfig,添加NS2009选项
config TOUCHSCREEN_NS2009
tristate "Nsiway NS2009 touchscreen"
depends on I2C
select INPUT_POLLDEV
help
Say Y here to enable Nsiway NS2009 resistive touchscreen
controller support.
If unsure, say N.
To compile this driver as a module, choose M here: the
module will be called ns2009.
配置同一目录一下的Makefile,添加编译条目
obj-$(CONFIG_TOUCHSCREEN_NS2009) += ns2009.o
2.配置设备树
修改 arch/arm/boot/dts/sun8i-v3s.dtsi
在SOC/PIO节点下添加
i2c1_pins: i2c1-pins {
pins = "PE21", "PE22";
function = "i2c1";
};
在soc节点下添加如下代码
i2c1: i2c@1c2b000 {
compatible = "allwinner,sun6i-a31-i2c";
reg = <0x01c2b000 0x400>;
interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&ccu CLK_BUS_I2C1>;
resets = <&ccu RST_BUS_I2C1>;
pinctrl-names = "default";
pinctrl-0 = <&i2c1_pins>;
status = "disabled";
#address-cells = <1>;
#size-cells = <0>;
};
修改arch/arm/boot/dts/sun8i-v3s-licheepi-zero.dts,使能i2c1,屏配置驱动
&i2c1 {
status = "okay";
ns2009: ns2009@48 {
compatible = "nsiway,ns2009";
reg = <0x48>;
};
};
通过menuconfig配置驱动
启动内核如果有如下类的代码输出那么就可以断定驱动已经好了
[ 1.372548] i2c /dev entries driver
[ 1.378800] sun8i-v3s-pinctrl 1c20800.pinctrl: supply vcc-pe not found, using dummy regulator
[ 1.390243] input: ns2009_ts as /devices/platform/soc/1c2b000.i2c/i2c-1/1-0048/input/input0
3.安装应用层触控驱动tslib-1.22
tslib-1.22.tar.gz
这部分在开发板上完成
安装一些组件
apt-get install autoconf automake libtool libffi-dev
mkdir tslib
chmod -R 777 tslib # 该步骤一定要做
cp tslib-1.22.tar.gz ~/tslib #将驱动复制到新建的目录中
cd tslib
tar -xvf tslib-1.22.tar.gz #解压
#开始编译
cd tslib-1.22
./autogen.sh
echo "ac_cv_func_malloc_0_nonnull=yes" > arm-linux.cache
./configure --prefix=/root/packet/tslib --cache-file=arm-linux.cache
make
make install
复制刚才生成的组件
# 拷贝动态库到根文件系统
cd ~/tslib
cp lib/* /lib -d -rf
cp etc/* /etc -d -rf
cp bin/* /bin -d -rf
# 拷贝动态库到交叉工具链
cp -rf include/* /usr/include
cp -d -rf lib/libts* /lib
修改配置文件
cd /etc
nano profile
export TSLIB_TSDEVICE=/dev/input/event0 #指定触摸屏设备
export TSLIB_FBDEVICE=/dev/fb0 #指定显示器设备
export TSLIB_CONFFILE=/etc/ts.conf #指定tslib配置文件的路径
export TSLIB_CALIBFILE=/etc/pointercal #指定校准文件的存放位置
export TSLIB_PLUGINDIR=/lib/ts #指定tslib插件文件的路径
export LD_LIBRARY_PATH=/lib #添加 tslib 库
export TSLIB_CONSOLEDEVICE=none #设备控制台文件名
4. 触屏校准
cd ~/tslib/tslib-1.22/tests
./ts_calibrate #执行校准
./ts_test # 进行测试
最近编辑记录 twzy (2022-02-08 10:15:53)
离线
触摸屏这么慢的??
离线
v3x 跟 V3S 是什么关系
离线
V3s应该没有F1C100s那么snail了吧
离线
V3x芯片,与V3s同一die,那么软件方面基本应该可以是通用的,这样Linux的移植就可以借鉴V3s。
离线
编译ns2009的时候提示没有linux/input-polldev.h,请问这个是哪个设置的?
搜索的话是这样的(linux 5.15.30)
│ Symbol: INPUT_POLLDEV [=INPUT_POLLDEV] │
│ Type : unknown │
│ Selected by [y]: │
│ - TOUCHSCREEN_NS2009 [=y] && INPUT [=y] && INPUT_TOUCHSCREEN [=y] && I2C [=y]
最近编辑记录 on_raptor (2022-04-09 23:50:08)
离线
可以测一下这个片子跑openwrt的性能嘛
离线
倒是希望有更多的LVGL及触控视频
离线
v3x这个芯片在全志官网上没找到呢
离线
大佬有编译好的镜像文件能发一份吗 , 做了两张您开源的v3x开发板想测试一下功能
离线
大佬有编译好的镜像文件能发一份吗 , 做了两张您开源的v32开发板想测试一下功能
离线
leaves 说:大佬有编译好的镜像文件能发一份吗 , 做了两张您开源的v3x开发板想测试一下功能
24楼有相关内容,编译一下就ok了,领完论坛中有帖子提供了直接测试的镜像
不太会编译,折腾一天还是不太明白 我再看看吧
离线
大佬再问一下 您是用buildroot 编译的吗,我实在是没有这方面一点知识,希望大佬指一下路
离线
我遇到点问题,请求大佬解答
# insmod /usr/lib/r8723bs.ko
[ 121.627005] r8723bs: module is from the staging directory, the quality is unknown, you have been warned.
[ 121.643436] RTL8723BS: module init start
[ 121.647518] RTL8723BS: rtl8723bs v4.3.5.5_12290.20140916_BTCOEX20140507-4E40
[ 121.654562] RTL8723BS: rtl8723bs BT-Coex version = BTCOEX20140507-4E40
[ 121.662217] pnetdev = c290c800
[ 121.707152] RTL8723BS: rtw_ndev_init(wlan0)
[ 121.712879] RTL8723BS: module init ret =0
# ifconfig wlan0 up
[ 136.167597] rtl8723bs: acquire FW from file:rtlwifi/rtl8723bs_nic.bin
[ 136.175284] sunxi-mmc 1c10000.mmc: data error, sending stop command
[ 136.182358] sunxi-mmc 1c10000.mmc: data error, sending stop command
[ 136.188864] sunxi-mmc 1c10000.mmc: data error, sending stop command
[ 136.195182] sunxi-mmc 1c10000.mmc: data error, sending stop command
[ 136.201996] sunxi-mmc 1c10000.mmc: data error, sending stop command
[ 136.208431] sunxi-mmc 1c10000.mmc: data error, sending stop command
[ 136.214741] sunxi-mmc 1c10000.mmc: data error, sending stop command
[ 136.221460] sunxi-mmc 1c10000.mmc: data error, sending stop command
[ 136.227850] sunxi-mmc 1c10000.mmc: data error, sending stop command
[ 136.234130] ====>_BlockWrite 92 i:19
[ 136.237742] ====>_WriteFW 177
[ 136.241884] sunxi-mmc 1c10000.mmc: data error, sending stop command
[ 136.248292] sunxi-mmc 1c10000.mmc: data error, sending stop command
[ 136.254576] ====>_BlockWrite 92 i:19
[ 136.258188] ====>_WriteFW 177
ifconfig: SIOCSIFFLAGS: Operation not permitted
# ifconfig
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
# ifconfig -a
eth0 Link encap:Ethernet HWaddr 02:02:1C:1A:FA:AB
BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
Interrupt:38
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
usb0 Link encap:Ethernet HWaddr BA:CE:40:7E:3A:B0
BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
wlan0 Link encap:Ethernet HWaddr 34:C3:D2:FB:F1:87
BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
# ifconfig wlan0 up
[ 183.062637] rtl8723bs: acquire FW from file:rtlwifi/rtl8723bs_nic.bin
[ 183.070281] sunxi-mmc 1c10000.mmc: data error, sending stop command
[ 183.077340] sunxi-mmc 1c10000.mmc: data error, sending stop command
[ 183.083664] ====>_BlockWrite 92 i:19
[ 183.087360] ====>_WriteFW 177
ifconfig: SIOCSIFFLAGS: Operation not permitted
离线
@UmiUwifi
你这是SDIO 的请求的问题,不过BS这个不确定驱动问题还是硬件问题,很容易出问题我原来用的时候,也在稳定使用一段时间以后就开始报这个错误。
你有一个成功的董事会出售?我想买你的板
离线
我想问一下为啥我的屏幕不亮,40pin显示屏的调试过程有嘛,
离线
有没有测过 硬接 H.264 ?
离线
V3S和V3X的SDK是一样的吗?
离线
之前玩过V3S,竟然给玩坏了,烧写spi flash 烧写不进去了。。。
离线
v3x这个芯片在全志官网上没找到呢
离线
这个有没有源文档,共享下
离线
请问,大佬 这块板子的SD卡 怎么烧录的哇,我一直串口都没输出
离线
@twzy
可以的,v3x比v3s好太多了。就是价格有点贵
离线