

Very good micro python board
https://item.taobao.com/item.htm?spm=a1z09.2.0.0.15412e8duBDI2J&id=645704746945&_u=mbuhab0da05

Tiny STM32 board (STM32F103C8T6)
https://item.taobao.com/item.htm?spm=a1z09.2.0.0.67002e8ddznHy0&id=630403001847&_u=gbuhab04cbb STM32F103C8T6

Generate verilator coverage report in html
Remark: https://aijishu.com/a/1060000000330400 brew install iconv or apt-get install lcov
Solved: The request message is too big. The server does not allow messages larger than 2097152 bytes.
SharePoint Online CSOM error : The request message is too big. The server does not allow messages larger than 2097152 bytes.

Solved: SharePoint 2019 ERR_HTTP2_PROTOCOL_ERROR
Navigate to the registry key 2.HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\HTTP\Parameters. Add 2 new REG_DWORD values, EnableHttp2Tls and EnableHttp2Cleartext, to this registry key. Set both values to 0. Reboot the server refer to https://stackoverflow.com/questions/67747270/reactjs-neterr-http2-protocol-error-200-with-netcore-in-https/67767129#67767129
Clean Architecture
1. 一棟大廈不可能分成兩棟能完全獨立運作的大廈,但軟件通常由能獨立運作的小軟件所組成,所以有理由相信軟件工程比土木工程複雜 2. 軟件工程是內循環的,意思是用軟件A創造軟件B,之後又用軟件B改進軟件A,而土木工程是單向的,所以有理由相信軟件工程比土木工程複雜 3. 就算摩天大廈,起第一層和起第一百層的技術差不多,但軟件中不同層數的建築方法是完全不同,例如os層和web層,所以有理由相信軟件工程比土木工程複雜 4. 軟件工程中做同一件事的方法比土木工程多很多,所以有理由相信軟件工程比土木工程複雜

Convert 64 bits binary string to BigInteger and maintain the sign
The first and third method converted successfully with sign. The second one fail. The reason 3rd way working is : It convert to biginteger and convert to long (then we have sign),then convert back to biginteger (also with sign)
Resolved ICESugar pro blink.v :
ERROR: Module rst_gen contains processes, which are not supported by JSON backend (run `proc` first). Edit Makefile $(TARGET).json: $(OBJS) # yosys -p “synth_ecp5 -json $@” $(OBJS) yosys -p “read_verilog -sv $<” -p “synth_ecp5 -json $@” $(OBJS)

正点原子Mini STM32F103RCT6在STM32CubeMX中玩UART
正點原子的教程是在Keil, 如果要在STM32CubeMX裏玩UART可跟以下步驟 Step 1. Step 2. Comment the whole file Step 3. Add these 3 files from the CD Step 4. Modify usart.c , default example override fputc never works, we have to overrid _write Step 5. Add this

Python read/write jtag via FTDI chip
Bought from here . Example is here https://ftdichip.com/wp-content/uploads/2020/08/AN_110_Programmers_Guide_for_High_Speed_FTCJTAG_DLL-1.pdf Read PWM Pins reference : https://ftdichip.com/wp-content/uploads/2020/07/AN_184-FTDI-Device-Input-Output-Pin-States.pdf
Arduino Uno programme ATTiny85 works
following https://jimirobot.tw/arduino-tutorial-attiny-attiny85-uno-burn/

MRK Wifi 1010 serial is different
MRK Wifi 1010 serial is different than Nano and Uno, the usb in serial and in D13/14 are separate, so code them this way

start point to build our own jtag for our risc-v cpu
After days of hacking, i finally found out there is a dummy driver in openocd. just ./configure –enable-dummy and run it by ./bin/openocd -c ‘interface dummy’ -c ‘adapter_khz 1’ , you can see the dummy driver is running and in the function “static int dummy_write(int tck, int tms, int tdi)”, we can manually toggle the…
Read more
Compile libsigrok and pulseview in windows by msys2
This is the tutorial to build libsigrok and pulseview in windows Download msys https://www.msys2.org/ Open “MSYS2 MinGW x64”, don’t use “MSYS2 MSYS” 3. git clone https://github.com/sigrokproject/sigrok-util.git 4. cd sigrok-utils/cross-compile/msys2 5. ./sigrok-native-msys2 prepare , it will auto install all necessary packages Compile libsigrok 6. git clone https://gitlab.com/quantr/toolchain/libsigrok.git 7. cd libsigrok 8. ./autogen.sh 9. vi configure and…
Read more

Using FlatArcOrangeIJTheme gives me a new fresh look of NetBeans
I am not sure I add this L&F right, but it just works. Below are the steps Below is the code to use FlatArcOrangeIJTheme in your swing app I am thinking to create a NetBeans plugin to let users switch themes, but the above code has to be run before any swing component is unitized.…
Read more
Openlane + wsl2 : repository does not exist or may require ‘docker login’
when you have this problem
Openlane init files
If run fail, have to remove the “runs” folder before rerun, otherwise same error will be shown initProject.sh runProject.sh my_design.v config.tcl

Don’t use “skip” in antlr grammar for netbeans syntax highlight
use “channel (HIDDEN)” instead of “skip”, otherwise the netbeans will throw exception.

validate() in TableCellRenderer affect performance in windows
validate() in TableCellRenderer affect performance in windows, just read the source code of DefaultTableCellRenderer, just override it with empty function body will increase huge performance. Only windows affect this, mac and linux wont.

Good web to learn RISC-V interrupt
https://github-wiki-see.page/m/ianchen0119/AwesomeCS/wiki/Hello%2C-OS%21 https://github-wiki-see.page/m/ianchen0119/AwesomeCS/wiki/2-5-RISC-V::%E4%B8%AD%E6%96%B7%E8%88%87%E7%95%B0%E5%B8%B8%E8%99%95%E7%90%86—-PLIC-%E4%BB%8B%E7%B4%B9 https://github-wiki-see.page/m/ianchen0119/AwesomeCS/wiki/2-4-RISC-V::%E4%B8%AD%E6%96%B7%E8%88%87%E7%95%B0%E5%B8%B8%E8%99%95%E7%90%86—-%E4%B8%AD%E6%96%B7%E7%AF%87
SharePoint Online奇怪現象
呼叫SharePoint Online Restful api時,如果ISPHttpClientOptions是空一樣能成功,但返回之時間值會錯timezone