Differences
This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
| ofi:vscode-ev3 [2022/07/17 06:34] – Ivo Blöchliger | ofi:vscode-ev3 [2024/11/29 18:24] (current) – Ivo Blöchliger | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| + | ====== Native Python auf EV3 mit VSCode ====== | ||
| + | * https:// | ||
| + | * SSH: user robot, password maker | ||
| + | * hostnamectl set-hostname LEGO12 | ||
| + | * WiFi-Daten in var/ | ||
| + | * https:// | ||
| + | * Use '' | ||
| + | * Wifi stuff is in '' | ||
| + | <code bash> | ||
| + | nmap --open 192.168.1.80-254 -p 22 -oG - | grep open | grep -v Nmap | awk '{ print " | ||
| + | konsole --tabs-from-file ./tabsfile | ||
| + | nmap --open 192.168.1.80-254 -p 22 -oG - | grep open | grep -v Nmap | awk '{ print "scp -r robot@" | ||
| + | bash ./ | ||
| + | nmap --open 192.168.1.80-254 -p 22 -oG - | grep open | grep -v Nmap | awk '{ print "scp -r wifi_* robot@" | ||
| + | bash ./ | ||
| + | </ | ||
| + | * '' | ||
| + | |||
| + | / | ||
| + | <code txt wpa_suplicant> | ||
| + | # | ||
| + | # | ||
| + | # Die Gruppe muss natürlich angepasst werden | ||
| + | eapol_version=1 | ||
| + | # 0: Der Treiber des Interfaces kümmert sich um das Scannen von Netzen und die AP-Auswahl. | ||
| + | # Dieser Modus sollte benutzt werden, wenn man eine Verschlüsselung auf ein Kabelnetzwerk legt. | ||
| + | # 1: wpa_supplicant kümmert sich um das Scannen von Netzen und die AP-Auswahl. | ||
| + | # 2: Fast wie 0, es wird aber mit Hilfe von Sicherheitsrichtlinien und der SSID zu APs verbunden (BSSID wird nicht unterstützt) | ||
| + | # | ||
| + | # Normalerweise funktioniert entweder Modus 1 oder Modus 2. | ||
| + | ap_scan=1 | ||
| + | |||
| + | network={ | ||
| + | ssid=" | ||
| + | scan_ssid=1 | ||
| + | psk=" | ||
| + | } | ||
| + | |||
| + | </ | ||
| + | |||
| + | Way better than stuff below (also, you could take the image and then zero is out while mounted as loopback, much quicker!) | ||
| + | <code ruby> | ||
| + | def cmd(c) | ||
| + | puts c | ||
| + | r = `#{c}` | ||
| + | return r | ||
| + | end | ||
| + | |||
| + | raise " | ||
| + | hostname = $ARGV[0] | ||
| + | |||
| + | img = " | ||
| + | cmd(" | ||
| + | dev = cmd(" | ||
| + | |||
| + | p2 = dev+" | ||
| + | cmd(" | ||
| + | cmd(" | ||
| + | puts " | ||
| + | cmd(" | ||
| + | cmd(" | ||
| + | |||
| + | cmd(" | ||
| + | puts "Image is ready. Write it with" | ||
| + | puts "dd if=#{img} of=/ | ||
| + | |||
| + | </ | ||
| + | |||
| + | |||
| + | <code bash> | ||
| + | # Get Info | ||
| + | sudo fdisk -lu lego12.img | ||
| + | Disk lego12.img: 14.84 GiB, 15931539456 bytes, 31116288 sectors | ||
| + | Units: sectors of 1 * 512 = 512 bytes | ||
| + | Sector size (logical/ | ||
| + | I/O size (minimum/ | ||
| + | Disklabel type: dos | ||
| + | Disk identifier: 0xf5e5f871 | ||
| + | |||
| + | Device | ||
| + | lego12.img1 | ||
| + | lego12.img2 | ||
| + | |||
| + | |||
| + | |||
| + | # Mount Partition, -o Start*512, --sizelimit Sectors*512 | ||
| + | sudo losetup -o 54525952 -b 512 --sizelimit 15877013504 /dev/loop16 lego12.img | ||
| + | |||
| + | # Check filesystem | ||
| + | sudo e2fsck -f /dev/loop16 | ||
| + | |||
| + | # Resize filesystem | ||
| + | sudo resize2fs /dev/loop16 3750000 | ||
| + | |||
| + | # Mount filesystem | ||
| + | mount /dev/loop16 /mnt | ||
| + | |||
| + | # Zero out disk | ||
| + | dd if=/ | ||
| + | |||
| + | # Truncate image (size obtained from target SD-Card with fdisk -lu /dev/sda) | ||
| + | truncate -s 15634268160 lego12.img | ||
| + | </ | ||