สัญญาณรบกวน (เกี่ยวกับความจุ) ในสัญญาณอนุกรม


11

ภาพ "บทสรุปผู้บริหาร":

สัญญาณอนุกรมดูเหมือนจะเลอะ

ป้อน 3.3V ถึง mic, ตรวจสอบ TX แท็บเล็ต

ฉันต้องการถอดรหัสสัญญาณอนุกรมที่ออกมาจากช่องเสียบหูฟังของแท็บเล็ต นี่เป็น "แฮ็ค" ที่ค่อนข้างแปลกที่มีอยู่ในโทรศัพท์และแท็บเล็ตบางตัว: โดยทั่วไปถ้าคุณป้อน 3.3V ในอินพุตไมโครโฟนของปลั๊ก TRRS ของคุณช่องทางซ้ายและขวากลายเป็นอนุกรม TX / RX

ฉันใช้สายเคเบิลราสเบอร์รี่ PI TRRS-to-TV (ดังที่คุณเห็นในภาพที่ 2) เพื่อเข้าถึงสถานที่ 4 แห่งที่ฉันต้องการ: GND, MIC, L, R สายเคเบิลไม่ควรทำอะไรนอกจากการแสดง 3 สัญญาณ (MIC, L, R - จับคู่กับ GND) ในสายเคเบิลสามสายที่สอดคล้องกัน (แดง, ขาว, เหลือง)

ฉันใช้โพรบของ BitScope เพื่อตรวจสอบระหว่าง TX (ปลายสายเคเบิลสีขาวในภาพที่ 2) และ GND ทั่วไป (โพรบสีน้ำตาลที่ด้านล่างของภาพที่ 2) ฉันยังใช้โพรบสองตัว (สีแดงและสีน้ำเงิน) เพื่อ "ป้อน" 3.3V จากชิป USB / TTL ของฉัน (PL2303HX ที่เสียบในแล็ปท็อปของฉัน) เข้ากับปลาย MIC (สีแดง)

เมื่อรีบูตเครื่องแท็บเล็ตที่ฉันแน่นอนเห็นสิ่งที่เป็นแน่แท้สัญญาณอนุกรมที่ 115200 (peak ไปจุดสูงสุดของ 8 ถึง 9us) แต่มีจำนวนมากของความจุ(วิดีโอ)

ดังนั้นคำถามของฉัน - ก่อนที่ฉันจะออนไลน์และสั่งซื้อปลั๊ก TRRS สายเคเบิลและหัวแร้ง - เป็นความจุที่ฉันเห็นเนื่องจาก ...

  • สายเคเบิลยาว TRRS-to-TV ยาว 1 เมตรหรือใช้โพรบแทนสายบัดกรี

หรือ

  • โพรบและสายเคเบิลในความเป็นจริงไม่สามารถอธิบายถึงความจุได้มากและเหตุผลที่ฉันเห็นนี่คือแจ็คหูฟังของแท็บเล็ตไม่ได้ออกแบบมาเพื่อส่งสัญญาณนี้ (เช่นสิ่งที่ฉันเห็นคือสิ่งที่ออกมาจากแจ็ค) .

ในขณะที่คุณสามารถเดาได้ฉันใหม่มากกับสิ่งนี้ ฉันเป็นผู้ชายซอฟต์แวร์ซื้อ BitScope ของฉันเมื่อสัปดาห์ที่แล้วและชอบที่จะเข้าถึงซีเรียลแท็บเล็ตของฉันเพื่อ "ความสนุกและผลกำไร" (การแฮ็คข้อมูล bootloader รวบรวม Cyanogenmod สำหรับมัน ฯลฯ )

ฉันพอใจกับการคาดคะเนว่านี่เป็นสาเหตุที่หายไปหรือไม่ (เช่นสายเคเบิลไม่สามารถอธิบายความจุได้มาก) หรือไม่

ขอบคุณล่วงหน้าสำหรับความช่วยเหลือ / ข้อเสนอแนะ


