embeded/orange pi2022. 11. 6. 19:54

orange pi 는 그래도 H 시리즈이긴 한데 검색해보면 영 꺼림직 하네..

걍 봉인해야 하나?

 

[링크 : https://www.reddit.com/r/OrangePI/comments/4ir1um/orange_pi_has_root_debugger_backdoor/]

[링크 : https://github.com/armbian/build/issues/282]

 

echo "rootmydevice" > /proc/sunxi_debug/sunxi_debug

[링크 : https://namu.wiki/w/Allwinner]

 

The sunxi-debug driver in Allwinner 3.4 legacy kernel for H3, A83T and H8 devices allows local users to gain root privileges by sending "rootmydevice" to /proc/sunxi_debug/sunxi_debug.

[링크 : https://nvd.nist.gov/vuln/detail/CVE-2016-10225]

 

 

+

5.10.75-sunxi64  커널이었네.. 받았을 당시에는 백도어 생각을 못해서 넘어갔는데 흐음..

2021.12.28 - [embeded/orange pi] - orange pi 3 기동

'embeded > orange pi' 카테고리의 다른 글

rk3588 HDMI RX interface  (0) 2023.06.30
android on orange pi 3  (0) 2022.12.07
orange pi 3 관련 문서  (0) 2022.01.03
oragne pi 3 / eMMC와 sd 부팅  (0) 2022.01.03
allwinner(orange pi 3) vs amlogic(odroid c2)  (0) 2022.01.01
Posted by 구차니
embeded/FPGA - XILINX2022. 11. 2. 15:14

정체 불명의 EBAZ4205 라는 보드

12V 몰렉스 3x2 핀이 필요하지만 장난질(?) 치면 그냥도 켤 순 있을 것 같은데, 가격도 착하고 끌린다!

[링크 : http://itempage3.auction.co.kr/DetailView.aspx?itemno=C764788575]

[링크 : https://github.com/KeitetsuWorks/EBAZ4205]

[링크 : https://theokelo.co.ke/getting-starting-with-ebaz4205-zynq-7000/]

 

원래 35위안/5달러 근처의  ASIC 마이터 제어용 보드인 듯.

근데.. ASIC 돌리는데 왜 굳이 zynq를...?

This development board was the control card of Ebit E9+ BTC miner. In mainland China, it cost about 5 dollars (<35 CNY) on the secondhand market.

[링크 : https://github.com/xjtuecho/EBAZ4205]

[링크 : https://www.asicminervalue.com/miners/ebang/ebit-e9]

 

2.54mm 아니고 2.00mm pitch 핀헤더로, 14 * 3 = 42개 GPIO가 나와있긴 하다.

 

아날로그 쪽은 최대한 빠져있긴 한데, MIO 쪽은 별로 없어서 어떻게 쓸 수 있을지 모르겠다. 

FPGA의 ADC를 이용해서 온도 모니터링 하려고 zynq로 한건가?

 

+

[링크 : https://ko.aliexpress.com/item/1005004052650225.html] 49203 + 5103 = 54306 / 174주문 <<

[링크 : https://ko.aliexpress.com/item/1005004460394748.html] 49075 + 5776 = 54851 / 60주문

'embeded > FPGA - XILINX' 카테고리의 다른 글

xilinx - partial bitstream  (0) 2023.04.24
vivado 설치 하려고 했더니.  (0) 2023.01.08
xvc - xilinx virtual cable  (0) 2021.08.24
microzed..  (0) 2021.04.07
pmod pinout  (0) 2021.04.02
Posted by 구차니
embeded/raspberry pi2022. 10. 14. 07:01

라즈베리 4 되면서 3랑은 구조가 달라졌는데

uboot 외에도 eeprom으로 탑재된 독립된 부트로더가 존재한다

그래서 라즈베리 4는 켜면 먼가.. 그래픽 하게 PC 같은 느낌으로 나온다.

[링크 : https://raspberrypi.stackexchange.com/questions/117098/how-to-remove-the-bootloader-startup-screen-on-rpi-4-buster]

 

아무튼 얘가 날아갔을 때 복구이려나?

[링크 : https://www.fastoe.com/blog/rpi-4_400-eeprom-recovery-guide]

 

'embeded > raspberry pi' 카테고리의 다른 글

i2cdetect UU  (0) 2023.01.18
rpi 3b+ PMIC 손상  (0) 2022.11.30
라즈베리 파이4 apm 설치시 php 작동 안될 경우  (0) 2022.08.30
adxl345 spi  (0) 2022.08.17
tea5767 모듈 땜질  (0) 2022.08.17
Posted by 구차니
embeded/raspberry pi2022. 8. 30. 10:48

apahce2 mariadb php7.4 를 설치해도

phpinfo()가 작동안되서 한참을 헤맸다 -_

 

$ sudo apt-get install libapache2-mod-php7.4

[링크 : https://oopaque.tistory.com/91]

'embeded > raspberry pi' 카테고리의 다른 글

rpi 3b+ PMIC 손상  (0) 2022.11.30
rpi4 eeprom recovery  (0) 2022.10.14
adxl345 spi  (0) 2022.08.17
tea5767 모듈 땜질  (0) 2022.08.17
rpi3b에서 wayvnc 빌드 + 실행하기  (0) 2022.08.10
Posted by 구차니
embeded/Cortex-M3 STM2022. 8. 29. 10:37

STM32F는 이렇게 단순한데

 

검색한 내용중에 H와 G 시리즈가 걸려 나와서

STM32G로 검색해서 가장 위에 있던 STM32G030C6Tx로

프로젝트 구성해보니 내용이 많이 나온다. 눈에 띄는건.. MSB First 라는 항목

 

main.c는 아래와 같이 생성되었고

  /* USER CODE END USART1_Init 1 */
  huart1.Instance = USART1;
  huart1.Init.BaudRate = 115200;
  huart1.Init.WordLength = UART_WORDLENGTH_8B;
  huart1.Init.StopBits = UART_STOPBITS_1;
  huart1.Init.Parity = UART_PARITY_NONE;
  huart1.Init.Mode = UART_MODE_TX_RX;
  huart1.Init.HwFlowCtl = UART_HWCONTROL_NONE;
  huart1.Init.OverSampling = UART_OVERSAMPLING_16;
  huart1.Init.OneBitSampling = UART_ONE_BIT_SAMPLE_DISABLE;
  huart1.Init.ClockPrescaler = UART_PRESCALER_DIV1;
  huart1.AdvancedInit.AdvFeatureInit = UART_ADVFEATURE_DMADISABLEONERROR_INIT|UART_ADVFEATURE_MSBFIRST_INIT;
  huart1.AdvancedInit.DMADisableonRxError = UART_ADVFEATURE_DMA_DISABLEONRXERROR;
  huart1.AdvancedInit.MSBFirst = UART_ADVFEATURE_MSBFIRST_ENABLE;

 

Stm32g0xx_hal_uart.h를 따라가면 아래와 같이 먼가 있긴 하다.(귀찮아..)

#define UART_ADVFEATURE_NO_INIT                 0x00000000U          /*!< No advanced feature initialization       */
#define UART_ADVFEATURE_TXINVERT_INIT           0x00000001U          /*!< TX pin active level inversion            */
#define UART_ADVFEATURE_RXINVERT_INIT           0x00000002U          /*!< RX pin active level inversion            */
#define UART_ADVFEATURE_DATAINVERT_INIT         0x00000004U          /*!< Binary data inversion                    */
#define UART_ADVFEATURE_SWAP_INIT               0x00000008U          /*!< TX/RX pins swap                          */
#define UART_ADVFEATURE_RXOVERRUNDISABLE_INIT   0x00000010U          /*!< RX overrun disable                       */
#define UART_ADVFEATURE_DMADISABLEONERROR_INIT  0x00000020U          /*!< DMA disable on Reception Error           */
#define UART_ADVFEATURE_AUTOBAUDRATE_INIT       0x00000040U          /*!< Auto Baud rate detection initialization  */
#define UART_ADVFEATURE_MSBFIRST_INIT           0x00000080U          /*!< Most significant bit sent/received first */


#define USART_CR2_MSBFIRST_Pos       (19U)
#define USART_CR2_MSBFIRST_Msk       (0x1UL << USART_CR2_MSBFIRST_Pos)         /*!< 0x00080000 */
#define USART_CR2_MSBFIRST           USART_CR2_MSBFIRST_Msk                    /*!< Most Significant Bit First */


#define UART_ADVFEATURE_MSBFIRST_DISABLE    0x00000000U             /*!< Most significant bit sent/received
                                                                         first disable                      */
#define UART_ADVFEATURE_MSBFIRST_ENABLE     USART_CR2_MSBFIRST      /*!< Most significant bit sent/received
                                                                         first enable                       */

 

The USART can also communicate synchronously. It can operate as a SPI in Master or Slave mode with programmable clock polarity (CPOL) and phase (CPHA) and programmable data order with MSB or LSB first. The clock is output (in case of Master mode) or input (in case of Slave mode) on the CK pin. No clock pulses are provided during the start and stop bits. When the USART is configured in SPI slave mode, it supports the Transmit underrun error and the NSS hardware or software management.

[링크 : https://www.st.com/.../en.STM32G0-Peripheral-USART-interface-USART.pdf]

[링크 : https://www.st.com/.../en.STM32H7-Peripheral-USART_interface_USART.pdf]

'embeded > Cortex-M3 STM' 카테고리의 다른 글

stm32 tim output compare(OC) mode  (0) 2024.07.12
stm32 reset 없이 JTAG 붙이기  (0) 2023.07.19
stm32 wdg 최대 설정시간  (0) 2021.08.09
stm32 RST pull-up reset fail  (0) 2021.08.02
STM32 RDP(ReaD Protection)  (0) 2021.07.02
Posted by 구차니
embeded/ARM2022. 8. 26. 18:25

왜 찾게 되었냐면.. 알고 싶지 않았습니다.. -_-

[링크 : https://stackoverflow.com/questions/20436466/lsb-to-msb-bit-reversal-on-arm]

 

RBIT
Reverse the bit order in a 32-bit word.

Syntax
RBIT{cond} Rd, Rn

[링크 : https://developer.arm.com/documentation/dui0473/m/arm-and-thumb-instructions/rbit]

 

REV
Reverse the byte order in a word.

Syntax
REV{cond} Rd, Rnn

[링크 : https://developer.arm.com/documentation/dui0473/m/arm-and-thumb-instructions/rev]

'embeded > ARM' 카테고리의 다른 글

i.mx8m plus arm trust zone  (0) 2023.02.24
ampere altra / 기가바이트 R272-P30 / 우분투  (0) 2023.02.03
vfp, neon cycle  (0) 2022.01.23
cortex-a9 neon  (0) 2021.06.21
EIM (external interface module)  (0) 2021.06.21
Posted by 구차니
embeded/raspberry pi2022. 8. 17. 15:54

SPI 통신시

2MHz 클럭에 3200Hz / 1600Hz 사용 가능

 

I2C 통신시

400kHz(고속 i2c)일 경우 800 Hz

100kHz(표준 i2c) 200 Hz에

SPI
The maximum SPI clock speed is 5 MHz with 100 pF maximum loading, and the timing scheme follows clock polarity (CPOL) = 1 and clock phase (CPHA) = 1.

Use of the 3200 Hz and 1600 Hz output data rates is only recommended with SPI communication rates greater than or equal to 2 MHz. The 800 Hz output data rate is recommended only for communication speeds greater than or equal to 400 kHz, and the remaining data rates scale proportionally. For example, the minimum recommended communication speed for a 200 Hz output data rate is 100 kHz

I2C
Due to communication speed limitations, the maximum output data rate when using 400 kHz I2C is 800 Hz and scales linearly with a change in the I2C communication speed. For example, using I2C at 100 kHz would limit the maximum ODR to 200 Hz

 

4 wire는 CS / SCLK / SDI / SDO를 쓴다면

3 wire는 CS / SCLK / SDIO 로 쓰는 듯.

(SDIO Serial Data Input Output의 약자 Secure Digital I/O의 약자이기도 하니.. 주의!)

[링크 : https://www.analog.com/media/en/technical-documentation/data-sheets/ADXL345.pdf]

Posted by 구차니
embeded/raspberry pi2022. 8. 17. 12:46

핀 피치가 2.54mm가 아닌 2.00mm 인데다가 구멍이 반이 없어서 어떻게 땜을 해야하나 고민하다 전문가에게 토스~

역시 전문가의 손은 다르구만

 

VCC 는 3.3V 라는데

[링크 : https://os.mbed.com/users/edodm85/notebook/radio-fm-tea5767/]

 

TEA5767 칩 자체는 3.0 Typical, 5.0 Max 라서 5V를 넣어도 되지 않나 싶긴 한데.. 그래도 Max 니까.. 참아야겠...지?

AMS1117-3.3을 투입할 시간이 되겠군...

MPXO는 MPX 가 있냐 없냐를 출력해주려나?

[링크 : https://www.sparkfun.com/datasheets/Wireless/General/TEA5767.pdf]

'embeded > raspberry pi' 카테고리의 다른 글

라즈베리 파이4 apm 설치시 php 작동 안될 경우  (0) 2022.08.30
adxl345 spi  (0) 2022.08.17
rpi3b에서 wayvnc 빌드 + 실행하기  (0) 2022.08.10
raspberrypi wayland compositor 설정  (0) 2022.08.10
linux iio adc + rpi  (0) 2022.06.20
Posted by 구차니
embeded/raspberry pi2022. 8. 10. 18:03

패키지 설치

$ sudo apt install cmake ninja meson libpixman-1-0 libpixman-1-dev libdrm-dev libdrm-common libdrm2 libxkbcommon-dev libwayland-dev

[링크 : https://github.com/ammen99/wf-recorder/issues/74]

 

ninja 설치

$ git clone https://github.com/ninja-build/ninja.git
$ cd ninja
$ ./configure.py --bootstrap

[링크 : https://ninja-build.org/]

 

git clone https://github.com/any1/wayvnc.git
git clone https://github.com/any1/neatvnc.git
git clone https://github.com/any1/aml.git

mkdir wayvnc/subprojects
cd wayvnc/subprojects
ln -s ../../neatvnc .
ln -s ../../aml .
cd -

mkdir neatvnc/subprojects
cd neatvnc/subprojects
ln -s ../../aml .
cd -

meson build
ninja -C build

[링크 : https://github.com/any1/wayvnc]

 

+

sway를 실행하고

 

sway에서 터미널을 연 다음, wayvnc를 실행

 

tightVNC로 접속 확인.

 

어익 후 라즈베리 3b에서 cpu가 죽어나네

 

rpi3 같은 메모리 대역폭 후달리는 애도 잘 쓰도록 만들었다는데 머.. 3.3%면 양호한건가..

sway가 문제인가?

The OpenGL ES 2.0 based renderer has now been replaced with a pixman based renderer. The new renderer is both simpler and performs better on devices with poor memory bandwidth such as the Raspberry Pi 3.

[링크 : https://github.com/any1/wayvnc/releases]

 

+

22.08.11

rpi 4 에서 실행하니 cpu가 착해진다. openGL ES 성능 차이인가..

'embeded > raspberry pi' 카테고리의 다른 글

adxl345 spi  (0) 2022.08.17
tea5767 모듈 땜질  (0) 2022.08.17
raspberrypi wayland compositor 설정  (0) 2022.08.10
linux iio adc + rpi  (0) 2022.06.20
PI 400 써봄  (0) 2022.05.25
Posted by 구차니
embeded/raspberry pi2022. 8. 10. 10:32

2022년 4월 4일자 bullseye 배포판에 wayland가 들어있다는데

raspi-config를 통해 wayland로 변경이 가능한 듯.

순수(?) wayland는 아니고 X11-wayland 인 것 같긴한데 어떻게 바꾸려나?

[링크 : https://blog.desdelinux.net/en/raspberry-pi-os-2022-04-04-arrives-with-initial-wayland-support-improvements-in-the-configuration-assistant-and-more/]

[링크 : https://www.phoronix.com/news/Raspberry-Pi-OS-Wayland]

[링크 : https://www.linuxadictos.com/ko/raspberry-pi-os-empieza-a-experimentar-con-wayland.html]

 

라즈베리 파이 3, 64bit 버전, raspi-config에서 Advanced로 들어가니 A9 Wayland가 존재한다.

 

Yes 해주고

 

리부팅 요청하는데 그건 귀찮으니 패스

 

라즈베리 파이 3라서 안되는건가.. 아니면 64bit 버전이라 그런가?

$ ps -ef | grep way
pi           843     702  3 11:21 ?        00:00:03 /usr/bin/Xwayland :0 -rootless -noreset -accessx -core -auth /run/user/1000/.mutter-Xwaylandauth.AFF5Q1 -listen 4 -listen 5 -displayfd 6 -listen 7

$ sudo apt install wayvnc
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
E: Unable to locate package wayvnc

 

32bit rpi-OS 해도 안되는건 매한가지 -_-

$ ps -ef | grep way
pi        1481  1462  0 12:09 pts/1    00:00:00 grep --color=auto way

$ uname -a
Linux raspberrypi 5.15.32-v7+ #1538 SMP Thu Mar 31 19:38:48 BST 2022 armv7l GNU/Linux

$ sudo apt-get install wayvnc
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
E: Unable to locate package wayvnc

 

우분투 22.04 LTS 설치(x86) 실행은 안되네?

$ uname -a
Linux victor-770Z5E-780Z5E 5.15.0-43-generic #46-Ubuntu SMP Tue Jul 12 10:30:17 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux

$ sudo apt-get install wayvnc
패키지 목록을 읽는 중입니다... 완료
의존성 트리를 만드는 중입니다... 완료
상태 정보를 읽는 중입니다... 완료
다음의 추가 패키지가 설치될 것입니다 :
  libaml0 libneatvnc0 libturbojpeg
다음 새 패키지를 설치할 것입니다:
  libaml0 libneatvnc0 libturbojpeg wayvnc
0개 업그레이드, 4개 새로 설치, 0개 제거 및 4개 업그레이드 안 함.
235 k바이트 아카이브를 받아야 합니다.
이 작업 후 839 k바이트의 디스크 공간을 더 사용하게 됩니다.
계속 하시겠습니까? [Y/n]

$ wayvnc
wl_registry@2: error 0: invalid version for global wl_output (4): have 2, wanted 3
ERROR: Virtual Pointer protocol not supported by compositor.
ERROR: Failed to initialise wayland

 

혹시나 해서 해보는데 영 진척이 없다.

$ sudo nano /etc/gdm3/custom.conf
WaylandEnable=true

[링크 : https://linuxconfig.org/how-to-enable-disable-wayland-on-ubuntu-22-04-desktop]

 

초기값(true도 false도 아닌 WaylandEnable 자체가 comment)

$ ps -ef | grep way
root         853       1  0 11:41 ?        00:00:00 /usr/bin/python3 /usr/bin/waydroid -w container start
minimonk 20264   20253  0 12:38 tty2     00:00:00 /usr/libexec/gdm-wayland-session env GNOME_SHELL_SESSION_MODE=ubuntu /usr/bin/gnome-session --session=ubuntu


$ wayvnc
wl_registry@2: error 0: invalid version for global wl_output (4): have 2, wanted 3
ERROR: Virtual Pointer protocol not supported by compositor.
ERROR: Failed to initialise wayland

 

false 일때

$ ps -ef | grep way
root         853       1  0 11:41 ?        00:00:00 /usr/bin/python3 /usr/bin/waydroid -w container start

$ wayvnc
ERROR: Failed to initialise wayland

 

true 일때

$ ps -ef | grep way
root         853       1  0 11:41 ?        00:00:00 /usr/bin/python3 /usr/bin/waydroid -w container start
minimonk 18392   18381  0 12:32 tty2     00:00:00 /usr/libexec/gdm-wayland-session env GNOME_SHELL_SESSION_MODE=ubuntu /usr/bin/gnome-session --session=ubuntu

$ wayvnc
wl_registry@2: error 0: invalid version for global wl_output (4): have 2, wanted 3
ERROR: Virtual Pointer protocol not supported by compositor.
ERROR: Failed to initialise wayland

 

'embeded > raspberry pi' 카테고리의 다른 글

tea5767 모듈 땜질  (0) 2022.08.17
rpi3b에서 wayvnc 빌드 + 실행하기  (0) 2022.08.10
linux iio adc + rpi  (0) 2022.06.20
PI 400 써봄  (0) 2022.05.25
라즈베리 파이2 / 마인크래프트  (0) 2022.03.18
Posted by 구차니