--------------------[START] v2020-01-04 (current) --------------------- // By TFTP nand erase.chip; tftp 0x80000000 MLO; nand erase 0x00000000 0x00080000; nand write 0x80000000 0x00000000 0x00080000; tftp 0x80000000 u-boot.img; nand erase 0x00080000 0x00100000; nand write 0x80000000 0x00080000 0x00100000; tftp 0x80000000 am335x-evm.dtb; nand erase 0x00300000 0x00080000; nand write 0x80000000 0x00300000 0x00080000; tftp 0x80000000 zimage; nand erase 0x00400000 0x00A00000; nand write 0x80000000 0x00400000 0x00A00000; tftp 0x80000000 ramdisk.gz; nand erase 0x03000000 0x03000000; nand write 0x80000000 0x03000000 0x03000000; tftp 0x80000000 FactoryConfig.bin; nand erase 0x09C00000 0x00600000; nand write 0x80000000 0x09C00000 0x00600000; reset; // By SD Card nand erase.chip; mw 0x80000000 0xffffffff 0x00080000;fatload mmc 0 0x80000000 MLO; nand erase 0x00000000 0x00080000;nand write 0x80000000 0x00000000 0x00080000; mw 0x80000000 0xffffffff 0x00100000;fatload mmc 0 0x80000000 u-boot.img; nand erase 0x00080000 0x00100000;nand write 0x80000000 0x00080000 0x00100000; mw 0x80000000 0xffffffff 0x00080000;fatload mmc 0 0x80000000 am335x-evm.dtb; nand erase 0x00300000 0x00080000;nand write 0x80000000 0x00300000 0x00080000; mw 0x80000000 0xffffffff 0x00A00000;fatload mmc 0 0x80000000 zimage; nand erase 0x00400000 0x00A00000;nand write 0x80000000 0x00400000 0x00A00000; mw 0x80000000 0xffffffff 0x03000000;fatload mmc 0 0x80000000 ramdisk.gz; nand erase 0x03000000 0x03000000;nand write 0x80000000 0x03000000 0x03000000; mw 0x80000000 0xffffffff 0x00600000;fatload mmc 0 0x80000000 FactoryConfig.bin; nand erase 0x09C00000 0x00600000;nand write 0x80000000 0x09C00000 0x00600000; reset; ---------------------[END] v2020-01-04 (current) ---------------------- //Web Service - https://192.168.1.10 - username: admin - password: 1231231238 ----------------------------------------- //FW FTP Server - address: ftp.phihong.com.tw - username:ipc_ui - password:pht2016 ----------------------------------------- [How to updtate SPI driver for QCA7000] insmod /lib/qcaspi.ko{U+00A1}{U+00A8} ----------------------------------------- [How to ping?] ping -I eth0 192.168.0.1 ----------------------------------------- [How to check SD Card?] $mmc $mmc info ----------------------------------------- [How to mount SD Card?] ls /dev/mmc* mount /dev/mmcblk0p1 /UsbFlash/ ----------------------------------------- [How to Erase All NAND Flash?] nand erase.chip ----------------------------------------- [How to Open Terminal in MAC?] screen /dev/tty.usbserial-A100GJE3 115200 ----------------------------------------- [Linux Command] free -m ----------------------------------------- Log Procedure (tcpdump) //MOUNT + REMOVE mount /dev/mmcblk0p1 /UsbFlash/;cp /UsbFlash/SeccComm /root/;cp /UsbFlash/main /root/;cp /UsbFlash/CsuComm /root/;cp /UsbFlash/go.sh /root/;cp /UsbFlash/stop.sh /root/; ----------------------------------------- can-utils Rx: candump can0 & Rx to file: candump -l can0 Tx: cansend can0 888#11223344 Kill: killall candump [Check CAN bus loading] canbusload can0@500000 -r -t -b -c ref: http://manpages.ubuntu.com/manpages/bionic/man1/canbusload.1.htmlhttp://manpages.ubuntu.com/manpages/bionic/man1/canbusload.1.html [Stop by EVSE] cansend can0 00000C01#01000000000000 [Stop by EV] cansend can0 08000B01#01000000000000 [Update FW (ID = 1)] cansend can0 08001101#00 [Update FW (ID = 2)] cansend can0 08001102#00 ----------------------------------------- //MOUNT + REMOVE + COPY (./root) umount /dev/mmcblk0p1; mount /dev/mmcblk0p1 /UsbFlash/; rm -f /root/SeccComm; rm -f /root/CsuComm; rm -f /root/main; rm -f /root/stop.sh; rm -f /root/reset_soft.sh; rm -f /root/reboot.sh; cp -rfv /UsbFlash/SeccComm /root/; cp -rfv /UsbFlash/main /root/; cp -rfv /UsbFlash/CsuComm /root/; cp -rfv /UsbFlash/stop.sh /root/; cp -rfv /UsbFlash/reset_soft.sh /root/; cp -rfv /UsbFlash/reboot.sh /root/; sync; umount /dev/mmcblk0p1; ----------------------------------------- //MOUNT + REMOVE + COPY (./Storage/root) umount /dev/mmcblk0p1; mount /dev/mmcblk0p1 /UsbFlash/; rm -f /Storage/root/SeccComm; rm -f /Storage/root/CsuComm; rm -f /Storage/root/main; rm -f /Storage/root/go.sh; rm -f /Storage/root/stop.sh; rm -f /Storage/root/reset_soft.sh; rm -f /Storage/root/reboot.sh; cp -rfv /UsbFlash/SeccComm /Storage/root/; cp -rfv /UsbFlash/main /Storage/root/; cp -rfv /UsbFlash/CsuComm /Storage/root/; cp -rfv /UsbFlash/go.sh /Storage/root/; cp -rfv /UsbFlash/stop.sh /Storage/root/; cp -rfv /UsbFlash/reset_soft.sh /Storage/root/; cp -rfv /UsbFlash/reboot.sh /Storage/root/; sync; umount /dev/mmcblk0p1; ----------------------------------------- //Sniffer tcpdump -i eth1 -w /UsbFlash/packets.pcap; tcpdump -i eth1 -w /Storage/SystemLog/packets.pcap; echo 50000 > /sys/class/pwm/pwmchip0/pwm0/duty_cycle; /root/SeccComm & /root/main & tcpdump -i eth1 -w /UsbFlash/packets.pcap & ----------------------------------------- [How to Set PWM Duty?] //default 100% echo 1000000 > /sys/class/pwm/pwmchip0/pwm0/duty_cycle //5% echo 50000 > /sys/class/pwm/pwmchip0/pwm0/duty_cycle //9% echo 90000 > /sys/class/pwm/pwmchip0/pwm0/duty_cycle //33% echo 330000 > /sys/class/pwm/pwmchip0/pwm0/duty_cycle ----------------------------------------- [Pilot Status E control (0V)] echo 1 > /sys/class/gpio/gpio86/value echo 0 > /sys/class/gpio/gpio86/value ----------------------------------------- [Switch CP Protection Circuit] ----------------------------------------- [AM_IO_1][LCD_HSYNC](gpio2_23: input) cat /sys/class/gpio/gpio87/value ----------------------------------------- [AM_IO_2][LCD_AC_BIAS_EN](gpio2_25: output) echo 1 > /sys/class/gpio/gpio89/value echo 0 > /sys/class/gpio/gpio89/value ----------------------------------------- [Read CP ADC Value] (AIN3) cat /sys/bus/iio/devices/iio\:device0/in_voltage3_raw; ----------------------------------------- [Read PP ADC Value] (AIN2) cat /sys/bus/iio/devices/iio\:device0/in_voltage2_raw; ----------------------------------------- [Change IP Address] ifconfig eth0 192.168.1.22 ----------------------------------------- [How can I bridge two interfaces with ip/iproute2?] brctl addbr br0 brctl addif br0 eth0 brctl addif br0 eth1 ifconfig br0 up ip link add name br0 type bridge ip link set dev br0 up ip link set dev eth0 master br0 ip link set dev eth1 master br0 ref: https://unix.stackexchange.com/questions/255484/how-can-i-bridge-two-interfaces-with-ip-iproute2 ----------------------------------------- //==================== CsuComm CAN Protocol Commands ========================= [DIR] [Message] [Frame ID] [Frame Payload] CSU ← CCS CAN_CMD_ADDRESS_REQUEST 080001FF A1 B2 C3 D4 CSU → CCS CAN_CMD_ADDRESS_ASSIGN 00000201 A1 B2 C3 D4 CSU ← CCS CAN_CMD_EV_BOARD_STATUS 08000301 CSU → CCS CAN_CMD_GET_FW_VERSION 00000401 null CSU → CCS CAN_CMD_GET_HW_VERSION 00000501 null CSU → CCS CAN_CMD_CHARGING_PERMISSION 00000601 01 2C 01 58 02 4C 1D 00 - Permission: 1 - Max Power = 30KW (0x001E) - Max Current = 60A (0x003C) - Max Voltage = 750V (0x02EE) - Max Time = 0 (unlimited) CSU → CCS CAN_CMD_EVSE_OUTPUT_STATUS_ANNOUNCEMENT 00000701 CSU → CCS CAN_CMD_EVSE_CAPACITY_ANNOUNCEMENT 00000801 CSU → CCS CAN_CMD_GET_EV_TARGET_INFO 00000901 CSU → CCS CAN_CMD_GET_EV_BATTERY_INFO 00000A01 CSU ← CCS CAN_CMD_EV_STOP_EVENT 08000B01 CSU → CCS CAN_CMD_EVSE_STOP_EVENT 00000C01 CSU → CCS CAN_CMD_GET_MISC_INFO 00000D01 CSU → CCS CAN_CMD_DOWNLOAD_REQUEST 00000E01 CSU → CCS CAN_CMD_START_BLOCK_TRANSFER 00000F01 CSU → CCS CAN_CMD_DATA_TRANSFER 00001001 CSU → CCS CAN_CMD_DOWNLOAD_FINISH 00001101 CSU → CCS CAN_CMD_ISOLATION_STATUS 00001201 CSU → CCS CAN_CMD_CCS_CONNECTOR_INFO 00001301 CSU → CCS CAN_CMD_RTC_INFO 00001401