Jump to content

le51

Members
  • Posts

    23
  • Joined

  • Last visited

 Content Type 

Forums

Member Map

Store

Crowdfunding

Applications

Everything posted by le51

  1. thank you @martinayotte for the tip. @orangepower : as you, I was in such a trouble: my solution was to remove emmc module from the nanoPi and then from my PC erase emmc's content using an usb2emmc adapter. Kind of brutal solution but really efficient
  2. do you hav both boards : the pecanpi and the tinkerboard ?
  3. I agree with Guidol's point of view. But, so far if you already have a tinkerboard lying on your desk if you know how to use etcher (or any other tool for creating a bootable disk) Then by following instructions given above and these on how to compile armbian you should be able to get your DAC up and running under armbian. And, maybe you will just have to adapt the "compatibility" line in the dts file ... I would be glad to help you further, but without having the tinkerboard, and without having this dac it's hard to do more ...
  4. do you have any board in mind. Armbian runs on a wide variety of hardware. See here: https://www.armbian.com/download/?device_support=Supported and here for the boards in testing stage: https://www.armbian.com/download/?device_support=Suitable+for+testing+(WIP) They are boards that haven't got any i2s interface. Have a look at this thread for some guidance: You will have to compile driver pcm179x-i2c or pcm179x-spi depending on the hardware control protocol used by your device, I'm quiet sure that it isn't enabled by default in armbian. The device tree overlay for rpi-dac is quiet simple and should easily adaptable: https://github.com/raspberrypi/linux/blob/rpi-4.19.y/arch/arm/boot/dts/overlays/rpi-dac-overlay.dts // Definitions for RPi DAC /dts-v1/; /plugin/; / { compatible = "brcm,bcm2835"; fragment@0 { target = <&i2s>; __overlay__ { status = "okay"; }; }; fragment@1 { target-path = "/"; __overlay__ { pcm1794a-codec { #sound-dai-cells = <0>; compatible = "ti,pcm1794a"; status = "okay"; }; }; }; fragment@2 { target = <&sound>; __overlay__ { compatible = "rpi,rpi-dac"; i2s-controller = <&i2s>; status = "okay"; }; }; }; Again, post mentioned above will give most of what you are looking for. Good luck
  5. Well, I own a nanopi m4v2 + nVme hat and ssd, but for an unknown reason, the board doesn't start anymore. I suspect that some component has been toasted elsewhere ... So sad ... First, I've got to say that I'm far from being a guru in all these uboot, bootloader stuff. But that is the case for the m4v2 + nvme ssd => you need sd card for booting the board and then access root filesystem on the ssd. By swapping the sd card I had the ability to install and choose to use legacy or mainline on two separate partitions. => so while booting the board with a fresh armbian sd card, you can backup a ssd partition or even the whole drive with dd. But I don't know if it is feasible on the emmc drive. Btw, there is a "recovery" button on the board, what is that use for, it's a mystery
  6. I mean, if you can boot on a sd card with armbian on it, you should be able to copy the content (using dd command) of the emmc to an external hard drive connected via usb.
  7. @pkfox, once you have installed armbian on emmc, you can't boot on the sd card anymore (unless you remove the emmc) ?
  8. Woua, specs are quiet excellent but it's... an expensive stuff ,🙄
  9. Hi, that is a great news ! the provided dts file is for what kind of board ? Do you plan to get the touch to work too ?
  10. Hi Werner, hi Myy I like big challenge I went through all the building process (without having initialized any FLAGS as said above) on the nanoPi itself. But I don't realize how it can impact on software performance, or compilation speed or .... I will run the process again with Thank you
  11. Hi, that's great ! I will try your fix later next week on nanoPi m4v2 and will keep you informed if it works.
  12. Hi, I'm trying to build a zynthian synthesizer on a nanoPi m4v2. The principle is to start from a minimal buster image and run a bunch of compilation scripts (see here on github) to create all the needed software. But all that stuff is for Raspberry Pi. In an initialization script (see here on github) they define compilation flags like this: if [ "$ZYNTHIAN_FORCE_RBPI_VERSION" ]; then hw_architecture="armv7l" rbpi_version=$ZYNTHIAN_FORCE_RBPI_VERSION else hw_architecture=`uname -m 2>/dev/null` if [ -e "/sys/firmware/devicetree/base/model" ]; then rbpi_version=`tr -d '\0' < /sys/firmware/devicetree/base/model` else rbpi_version="" fi fi if [ "$hw_architecture" = "armv7l" ]; then # default is: RPi3 CPU="-mcpu=cortex-a53 -mtune=cortex-a53" FPU="-mfpu=neon-fp-armv8 -mneon-for-64bits" if [[ "$rbpi_version" =~ [2] ]]; then CPU="-mcpu=cortex-a7 -mtune=cortex-a7" FPU="-mfpu=neon-vfpv4" fi #CPU="${CPU} -Ofast" #Breaks mod-ttymidi build FPU="${FPU} -mfloat-abi=hard -mlittle-endian -munaligned-access -mvectorize-with-neon-quad -ftree-vectorize" CFLAGS_UNSAFE="-funsafe-loop-optimizations -funsafe-math-optimizations -ffast-math" fi export MACHINE_HW_NAME=$hw_architecture export RBPI_VERSION=$rbpi_version export CFLAGS="${CPU} ${FPU}" export CXXFLAGS=${CFLAGS} export CFLAGS_UNSAFE="" export RASPI=true I'm totally confused with aarch64, arm64, armv7, armv8 ... Can someone help me to set the right options here. What I've done so far, was to remove all these FLAGS initialization (because of errors), but this is for sure not the best way to optimize that Thank you for your input!
  13. Yes, you can go that way. ADCLRC and DACLRC will share the same GPIO pin number 35
  14. That board has a 12.288 MHz crystal. You'll have to adjust the clock settings accordingly in the dts file. The sample rate will be 44100 hz. Btw, did you notice that mikroe's proto board only has got one microphone input ?
  15. Hi there, This topic interest me a lot. I'm using arm sbc for sound & music applications where low latency is important. sfx2000's post reminds me other discussions on other forums (mostly computer "assisted" music oriented) where some thoughts/experiences are related to poor application performance regarding the low positive impact of a RT kernel. From my own experience (x86, arm SBC's and RPI), RT kernel or not, good or bad audio interface in USB or I2S, depending on the load (cpu, memory, audio stream), I always have crack, glitches and xruns. Without RT patch, what I get: - With a H5 board with 2Gb memory (NanoPiK1plus) I can't go under 20ms of jack audio server latency without having a to unstable config but, as is, it is still "playable". - With a NanoPiM4 and a HD USB audio interface, I have 5ms of latency, a lot of power for apps and a NvMe interface for a fast drive. That's great So, I really ask myself for going further in kernel "hacking" with the RT patch.
  16. Hi, same problem here with a NanoPi M4v2, works as it should with legacy 4.4 kernel but not with 5.4.14 kernel (armbian 19.11.9). I didn't investigate further as this is not my priority right now.
  17. Hi, I bought a module on aliexpress which is more or less the same as the audioinjector zero : https://www.aliexpress.com/item/1674210328.html Both use the wm8731 audio codec. It provides stereo line input, and microphone input (Note that uou can't use them simultaneously), headphone and stereo line outputs. Codec is supported by linux kernel. I've managed to get it recognized by armbian on a nanoPi K1 plus with 4.19.83-sunxi64 self build kernel (aplay -L and arecord -L have shown the interface) after some manipulations but unfortunately: 1/ I had no sound output (didn't tried the record feature) , maybe because board is sold without any crystal oscillator soldered on it 2/ I've lost the board :-( Now some guidelines: the post I've mentioned above is really helpful - check that the i2s channel you want to use is enabled (status: "okay";) - see in /lib/modules/YourKernelVersion/kernel/sound/soc/codecs/ if snd-soc-wm8731.ko is there otherwise you will have to compile it - the dts file I've used for that (you will have to adjust it regarding your hardware) with "armbian-add-overlay wm8731.dts" : ## file wm8731.dts /dts-v1/; /plugin/; / { compatible = "allwinner,sun8i-h3"; fragment@0 { target-path = "/"; __overlay__ { wm8731: wm8731 { #sound-dai-cells = <0>; compatible = "wlf,wm8731"; status = "okay"; wm873x,format = "i2s"; }; }; }; fragment@1 { target = <&i2s0>; __overlay__ { status = "okay"; pinctrl-0 = <&i2s0_pins>; sound-dai = <&wm8731>; pinctrl-names = "default"; }; }; fragment@2 { target-path = "/"; __overlay__ { sound { compatible = "simple-audio-card"; simple-audio-card,name = "wm8731-hifi"; simple-audio-card,format = "i2s"; simple-audio-card,bitclock-master = <&codec_master>; simple-audio-card,frame-master = <&codec_master>; simple-audio-card,widgets = "Headphone", "Headphone Jack", "Microphone", "Microphone Jack", "Line", "Line Jack"; simple-audio-card,routing = "Headphone Jack", "RHPOUT", "Headphone Jack", "LHPOUT", "LLINEIN", "Line Jack", "MICIN", "Mic Bias", "Mic Bias", "Microphone Jack"; simple-audio-card,cpu { sound-dai = <&i2s0>; system-clock-frequency = <12000000>; }; codec_master: simple-audio-card,codec { sound-dai = <&wm8731>; system-clock-frequency = <12000000>; }; }; }; }; fragment@3 { target = <&i2c0>; __overlay__ { #address-cells = <1>; #size-cells = <0>; status = "okay"; wm8731@1a { #sound-dai-cells = <0>; compatible = "wlf,wm8731"; reg = <0x1a>; status = "okay"; }; }; }; }; Hope this helps.
  18. I've made a breakout board. The small white IC, is an optocoupler and the non connected cables are for a midi in (but not yet finished) interface. From this breakout board, I will also connect the RCA cinch out. Final goal is to run a zynthian synth on armbian (see https://zynthian.org/)
  19. Hi, to get multiple audio in/out channels without a hassle, external USB box is the best choice. Otherwise you will have to deal with some add on board like that one https://www.aliexpress.com/item/32811806978.html It use an Analog Device AD1938 which has a linux kernel driver support and offer 2 stereo IN/4 stereo OUT But device tree for that has to be written as I didn't find anything from my extensive search through the internet about that and dealing with I2S, and maybe TDM, is a big pain imho, see that post (many thanks to Guidol, I've got a cheap -3 bucks- aliexpress pcm5102 card working on a nanopi K1 plus) Note: https://github.com/ctag-fh-kiel/ctag-face-2-4/tree/master/device-tree-overlays could be a starting point for that (it is for beaglebone sbc)
  20. Hi Charly, While we're not so far from Christmas, I will maybe ask Santa Claus to bring me that screen May I ask you some questions: - are you happy with that screen ? - Is it usable with a touch pen ? - Does it need an additional power source through the micro usb port ? Thank you.
×
×
  • Create New...