1
สัญญาณดูปกติดีสำหรับฉัน คุณไม่ชอบอะไรในนั้น สาย RCA ของคุณอาจมีความจุสูงถึง 1,000pF ดังนั้นจึงไม่น่าแปลกใจที่จะมีขอบที่ช้า
Ale..chenski

"สิ่งที่คุณไม่ชอบเกี่ยวกับมัน" - ขอบช้าเกินไปฉันคิดว่า (PL2303HX ของฉัน - เช่น USB / TTL ของฉัน - ไม่ได้ถอดรหัสอะไร)
ttsiodras

(1) ตรวจสอบว่าสายเคเบิลของคุณน้อยกว่า 3 เมตร (10 ฟุต) (2) หากคุณสามารถรับแจ็คเพียงชิ้นส่วนที่ไม่มีสายเคเบิลให้เสียบเข้ากับแท็บเล็ตและวัดโดยไม่มีสายเคเบิลเพื่อดู "คุณภาพ" ของสัญญาณ (3) ลดอัตราการรับส่งข้อมูล
ไม่ระบุตัวตน

@ ไม่ระบุชื่อ - ฉันพยายาม; โพสต์ผลลัพธ์ของฉันด้านล่าง
ttsiodras

1
@AliChen: คุณพูดถูกเพื่อนฉันใช้ BSS138 และถอดรหัสสัญญาณ (ดูภาคผนวกของคำตอบของฉันด้านล่าง) น่าทึ่ง - ไม่ได้คาดหวังสิ่งนี้
ttsiodras

คำตอบ:


10

ดังนั้นฉันจึงทำตามคำแนะนำของคนสองคนที่แสดงความคิดเห็น ... นี่คือผลลัพธ์

  1. อาลีเฉินชี้ให้เห็นว่าขอบช้าสามารถนำมาประกอบกับความจุของสายเคเบิล RCA; และ "ไม่ระบุชื่อ" แนะนำให้แนบกับบอร์ดโดยตรงโดยไม่มีแจ็ค ฉันทำตามคำแนะนำของพวกเขาถอดแท็บเล็ตลงเพื่อแสดง PCB เสียบแจ็คเปล่าแล้วตรวจสอบ - แต่ผลลัพธ์ก็น่าเสียดายที่เหมือนกัน: ช้ามากและขับเคลื่อนด้วยขอบความจุอย่างชัดเจน ไม่ใช่สาย RCA - แต่ดูเหมือนว่าใครก็ตามที่ออกแบบแท็บเล็ตไม่ได้สนใจอะไรมากสำหรับสัญญาณอนุกรมที่ออกมาจากช่องเสียบหูฟัง (อาจใช้วิธีอื่นในการเชื่อมต่อกับบอร์ด) ฉันลองละเอียดทั่ว PCB โดยหวังว่าจะพบสัญญาณอนุกรมที่สะอาดขึ้น แต่ฉันล้มเหลว

  2. ผู้ไม่ประสงค์ออกนามยังแนะนำให้ลดอัตราการรับส่งข้อมูล น่าเสียดายที่ไม่มีเอกสารวิธีที่จะมีอิทธิพลต่อกระบวนการบูตของแท็บเล็ตของฉันเพื่อกำหนดค่าอัตราการรับส่งข้อมูลที่ใช้ในระหว่างการบูตเครื่อง (ซึ่งเป็นสิ่งที่ฉันสนใจ)

แต่มันเป็นไปได้ที่จะทำหลังจากการบูตเสร็จสมบูรณ์จากภายในเชลล์ ADB - เนื่องจากฉันจัดการเพื่อรวบรวมเคอร์เนลของตัวเองและกลายเป็นรู

ดังนั้นฉันสามารถทำสิ่งนี้ ...

$ su
# stty -F /dev/ttyHSL0 9600
# while true ; do echo UUUUUUU > /dev/ttyHSL0 ; sleep 0.1 ; done

และแน่นอนผลที่ได้นั้นดีกว่ามาก

ดีกว่ามากที่ 9600

