Difference between revisions of "Chiu"

From ciapini
Jump to: navigation, search
(Applicazioni)
Line 56: Line 56:
 
* Sensore di luce
 
* Sensore di luce
  
=== uC supervisore ===
 
  
* STM32L041x6
+
=== CHX ===
* 11 input
 
* SPI verso schermo
 
* I2C verso scheda CPU
 
  
=== carica batteria ===
+
Scheda che implementa: caricabatteria, stepup, tastiera, led
  
* candidati: CN3065, STC4054, MCP73811, MCP73831/2
+
==== uC supervisore ====
  
=== step-up ===
+
* STM32L041F6 20 pin, 15 gpio, 32mhz, 32 KB Flash, 1 KB EEPROM, 8 KB RAM
 +
** 8 - 16 tasti (4x4)
 +
** 2 - i2c
 +
** 1 - vbatt
 +
** 1 - pwr
 +
** 1 - sensore movimento
 +
** 2 - leds
  
* [https://www.st.com/content/st_com/en/products/power-management/dc-dc-switching-converters/boost-regulators/l6920.html L6920]
+
==== carica batteria ====
 +
 
 +
candidati:
 +
* CN3065
 +
* [https://www.st.com/en/power-management/stc4054.html STC4054] 800ma, TSOT23-5L, in 4.25V - 6.5V
 +
* MCP73811
 +
* MCP73831/2
 +
 
 +
==== step-up ====
 +
 
 +
* [https://www.st.com/content/st_com/en/products/power-management/dc-dc-switching-converters/boost-regulators/l6920.html L6920] 1,2A
 
* [https://www.diodes.com/assets/Datasheets/AP1609.pdf AP1609]
 
* [https://www.diodes.com/assets/Datasheets/AP1609.pdf AP1609]
  
 
=== altre board ===
 
=== altre board ===
 +
 
==== SAMA5D2x ====
 
==== SAMA5D2x ====
 
CPU a basso consumo, possibilita di low power mode, uscita per TFT
 
CPU a basso consumo, possibilita di low power mode, uscita per TFT

Revision as of 20:09, 12 February 2020

un elaboratore tascabile

Hardware

Cpu

OPiPinout.jpg
Orange-Pi-Zero-Pinout.jpg

Display

  • Risoluzione: 320x240 ILI9341 (40x30)
  • Risoluzione: 480x320 ILI9486
  • Bus: SPI
ili9341 OPi Note GPIO
SCK 23 SCLK 14
MOSI 19 15
CS 24 CS0 13
RST 5 11
DC 3 12
LED 18 need check 18
VCC 1 3.3v
GND 6 GND

Seriale (via usb gadget)

una volta flashato e acceso, il device esporra' una seriale via usb gadget, ES:

/dev/ttyACM0

per collegarsi:

screen /dev/ttyACM0 115200 8n1

Tasti

  • Joystick U/D/L/R + Push
  • Sensore di movimento
  • Sensore di luce


CHX

Scheda che implementa: caricabatteria, stepup, tastiera, led

uC supervisore

  • STM32L041F6 20 pin, 15 gpio, 32mhz, 32 KB Flash, 1 KB EEPROM, 8 KB RAM
    • 8 - 16 tasti (4x4)
    • 2 - i2c
    • 1 - vbatt
    • 1 - pwr
    • 1 - sensore movimento
    • 2 - leds

carica batteria

candidati:

  • CN3065
  • STC4054 800ma, TSOT23-5L, in 4.25V - 6.5V
  • MCP73811
  • MCP73831/2

step-up

altre board

SAMA5D2x

CPU a basso consumo, possibilita di low power mode, uscita per TFT

Software

Display

fbtft_device (kernel <5.4)

in /boot/armbianEnv.txt:

overlays=usbhost2 usbhost3 spi-spidev
param_spidev_spi_bus=1

in /etc/modprobe.d/fbtft.conf:

options fbtft_device custom name=fb_ili9341 gpios=dc:12,reset:11,led:18 speed=1600000 fps=5 busnum=1 bgr=1 rotate=90

X

FRAMEBUFFER=/dev/fb0 startx

trovare il proprio device /dev/fbX

verificare che device ci sono sotto /dev/fb*:

root@orangepizeroplus2:~# ll /dev/fb*
crw-rw---- 1 root video     29, 0 Feb  8 01:15 /dev/fb0
crw-rw---- 1 root video     29, 1 Feb  8 01:15 /dev/fb1

quindi lanciare il modprobe:

modprobe fbtft_device custom name=fb_ili9341 gpios=dc:12,reset:11,led:18 speed=1600000 fps=5 busnum=1 bgr=1 rotate=90

e verificare il nuovo device:

root@orangepizeroplus2:~# ll /dev/fb*
crw-rw---- 1 root video     29, 0 Feb  8 01:15 /dev/fb0
crw-rw---- 1 root video     29, 1 Feb  8 01:15 /dev/fb1
-rw-r--r-- 1 root root  101056512 Feb  8 01:50 /dev/fb2

nel nostro caso e' il

/dev/fb2

cambiare font e dimensione del display

source: https://learn.watterott.com/hats/rpi-display/faq/

eseguire con permessi di super-user:

dpkg-reconfigure console-setup

quindi seguire i passaggi:

  • Encoding to use on the console: <UTF-8>
  • Character set to support: <Guess optimal character set>
  • Font for the console: Terminus (default is VGA)
  • Font size: 6x12 (framebuffer only)

e riavviare

test del display

una volta che a mano viene lanciato

modprobe fbtft_device custom name=fb_ili9341 gpios=dc:12,reset:11,led:18 speed=1600000 fps=5 busnum=1 bgr=1 rotate=90

il display dovrebbe diventare bianco e poi per righe di pixel, nero. quindi e' possibile lanciare:

cat /dev/urandom > /dev/fb2

che creera' una schermata con pixel di diversi colori (random)

console output su lcd dal boot

source: https://kaspars.net/blog/spi-display-orange-pi-zero

in /etc/modules-load.d/fbtft.conf:

fbtft_device

in /etc/modprobe.d/fbtft.conf:

options fbtft_device custom name=fb_ili9341 gpios=dc:12,reset:11,led:18 speed=1600000 fps=5 busnum=1 bgr=1 rotate=90

in /boot/armbianEnv.txt add:

extraargs="fbcon=map:2"

dove "2" e' il tuo /dev/fbX (vedi "trovare il proprio device..")

tinydrm

https://github.com/torvalds/linux/tree/master/drivers/gpu/drm/tiny

aptitude install linux-headers-next-sunxi

in myili9341.dts:

/dts-v1/;
/plugin/;
 
/ {
    compatible = "allwinner,sun8i-h3";
 
    fragment@0 {
        target-path = "/aliases";
        __overlay__ {
            spi1 = "/soc/spi@01c69000";
        };
    };
 
    fragment@1 {
        target = <&spi1>;
        __overlay__ {
            status = "okay";
 
            spidev {
                compatible = "spidev";
                reg = <0>;
                spi-max-frequency = <50000000>;
            };
        };
    };

    fragment@2 {
	target = <&spi1>;
	__overlay__ {
		#address-cells = <1>;
		#size-cells = <0>;
		status = "okay";
		pinctrl-names = "default";
			pinctrl-0 = <&bb_spi1_pins>;

			display@0{
			status = "okay";
			compatible = "ilitek,ili9341";
			reg = <0>;
			spi-max-frequency = <32000000>;
			dc-gpios    = <&gpio 12 0>;   // lcd dc
			reset-gpios = <&gpio 11 0>;   // lcd reset
			// backlight = <&backlight_gpio>; // lcd lite
			// backlight = <&backlight_pwm>;    // lcd lite
			// rotation = <180>;
			};
		};
	};
};

armbian-add-overlay myili9431.dts

GUI

Applicazioni

Mail
  • alpine
  • mutt
  • aerc
Feed
Chat

Risparmio energetico

Idle

ARISC on board

Sleep