ubuntu 16.04安装PCB设计软件gEDA

$ sudo apt-get update && sudo apt-get install geda pcb gerbv

安装完成后,使用gEDA Schematic Editor进行电路的绘制。

比较遗憾的是gEDA已经很长时间没有更新了,更推荐使用KiCAD来开发。

这个软件一直都在更新,参考 ubuntu 16.04安装PCB设计软件KiCAD EDA

参考链接


macOS High Sierra(10.13.6)使用HL-340(CH340/CH341)芯片的USB转串口设备

最近开发需要,购买了一堆的USB转串口设备,在Linux下面都是免驱动的,但是到了macOS High Sierra(10.13.6)上,无法正常识别。在Linux上通过lsusb可以看到如下信息:

Bus 001 Device 008: ID 1a86:7523 QinHeng Electronics HL-340 USB-Serial adapter

继续阅读macOS High Sierra(10.13.6)使用HL-340(CH340/CH341)芯片的USB转串口设备

Ti Code Composer Studio 8.1.0使用SEGGER J-Link Emulator插件代码完整性校验

最近在使用Ti Code Composer Studio 8.1.0编译调试代码,当通过网上购买的SEGGER J-Link Emulator来烧写固件的时候,发现在某些情况下会出现固件烧录不正确,导致各种莫名其妙的问题。可以通过下图所示的方式,要求SEGGER J-Link Emulator在烧录完成固件后,对固件进行完整性校验,规避上面的问题。
继续阅读Ti Code Composer Studio 8.1.0使用SEGGER J-Link Emulator插件代码完整性校验

ubuntu 16.04(x64)编译并烧录NodeMCU固件

最近在捣鼓NodeMCU,中间各种折腾,下面记录一下编译固件的过程。

首先参考 ubuntu 16.04(x64)构建NodeMCU编译工具链 来构建工具链,然后把工具链加入到环境变量。

然后就是下载固件代码并进行编译了

$ git clone https://github.com/nodemcu/nodemcu-firmware.git

$ cd nodemcu-firmware

$ export PATH=/opt/Espressif/esp-open-sdk/xtensa-lx106-elf/bin:$PATH

$ make

#根据自己的设备实际情况选择4M还是512k的版本
$ make flash4m

如果存在下载问题,可以本站下载一份代码拷贝。点击此处下载

只要NodeMCU开发板通电或重置,就会执行init.lua脚本。因此,我们把自己的代码写在这个脚本里面即可。然后用luatool更新到NodeMCU设备里面即可。

$ sudo pip2 install pyserial

$ sudo pip2 install esptool

$ git clone https://github.com/4refr0nt/luatool.git

$ cd luatool/luatool

$ python2 luatool.py --port /dev/ttyUSB0 --src init.lua --dest init.lua --verbose -b 115200

注意上面的代码中,--port参数需要根据实际情况进行修改,--src参数也是一样需要根据我们实际的文件名来调整,最后的-b指定波特率,上面固件编译后默认的波特率是115200,淘宝上卖的设备,很多是默认9600的,这个要注意。

如果上面的代码下载存在问题,可以本站下载一份拷贝 点击这里下载luatool
继续阅读ubuntu 16.04(x64)编译并烧录NodeMCU固件

ubuntu 16.04(x64)构建NodeMCU编译工具链

最近在捣鼓NodeMCU,中间各种折腾,下面记录一下编译工具链的过程。

官方推荐的操作过程如下:

$ sudo mkdir /opt/Espressif 

$ sudo chown `whoami` /opt/Espressif/ 

$ cd /opt/Espressif 

$ sudo apt-get install git autoconf build-essential gperf bison flex texinfo libtool libncurses5-dev wget gawk libc6-dev-amd64 python-serial libexpat-dev

$ sudo apt install help2man

$ sudo apt-get install libtool-bin

$ git clone --recursive https://github.com/pfalcon/esp-open-sdk.git

$ cd esp-open-sdk

$ make STANDALONE=y

$ export PATH=$PWD/xtensa-lx106-elf/bin:$PATH

