Finding a specific FPGA version of a USRP image file for an X310 - usrp

I have an X310 that requires a previous FPGA version than what I have. Going to the Ettus image page https://files.ettus.com/binaries/images/ I cant determine which one can revert me to FPGA 35.
I have:
FW 6 FPGA 36
and need:
FW ? FPGA 35
Is there a decoder ring that I am missing?
Thanks

Usually, UHD will figure all of that out for you. If you run
uhd_images_downloader
on the command line, it will download the right version for you (the one that matches the UHD version). Then, simply run
uhd_image_loader --args type=x300,addr=x.y.z.w
to burn it (don't forget to power-cycle).
If you run
uhd_images_downloader -l
it will show you the URLs it will use for downloading.

Related

How can I calculate interrupt latency in macOS?

When I was studying about I/O in my OS Class, I came to a following screenshot from an macOS looking terminal which is showing the total number of interrupts generated in 10 seconds-Image Here
can anyone please suggest from which command could I get this output, specially Macs with new ARM chips?
On intel macs, the command you want is called latency. See man latency. You can run it like so:
sudo latency -n /System/Library/Kernels/kernel
I'm not sure if this command is available for ARM based macs or not.

Play audio file stored in SD Card memory on Zedboard

Is it possible to have a named pipe on my PS side of the Zedboard; that leads to a FIFO in the the PL side (using DMA,AXI,I2S etc) that I then revert to the audio out port and play songs from my PS side and listen from the audio out port on the PL side?
If yes then what steps are to be followed on the PS Side?
I'm guessing at mapping of user space into kernel space.
Yes, it turns out that ANALOG DEVICES has just the stuff you need.
There is a different kernel that Analog Device's maintains, which
includes both ALSA drivers
for the audio chip (ADAU1761) and the HDMI output (ADV7511).
https://github.com/analogdevicesinc/linux
there are a few zynq branches in there. Normally Xilinx pulls drivers
from there for their kernels,
but anyone can do the same.
The build instructions (if that's the sort of thing you want to do) is
at:
http://wiki.analog.com/resources/eval/user-guides/ad-fmcomms2-ebz/software/linux/zynq_2014r2
Or, alternatively you could just download the ready-made image for your particular board from this dropbox link:
https://www.dropbox.com/sh/yfbpj63pcenqatr/AAAt0s3xFXs47I7q5pNopheHa?dl=0
After you download the file; uncompress it with this command:
unxz -d sdimage-8G-zedboard.direct.xz
Find out the name of your SD Card with this command:
dmesg|tail
And then write the resulting image to your 8GB SD Card with this command:
sudo dd if=sdimage-8G-zedboard.direct of=/dev/sdX
where sdX is your particular SDCard which you noted from command dmesg|tail
This command will erase all the pre-existing data on the sd card so make sure you have a backup if that data is important to you.
WARNING: Please be VERY careful while using the dd command. Writing the image to the wrong /dev/sdX location could possibly lead to corruption of OS and/or the hardware also and is extremely risky.
After you burn the image; you're good to go! A full-blown graphical linux environment will turn up ( You need to connect an HDMI display; and use USB OTG port to use the mouse and keyboard)
NOTE: You can also choose between what path you want your sound to play;
whether from the headphone jack or through the HDMI cable.

NodeMCU version unknown

I'm new with NodeMCU firmware use. I have a Amica ESP-12E (v2?) dev kit connected to a DHT22 which I program using the Arduino IDE. All is setup and working fine.
My problem came when I wanted to update NodeMCU firmware. Since I don't really know what came pre installed from China, I downloaded ESPlorer to try to determine NodeMCU version. I get the following "error" when I reset the dev board:
Communication with MCU..Got answer! Communication with MCU established.
AutoDetect firmware...
Can't autodetect firmware, because proper answer not received (may be unknown firmware).
Please, reset module or continue.
{{a long string of weird characters that I can't copy and paste appear here}}
At this point I'm totally clueless about what version of firmware I have. Is there a way to obtain NodeMCU firmware version by software via Arduino IDE code, ESPlorer GUI or something similar?
On the other hand, is there a really easy way to compile/download latest NodeMCU firmware BIN file? Even one with all the modules active will be fine for me now, I'm just trying to understand and test things.
You seem to be confusing two very different platforms. I leave out some details as not to confuse you any further.
Arduino: you use Arduino programming in the Arduino IDE then build and install a binary to your device whenever the application changes. No NodeMCU firmware needed!
NodeMCU: you flash the NodeMCU firmware once (e.g. using esptool.py) and then upload Lua code (e.g. using ESPlorer) whenever the application changes. This is more lightweight than the Arduino platform.
On the other hand, is there a really easy way to compile/download
latest NodeMCU firmware BIN file?
Yes, have a look at the NodeMCU documentation at http://nodemcu.readthedocs.io/en/latest/en/build/. The easiest is to use the cloud builder at https://nodemcu-build.com/. I currently suggest to build from the dev branch because flashing is easier with it.
As pointed out you have several options for firmware and you'll need to make a choice as to which suits you going forward. If you are going to stick with the Nodemcu LUA firmware you can determine the version by typing:
print(node.info())
at the command line prompt.
There are alternatives to using ESPlorer e.g. Putty or Coolterm that will give you the raw output from the device with no interpretation. So if you have the correct serial port settings and the device plugged into the USB port it will show the banner when you reset giving an indication of the origin and version of the installed firmware.
In ESPlorer, there is an option under settings which if unchecked will stop looking checking for the version of the code.
For whatever reason, ESPlorer is not designed to read nodemcu version.
The error message throws you off, could lead you to think, there is an error.
At best, the above error can be ignored. It has no impact at all. In background, init.lua is up and running.

how to burn hex file to pic ? "hardware"

Good evening ..
I'm new in the microcontroller ..
I have studied a course on "pic 16" and As I knew the pic16 needs an external device to burn hex file in rom .
Now I want to study the pic24 And I found something called usb in pic24 ..
Can I burn the hex file without an external device via a usb ?? Or this is another term has not related to burning hex file ??
Is there a way to burn the file without an additional device ??
And also in the pic32 Are there any types of it can be directly connected without the use kit3 ??
I do not want to buy kit3 :\
Is the kit3 can Programming all kinds pic microcontroller (16,24,32) ??
Sorry for extension
and Thank you very much
The PIC32 starter kits have a debugger/programmer built in. Otherwise there is no way.
Yes, you can burn a hex file without an external device via USB. The term to look for is “Bootloader”. Many Microchip devices can allocate and protect a section of memory for bootload firmware providing the means to self-program.
If you’re buying a demo board with a bootloader pre-installed (and as long as you don’t over-write the bootloader) you can upload hexfiles and run them without an external programmer. But if you build your own board you’ll need a programmer at least once to load the bootload code.
And yes, the PICkit 3 can be used to program a wide variety of Microchip devices. The document Device Support.htm in the release notes of MPLAB X has a matrix of devices and programmers.
unfortunately i've never used pic24 family, but if you're going to try pic32 try to take a look here:
pic32-avrdude-bootloader
It works with avrdude, the same bootloader used by Arduino boards and it's not much hard to use properly. I don't know if there's a way to use also serial monitor via usb, but if you debug with mplabx you don't need it
Ciao!

I2C support in new kernels seems to be broken

Can anybody tell me what's the difference in supporting I2C between kernels until and after 3.10 version?
Looks like after 3.10 something changed but I can't realize what exactly. I'm working on Intel Core-i5 2500k CPU with integrated video and am using ddccontrol tool to change brightness on my monitor. But if on kernel 3.2.32 I can do that, since 3.10.5 I2C support seems to be broken.
I don't know what exactly changed, but there are outputs from old and new kernels (i2cdetect -l):
3.2.32: http://pastebin.com/SqDPcwS9
3.10.5: http://pastebin.com/YCTmX90m
If on 3.2.32 I was able to use i2c-4 device to control my monitor, then on 3.10.5 list of i2c devices is shorter, and I don't see any GPIO buses (or what does it mean). On 3.10.5 system detects only monitor on i2c-1 but says that there is no support of DDC/CI on that device (http://pastebin.com/vZ4bALmt). For 3.2.32 everything is OK: http://pastebin.com/QL0fAZVC
Maybe I don't know something, e.g. some new config option have been added/changed in kernel.
Seems I'm not alone in my trouble - there are a lot of questions about I2C and ddccontrol around the web, but there are still no answer.
Need your help, really...
Thanks!
---
UPD: on kernel 3.7 I've watched the same behavior as on 3.10, so, the breakage isn't at 3.10 but a bit earlier
I'm not sure, but I think this has been fixed in commit 59b016fe8fe83920e8717163289e61ab8e327b90 the 17.10.2013
Can you try a more recent kernel (3.12) ?

Resources