summaryrefslogtreecommitdiffstats
path: root/krebs/2configs/hw/getty-for-esp.nix
diff options
context:
space:
mode:
authormakefu <github@syntax-fehler.de>2020-11-24 22:13:32 +0100
committermakefu <github@syntax-fehler.de>2020-11-24 22:13:32 +0100
commit3ed2d7d3701234325fef6b659feaa83ec2723b93 (patch)
tree306395f86f840d70688ddb2b65ea5fb5ec0a95b8 /krebs/2configs/hw/getty-for-esp.nix
parent41865fe25f356b46b8a56629ab60e2c3af125ae8 (diff)
getty-for-esp: init
this module provides a serial port which is exposed via an esp8266 to the network via wifi. it essentially creates a backdoor to the serial console when the network config is b0rked again
Diffstat (limited to 'krebs/2configs/hw/getty-for-esp.nix')
-rw-r--r--krebs/2configs/hw/getty-for-esp.nix17
1 files changed, 17 insertions, 0 deletions
diff --git a/krebs/2configs/hw/getty-for-esp.nix b/krebs/2configs/hw/getty-for-esp.nix
new file mode 100644
index 000000000..18c912353
--- /dev/null
+++ b/krebs/2configs/hw/getty-for-esp.nix
@@ -0,0 +1,17 @@
+{
+ # 1. Program an esp8266 devboard (esp8266+usb-ttl) with # https://github.com/jeelabs/esp-link
+ # tested vesion: esp-link v3.2.47-g9c6530d
+ # Pin Preset: esp-bridge
+ # tx-enable: false
+ # uart-pins: normal
+ # 2. connect directly with usb-cable to device, check that vendorID and ProductID match
+ # 3. nc <esp-link-ip> 23
+ # Info: for puyak the root pw is `brain hosts/puyak/root`
+ services.udev.extraRules = ''
+ SUBSYSTEM=="tty", ATTRS{idVendor}=="1a86", ATTRS{idProduct}=="7523", SYMLINK+="ilo", MODE="0660"
+ '';
+ systemd.services."serial-getty@ilo".enable = true;
+ systemd.services."serial-getty@ilo".wantedBy = [ "multi-user.target" ];
+ systemd.services."serial-getty@ilo".serviceConfig.Restart = "always";
+}
+