上面操作中最慢的依旧是下载依赖的工具链的源代码部分,可以从本站下载一份已经下载完全部依赖项目的编译环境。点击此处下载

本站下载的文件,直接执行make命令即可,不要执行make clean,make clean会删除ESP8266_NONOS_SDK文件夹,导致编译不通过。这种情况,可以还原Makefile,再次去服务器上拉取文件即可。

编译完成后,注意以下几个路径

  • esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/include/为头文件的所在目录
  • esp-open-sdk/xtensa-lx106-elf/bin为工具链所在目录
  • esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/lib为链接库目录

上面的几个路径在编译源代码的时候会用到。

以下的操作过程可以通过,但是已经过时,在实际编译新项目的时候,可能会出现异常,已经不推荐了。

$ sudo apt-get install git autoconf build-essential gperf bison flex texinfo libtool libncurses5-dev wget gawk libc6-dev-amd64 python-serial libexpat-dev

$ sudo apt-get install libtool-bin

$ sudo mkdir /opt/Espressif

$ sudo chown `whoami` /opt/Espressif/

$ cd /opt/Espressif

$ git clone -b lx106 git://github.com/jcmvbkbc/crosstool-NG.git 

$ cd crosstool-NG

$ ./bootstrap && ./configure --prefix=`pwd` && make && make install

$ ./ct-ng xtensa-lx106-elf

$ ./ct-ng build

$ PATH=$PWD/builds/xtensa-lx106-elf/bin:$PATH

对于上面的命令执行过程中,往往卡住在ct-ng build这个位置,观察目录下的build.log会发现总是卡住在文件下载的位置,大量的链接无法正确下载,都是国情导致的。

如果出现下载问题,一般建议从本站下载一份已经下载好的文件,当然,也可以手工从其他镜像站点逐个手工下载依赖的源代码压缩包。

参考操作如下:

$ cd /opt/Espressif/crosstool-NG

$ mkdir .build

$ cd .build

$ wget https://www.mobibrw.com/wp-content/uploads/2018/08/tarballs.zip

$ unzip tarballs.zip

$ rm -rf tarballs.zip

然后重新执行ct-ng build命令即可。

如果上面的代码下载存在问题,可以从本站下载一份拷贝,点击下载crosstool-NG

已经编译好的工具链,可以从本站下载,点击这里下载 xtensa-lx106-elf

参考链接


esp8266/esp8266-wiki/Toolchain

ubuntu 16.04编译NodeMCU-pyFlasher

最近在捣鼓NodeMCU,中间各种折腾,下面记录一下编译固件烧录工具的过程。

首先安装依赖包:

$ sudo apt-get install python3-pip

$ sudo pip3 install --upgrade pip

$ sudo pip3 install wxpython

$ sudo apt-get install pyseria

安装wxpython的时候,如果遇到问题,参考 ubuntu 16.04在Python3上安装wxpython-4.0.3

下载代码

$ sudo apt-get install git

$ git clone https://github.com/marcelstoer/nodemcu-pyflasher.git

如果源代码下载存在问题,可以本站下载一份拷贝

点击这里下载

编译并运行

$ cd nodemcu-pyflasher

$ bash build.sh

$ python3 Main.py

NUCLEO-F401RE开发板调试X-NUCLEO-IKS01A2传感器扩展板(macOS High Sierra 10.13.6)

NUCLEO-F401RE开发板调试X-NUCLEO-IKS01A2传感器扩展板(macOS High Sierra 10.13.6)
继续阅读NUCLEO-F401RE开发板调试X-NUCLEO-IKS01A2传感器扩展板(macOS High Sierra 10.13.6)

华为WS832修复(ubuntu 16.04.5系统下进行操作)

华为WS832已经损坏了很长时间了,一直提示是没有插上网线,明显是WAN口损坏了。跟华为的售后扯皮了几个月,华为拒绝维修,更换政策又非常的不合理,最后的解决方案就只剩下自己维修这一条路了。

继续阅读华为WS832修复(ubuntu 16.04.5系统下进行操作)