ฉันค่อนข้างมั่นใจว่าสัญญาณนี้สามารถถอดรหัสได้ดีถ้าฉันใช้ตัวเปลี่ยน (เป็น 1.8V ดังนั้น 3.3V USB-TTL ของฉันยังไม่สามารถถอดรหัสได้)

ดังนั้นเพื่อสรุป: "พอร์ตอนุกรมภายในแจ็คหูฟัง" ของแท็บเล็ตของฉันสามารถใช้งานได้จริงหลังจากการบูตเสร็จสิ้นและ UART ชะลอตัวลงเป็น 9600 บอด; ซึ่งเป็นสิ่งที่โชคร้ายเนื่องจากจำเป็นต้องใช้เอาต์พุตอนุกรมในระหว่างขั้นตอนการบู๊ต (หากมีบางอย่างผิดพลาด) - และในช่วงเวลานั้นความเร็ว UART นั้นจะถูกเข้ารหัสในโค้ดบูตของแท็บเล็ตที่ 115200 บอด

ป.ล. ฉันได้ลองคำแนะนำจากเพื่อนเพื่อใช้ 3.3K แบบดึงขึ้นไปยังราง 3.3V ในสัญญาณอนุกรมที่ส่งออกมาจากช่องเสียบหูฟัง - ไม่เป็นประโยชน์

อัปเดต 3 วันต่อมา

ฉันพยายาม :-)

ทำตามคำแนะนำจาก Chris Stratton - ผู้จำแลงที่ดีสามารถรับมือกับสัญญาณแบบนี้ได้ - ฉันซื้อหัวแร้ง BSS138, เขียงหั่นขนมและสายเคเบิลจำนวนหนึ่ง หลังจากสิ่งที่อาจเป็นงานบัดกรีที่เลวร้ายที่สุดที่ฉันเคยจัดการประสานหัวเข็มใน BSS138 และจากนั้นดำเนินการต่อเพื่อแนบมันเข้ากับเขียงหั่นขนมและสร้างระเบียบยุ่งเหยิงนี้:

เขียงหั่นขนมและ BSS138 ของฉัน

สิ่งที่ฉันไม่ได้คาดหวังคือหลังจากวางไข่ในมินิคอมและออก "รีบูตเครื่องเร็ว" เพื่อความประหลาดใจที่สุดของฉันฉันเห็นสิ่งนี้:

สัญญาณอนุกรมถอดรหัส!

ไม่น่าเชื่อ - หลังจาก BSS138 "ยก" สัญญาณจาก 1.8 สูงถึง 3.3V ซึ่งเป็นสัญญาณที่มีความสามารถในการถอดรหัสได้จริง! ในที่สุดฉันก็สามารถเห็นได้ว่าทำไมแท็บเล็ตของฉันไม่บูต

สวัสดีแท็บเล็ตตัวน้อยฉันเป็นเจ้าของคุณแล้ว :-)


1
ในขณะที่มีความเป็นไปได้ค่อนข้างมากที่สัญญาณดั้งเดิมจะสามารถถอดรหัสด้วยตัวเปลี่ยนระดับการออกแบบที่ดี แต่ก็เป็นไปได้ว่าแบนด์วิดท์ของวงจรเอาต์พุตเสียงที่ส่งมานั้นค่อนข้างน้อยกว่าเหมาะสำหรับสัญญาณดิจิตอลนี้ ผลิตภัณฑ์สำหรับผู้บริโภคจำเป็นต้องผ่านการทดสอบการปล่อยคลื่นรบกวนและแอมพลิฟายเออร์หูฟังเองอาจเป็นการออกแบบแบบสวิตช์ดังนั้นอาจมีฟิลเตอร์ LC ที่ขอบบอร์ดเพื่อป้องกันการปล่อยซึ่งจะถูกออกแบบมาเพื่อส่งผ่านเสียงเป็นหลัก
Chris Stratton

