Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revisionBoth sides next revision
toh:seeed:linkit7688 [2018/06/22 17:02] – Datatables added, cleanup tmomastoh:seeed:linkit7688 [2022/06/03 11:57] – link to post for other undocumented uboot options frollic
Line 316: Line 316:
  
 Use the UART Console and *Hidden* Option 5 Use the UART Console and *Hidden* Option 5
 +There are other hidden options available, read https://forum.openwrt.org/t/ai7688-update-issue/128369/26
 <WRAP bootlog> <WRAP bootlog>
 <nowiki>[04050C0D][04050C0D] <nowiki>[04050C0D][04050C0D]
Line 668: Line 668:
 [[meta:tags|How to add tags]] [[meta:tags|How to add tags]]
 {{tag>ramips MT7688 32flash 128ram}} {{tag>ramips MT7688 32flash 128ram}}
 +
 +----
 +
 +===== SeeedStudio Breakout for LinkIt Smart 7688 v2.0 =====
 +
 +SeeedStudio Product Page [[https://www.seeedstudio.com/Breakout-for-LinkIt-Smart-7688-v2-0-p-2641.html]]
 +
 +Breakout for LinkIt Smart 7688 v2.0, succeeding the first version , now can better support the audio recording function. As it reserves the original pins of LinkIt Smart 7688, the board also integrates several frequently-used ports such as an Ethernet port, a 3.5mm audio port, and a Host port (USB Type-A Connector) for more peripherals, and along with 3 Grove ports to provide 2 UART and 1 I2C interfaces for the Grove-based electronics, it saves you a lot of work doing wirings in your smart IoT projects, makes your rapid prototyping even faster.
 +
 +
 +**Features**
 +  * 3.5mm headphone Jack(with Mic) which support OMTP and CTIA
 +  * 1 x Ethernet to connect internet
 +  * 1 x USB 2.0 for more peripherals
 +  * Grove interface: 2 x UART, 1 x I2C
 +  * Stereo and AUX are supported
 +  * Audio Recording supported
 +  * 1W output for each stereo port
 +
 +SeeedStudio Wiki Page [[https://wiki.seeedstudio.com/Breakout_for_LinkIt_Smart_7688_v2.0/]]
 +
 +Technical details
 +Dimensions: 5.6mm x 8.2mm x 12mm
 +Weight: 49g
 +Battery: Exclude
 +Input voltage: 5.0V(With USB Power port)
 +Operating voltage: 3.3V
 +Max Operating current: 2mA
 +Min Operating current: 800mA
 +Chip: WM8960
 +Analog pin input voltage(on WM8960 ):2.7~3.6V(Analog pin input voltage on WM8960 for stereo can reach 5.5V at Max.)
 +Digital pin input voltage(on WM8960 ): 1.71~3.6V
 +
 +**some Build changes are needed to use Audio**
 +
 +We add i2s as audio i/o and define i2c to control the audio chip so a volume and other controls is present afterwards.
 +
 +This is a `git patch` file so copy that to a file in the /openwrt bildroot folder and execute it with `patch -p1 < {filename}` or `git am {filename}.
 +<code>
 +diff --git a/target/linux/ramips/dts/LINKIT7688.dts b/target/linux/ramips/dts/LINKIT7688.dts
 +index 7106c3b33a..31dc220571 100644
 +--- a/target/linux/ramips/dts/LINKIT7688.dts
 ++++ b/target/linux/ramips/dts/LINKIT7688.dts
 +@@ -54,6 +54,28 @@
 +  linux,code = <KEY_WPS_BUTTON>;
 +  };
 +  };
 ++
 ++       sound {
 ++               compatible = "simple-audio-card";
 ++               simple-audio-card,name = "Audio-I2S";
 ++               simple-audio-card,format = "i2s";
 ++               simple-audio-card,bitclock-master = <&dailink0_master>;
 ++               simple-audio-card,frame-master = <&dailink0_master>;
 ++               simple-audio-card,widgets =
 ++                       "Headphone", "Headphones";
 ++               simple-audio-card,routing =
 ++                       "Headphones", "HP_L",
 ++                       "Headphones", "HP_R";
 ++               simple-audio-card,mclk-fs = <256>;
 ++
 ++               simple-audio-card,cpu {
 ++                       sound-dai = <&i2s>;
 ++               };
 ++
 ++               dailink0_master: simple-audio-card,codec {
 ++                       sound-dai = <&codec>;
 ++               };
 ++       };
 + };
 + 
 + &pinctrl {
 +@@ -68,11 +90,6 @@
 +  ralink,function = "gpio";
 +  };
 + 
 +- i2s {
 +- ralink,group = "i2s";
 +- ralink,function = "gpio";
 +- };
 +-
 +  spis {
 +  ralink,group = "spis";
 +  ralink,function = "gpio";
 +@@ -142,6 +159,23 @@
 + 
 + &i2c {
 +  status = "okay";
 ++
 ++       codec: wm8960@1a {
 ++               #sound-dai-cells = <0>;
 ++               compatible = "wlf,wm8960";
 ++               reg = <0x1a>;
 ++
 ++               wlf,shared-lrclk;
 ++       };
 ++};
 ++
 ++&gdma { status = "okay"; };
 ++
 ++&i2s {
 ++ #sound-dai-cells = <0>;
 ++ status = "okay";
 ++ pinctrl-names = "default";
 ++ pinctrl-0 = <&i2s_pins>;
 + };
 + 
 + &uart1 {
 +diff --git a/target/linux/ramips/image/mt76x8.mk b/target/linux/ramips/image/mt76x8.mk
 +index d0c66a0e23..b2fd2b7675 100644
 +--- a/target/linux/ramips/image/mt76x8.mk
 ++++ b/target/linux/ramips/image/mt76x8.mk
 +@@ -98,7 +98,7 @@ define Device/LinkIt7688
 +   IMAGE_SIZE := $(ralink_default_fw_size_32M)
 +   SUPPORTED_DEVICES := linkits7688 linkits7688d
 +   DEVICE_TITLE := MediaTek LinkIt Smart 7688
 +-  DEVICE_PACKAGES:= kmod-usb2 kmod-usb-ohci uboot-envtools
 ++  DEVICE_PACKAGES:= kmod-usb2 kmod-usb-ohci uboot-envtools kmod-sound-mt7620
 + endef
 + TARGET_DEVICES += LinkIt7688
 +</code>
 +
 +**Build**
 +go to your buildpath and type <code>make menuconfig</code> and select sound/alsa-utils as well as the alsa-utils-tests, save and build.
 +After flashing the image you can use <code>alsamixer</code> with key **"m"**, "left-" and "right arrow" keys of your keyboard to navigate through the awesome software mixer of alsa where you have to set:
 +** Be careful! High volumes can damage your ears.**
 +  * Headphone (if you use external Amplifier or headphone via 3.5mm jack outlet) = choose volume
 +  * Speaker (About -10dB is a good test volume) = choose volume
 +  * Speaker AC = 0
 +  * Speaker DC = 0
 +  * Left Mixer Output PCM = unmute
 +  * Right Mixer Output PCM = unmute
 +
 +Then try to play with alsa-utils-test like this in the terminal of the device:<code>speaker-test -t wav -c 2</code> 
 +You then should hear a woman speaking "Left", "Right" ongoing until you abort with CTRL-c.
 +
 +If you want to mix an external signal over the aux input try to higher the input 2 volumes in $alsamixer. (untested)
 +
 +Try playing a .wav file with: <code>aplay <path/filename.wav></code> 
  • Last modified: 2024/02/12 08:58
  • by 127.0.0.1