summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--PLAN.md38
-rw-r--r--notes.md72
2 files changed, 80 insertions, 30 deletions
diff --git a/PLAN.md b/PLAN.md
index 3201122..5158d87 100644
--- a/PLAN.md
+++ b/PLAN.md
@@ -5,27 +5,17 @@
SPDX-License-Identifier: AGPL-3.0-or-later
-->
-- [ ] syslog on 9p
-- [ ] better 9p-shutdown
-- [ ] PIO-based USB
-- [ ] wire the USB keyboard to 9P
-- [ ] wire uart to 9p
-
-- SDcard to 9p
-- PicoDVI
-- solder up the bus switch
-
-- with hardware I have:
- 1. [X] type "hello world" as a USB keyboard
- 2. [ ] get networking up (ping)
- 3. [ ] forward port 21 as a USB keyboard
- 4. [ ] forward a 9p file as a USB keyboard
- 5. [ ] connect UART as a 9p socket
-- waiting on hardware:
- - sdcard slot:
- 1. [ ] whatever the "hello world" of SD is
- 2. [ ] as a device on 9p
- - HDMI socket
- 1. [ ] PicoDVI hello-world
- 2. [ ] "PiciDVI" to network
- 3. [ ] reverse the flow of PicoDVI
+- Video
+ - [ ] add video streaming to 9P -- so I can test capture
+ - [ ] get HDMI-out working on core 2
+ - [ ] convert to HDMI-in
+- SD-card
+ - [ ] Move w5500 to SPI, to free up the SSP
+ - [ ] solder up another bus switch
+ - [ ] Implement SD
+- USB
+ - [ ] wire the USB keyboard to 9P
+ - [ ] PIO-based USB
+- Other
+ - [ ] syslog on 9p
+ - [ ] wire uart to 9p
diff --git a/notes.md b/notes.md
index 84c2e72..2ffa596 100644
--- a/notes.md
+++ b/notes.md
@@ -85,14 +85,17 @@ Anyway, I need to support at least 640x480p@60Hz and 720x480@60Hz, and
it would be nice to support 720x576p@50Hz. Note that PicoDVI supports
these first two, but not the @50Hz one.
-| format | bitrate |
-|---------------|-----------------------|
-| 640x480p@60Hz | 18,432,000 pixels/sec |
-| 720x480p@60Hz | 20,736,000 pixels/sec |
-| 720x576p@50Hz | 20,736,000 pixels/sec |
+| format | bitrate | CEA-861 pixel freq |
+|---------------|-----------------------|--------------------|
+| 640x480p@60Hz | 18,432,000 pixels/sec | 25.200 MHz |
+| 720x480p@60Hz | 20,736,000 pixels/sec | 27.027 MHz |
+| 720x576p@50Hz | 20,736,000 pixels/sec | 27.000 MHz |
https://forums.parallax.com/discussion/download/128730/Hdmi-1.4-1000008562-6364143185282736974850538.pdf
-https://ia803002.us.archive.org/1/items/CEA-861-D/CEA-861-D.pdf
+https://archive.org/details/CEA-861-D
+https://glenwing.github.io/docs/DVI-1.0.pdf
+https://www.cs.unc.edu/Research/stc/FAQs/Video/dvi_spec-V1_0.pdf
+https://glenwing.github.io/docs/HDMI-1.0.pdf
The RP2040 has several clocks:
@@ -191,3 +194,60 @@ OpenBMC
----
https://hackaday.com/2022/08/26/bit-banged-ethernet-on-the-raspberry-pi-pico/
+
+---
+
+rough pricepoints
+| HDMI socket | $0.85 |
+| microHDMI socket | $1.36 |
+| miniHDMI socket | $1.89 |
+| DVI socket | $3.68 |
+
+---
+
+- "USB" is a trademark of the USB Implementers Forum (USB-IF)
+- "HDMI" is a trademark of HDMI Licensing Administrator, Inc. (HDMI LA)
+- "DVI" was once a trademark of someone, but in the USA all relevant
+ trademarks have been canceled.
+
+---
+
+The video-in socket is single-link DVI-D using an HDMI-style physical
+receptacle. This makes it able to receive video from both
+DVI-D-compliant sources and from HDMI-compliant sources; though it is
+itself **not** HDMI-compliant. It supports the following resolutions:
+ - 640x480p @ 59.94/60Hz
+ - 720x480p @ 59.94/60Hz
+ - 720x576p @ 50Hz
+
+:explainer:
+
+> HDMI is perhaps easiest thought of as an extension to single-link
+> DVI-D. There are 17 used pins on a single-link DVI-D connector; 17
+> of the 19 pins on an HDMI connector correspond 1:1 with these, and
+> the additional 2 pins are optional "CEC" and "Utility" pins. HDMI
+> starts talking as DVI-D, and enables additional non-DVI
+> functionality based on the exchanged E-EDID device descriptors.
+> That is: Compliant HDMI devices must work with DVI devices as long
+> as they have an overlapping set of supported resolutions.
+>
+> Additionally, compliant HDMI sources are required to support at
+> least one of the above resolutions, while compliant DVI sources are
+> required to support 640x480p @ 60Hz.
+
+:rationale:
+
+> If it's DVI, why use an HDMI-style connector instead of a "more
+> honest" DVI connector?
+>
+> Two reasons:
+>
+> - We anticipate that most DUTs that our users will want to plug
+> into it have HDMI ports, and that our users are more likely to
+> already have an HDMI cable than an HDMI←→DVI cable or HDMI←→DVI
+> adapters. We also anticipate that users who actually do have
+> DUTs with DVI ports already have DVI←→HDMI adapters.
+>
+> - HDMI-style sockets are much cheaper than DVI sockets; using a DVI
+> socket would have increased the cost of the harness by several
+> dollars.