แต่ให้พิจารณาด้วยว่าหากขอบเขตประสิทธิภาพต่ำหรือการตั้งค่าที่คุณใช้กับมันอาจเป็นการแสดงสัญญาณผิด - มันจะเป็นการดีสำหรับการเปรียบเทียบเพื่อดูผลลัพธ์ของ pi หรือตัวแปลงอนุกรม USB ที่อัตรา baud เดียวกันและดู วิธีการที่ขอบเขตทำให้ตารางที่มอง
Chris Stratton

@ChrisStratton เกี่ยวกับตัวกรองสัญญาณรบกวน: ไม่มีความคิด แต่ฟังดูเป็นไปได้หากคุณสมบัติที่ฉันเปิด (พอร์ตอนุกรมผ่านช่องเสียบหูฟัง) ไม่ได้ถูกใช้ ตอนแรกฉันค้นพบสิ่งนี้ในขณะที่อ่านเกี่ยวกับอุปกรณ์ Nexus - และอยากรู้ว่าแท็บเล็ตของฉันจะตอบสนองอย่างไรจึงตัดสินใจลอง เกี่ยวกับการตรวจสอบขอบเขตของฉัน: แน่นอนนั่นเป็นสิ่งแรกที่ฉันทำเมื่อซื้อมัน - แสดงคลื่นสี่เหลี่ยมจตุรัสใสที่ 115200 ส่งมาจาก TX GPIO ของราสเบอร์รี่ PI2 ของฉัน ฉันค่อนข้างมั่นใจในจุดนี้ว่าไม่ใช่ฉันหรือขอบเขตของฉัน - เป็น HW ของแท็บเล็ต
ttsiodras

@ChrisStratton: "... สามารถถอดรหัสด้วยตัวปรับระดับการออกแบบที่ดี" - คุณมีชิปเฉพาะในใจหรือไม่?
ttsiodras

@ChrisStratton: ชัยชนะ! BSS138 ถอดรหัสสัญญาณ - ฉันเติมคำตอบและรวมหลักฐาน :-) ขอบคุณที่ชี้ฉันในทิศทางที่ถูกต้อง
ttsiodras

0

DSO ของคุณมีแบนด์วิดท์เพียงพอที่ @ 524ksps เพื่อแสดงคลื่นสี่เหลี่ยมที่อัตราข้อมูล 115.2kbps หรือไม่ ฉันคิดอย่างนั้น เพียงแค่ FYI ฉันอาจจะผิด

บางทีคุณอาจใช้ความละเอียดที่ช้าลง


ว้าวไม่มีความรักต่อผู้ชายตัวน้อย! แย่ BitScope :-) อย่างจริงจังแม้ว่า - BitScope probes ปรับ 115200 baud ออกมาจาก Raspberry PI ของฉันแสดงพัลส์สี่เหลี่ยมจัตุรัสที่ดีและชัดเจน ... ไม่มีอะไรเหมือนสัญญาณที่ออกมาจากช่องเสียบหูฟังของแท็บเล็ต ( i.stack .imgur.com / WAw6J.png ) ฉันกำลังอยู่ระหว่างการรับตัวเปลี่ยน (ไปจาก 1.8 เป็น 3.3) และตัววิเคราะห์เชิงตรรกะดังนั้นตัวเปลี่ยนอาจจะล้างสิ่งนี้ จะเห็น!
ttsiodras

ทำมัน! BSS138 ถอดรหัสสัญญาณ
ttsiodras

BSS138 มี Vgs ที่ต่ำกว่า 1.3V {0.8 นาที, 1.5max} มากกว่า Vcc / 2 +/-? หรือ 2.5V +/-? ดังนั้นขีด จำกัด ล่างจึงทำ นี่คือวิธีที่ 74HCTxx ทำงานเช่นกันรับสัญญาณ 3.3V บน 5V ตรรกะ
Tony Stewart Sunnyskyguy EE75

ตอนนี้สิ่งที่เป็นห่า Jiffies ล้น? กล่อง Linux ที่เป็นบั๊ก หรือความล่าช้าในการบูตปกติ
Tony Stewart Sunnyskyguy EE75
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.