{"id":41798723,"url":"https://github.com/kasbert/tw9992-linux","last_synced_at":"2026-01-25T05:34:18.444Z","repository":{"id":285877792,"uuid":"958310264","full_name":"kasbert/tw9992-linux","owner":"kasbert","description":"Linux driver for Renesas TW9992","archived":false,"fork":false,"pushed_at":"2025-11-09T15:25:36.000Z","size":711,"stargazers_count":3,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"rpi-6.12.y","last_synced_at":"2025-11-09T17:24:48.450Z","etag":null,"topics":["cvbs-decode","linux-kernel","mipi-csi","raspberry-pi","rpi-camera","tw9992"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kasbert.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-04-01T01:44:32.000Z","updated_at":"2025-10-25T10:25:55.000Z","dependencies_parsed_at":null,"dependency_job_id":"5940c157-c70e-4371-9fe9-e9b473649148","html_url":"https://github.com/kasbert/tw9992-linux","commit_stats":null,"previous_names":["kasbert/tw9992-linux"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/kasbert/tw9992-linux","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kasbert%2Ftw9992-linux","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kasbert%2Ftw9992-linux/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kasbert%2Ftw9992-linux/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kasbert%2Ftw9992-linux/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kasbert","download_url":"https://codeload.github.com/kasbert/tw9992-linux/tar.gz/refs/heads/rpi-6.12.y","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kasbert%2Ftw9992-linux/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28744429,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-25T05:12:38.112Z","status":"ssl_error","status_checked_at":"2026-01-25T05:04:50.338Z","response_time":113,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cvbs-decode","linux-kernel","mipi-csi","raspberry-pi","rpi-camera","tw9992"],"created_at":"2026-01-25T05:34:18.391Z","updated_at":"2026-01-25T05:34:18.439Z","avatar_url":"https://github.com/kasbert.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# tw9992-linux\nLinux driver for Renesas TW9992\n\nThe \n![TW9992](https://www.renesas.com/en/products/analog-products/audio-video/video-decodersencoders/tw9992-low-power-ntscpal-video-decoder-differential-cvbs-inputs-and-mipi-csi2-output-interface)\n is a low Power NTSC/PAL Video Decoder with Differential CVBS Inputs and\nMIPI-CSI2 Output Interface.\n\nIt can be connected to Raspberry Pi camera interface or other MIPI-CSI2 receiver.\n\nTo compile and install:\n```\ncd driver\nmake crash\n```\n\nThere is a test program in src/fb.c. It works on console framebuffer. Just `gcc fb.c` and `./a.out`\n\nThere are special v4l controls \"setaddr\", \"getreg\" and \"setreg\". You can use them to peek and poke i2c registers. For example get value of register 3\n\n```\nv4l2-ctl -c setaddr=0x03; v4l2-ctl -C getreg | sed 's/getreg:/obase=2;/' | bc\n1101001\n```\nbc did not display value 0 on bit 7, meaning \"0 = Video detected.\"\n\nRegister 3 bits:\n| Bit | Description |\n| --- | ----------- |\n| 7 VDLOSS R | 1 = Video not present. (Sync is not detected in number of line periods specified by MISSCNT register) |\n| | 0 = Video detected. |\n| 6 HLOCK R | 1 = Horizontal sync PLL is locked to the incoming video source. |\n| | 0 = Horizontal sync PLL is not locked.\n| 5 SLOCK R | 1 = Subcarrier PLL is locked to the incoming video source. |\n| | 0 = Subcarrier PLL is not locked. |\n| 4 FIELD R | 1 = Even field is being decoded. |\n| | 0 = Odd field is being decoded. |\n| 3 VLOCK R | 1 = Vertical logic is locked to the incoming video source. |\n| | 0 = Vertical logic is not locked. |\n| 2 Reserved R | Reserved - |\n| 1 MONO R | 1 = No color burst signal detected. |\n| | 0 = Color burst signal detected. |\n| 0 DET50 R | 0 = 60Hz source detected |\n| | 1 = 50Hz source detected |\n\nGet the datasheet for register info.\n\nExample module for Raspberry Pi:\n\n![Image](img/tw9992_rpicam.jpg)\n\n![Schematics](img/SCH_video_converter_TW9992_1-P1_2025-04-05.png )\n\nAn EasyEDA project can be found in https://oshwlab.com/jarkko.sonninen/tw9992-pmod-1-0\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkasbert%2Ftw9992-linux","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkasbert%2Ftw9992-linux","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkasbert%2Ftw9992-linux/lists"}