I have a desktop application I've written in c#. I only want users with a license dongle to be able to use the software. I checked, there are companies that provide this facility but I find them expensive.
Is there a way I can turn an old pendrive into a dongle so it doesn't show in the file explorer, but the software can read from it ??
This is not possible with a normal pendrive. You would have to change the firmware of the pendrive controller.
Related
I am looking for a command line tool for flashing my NUCLEO card in ubuntu. I want this tools for flash my NUCLEO remotely with node.js. I already try st-flash and stm32flash but these tools don't work properly. My programs are generated by mbed online tool.
Do you have any suggestions ?
Thanks for your answers
You can update Nucleo boards simply by copying the mbed image to the mass storage device presented when you connect to the composite USB interface.
The image file is automatically written to the microcontroller flash by the integrated STLink device when the file is placed on the USB drive. This is a "write-only" device; the written file cannot be read back - if you interrogate the drive it always appears empty.
In Ubuntu you may have to explicitly mount the device. If it mounts automatically it will appear under /mnt (I guess).
Since it is a standard USB mass storage interface, you should not need any Nucleo or ST specific driver or software. It is a "drag & drop" programming interface.
If your board does not appear as a mass storage device, you may need to update the integrated STLink firmware as described at https://os.mbed.com/teams/ST-Americas-mbed-Team/wiki/Preparing-the-STM32-Nucleo-Board
I have a USB audio device (Scarlett Focusrite 18i6) which does not require a driver, so I assume it uses the USB HID Audio Class standard.
It works on everything from Windows and Mac to Linux and iOS.
But on Mac and Windows, it has a control application which can for instance enable and disable direct monitoring.
How would I go about reverse-engineering how this is done, so that I can reproduce it on platforms where the control application does not exist?
I'm thinking of booting up Windows in a VMWare session and then logging the USB communication (somehow?) while using the control application, but it does sound tedious considering the amount of data and my very limited understanding of USB.
Any other suggestions?
You could try running the control application using Wine instead of reverse engineering it. However, if it's accessing USB devices then there is a good chance it might be using an API not supported by Wine.
To reverse engineer it, you should find a way to look at the USB traffic between the computer and the device. Total Phase has some hardware USB protocol analyzers, but you might be able to find a good software solution for free.
Is there a way to retrieve a Windows CE 6.0 image from a working hardware device that uses Windows CE?
This depends on the kind of device you are using.
Many x86-based devices boot from HD/CF/SSD/SD devices that are formatted as regular media devices. You can connect them from a PC and you may be able to find the boot image (you may use nk.bin or a compressed format).
But this is true only if the OEM did not put in place some measures to prevent you from doing that.
For devices that boot from flash accessing their contents is more complicated and, in any case, device specific. Some devices can boot in a different way, allowing you to load a firmware that is commonly used to update images, sometimes it can also recover the existing one, but it's not granted.
Taken for granted that you are trying to do that for legally acceptable reasons, if you can provide a "bigger picture" description of why you need to do that, you may find alternative ways to solve your problem.
I wonder whether it is possible to emulate a specific bluetooth device like a Remote Controller for a TV or another device with my PC. I'd be okay with installing an additional hardware device for my computer (e. g. a BlueTooth PCIe card).
I imagined something like "recording" all single commands of my original remote controller using my Bluetooth card and afterwards use these recorded commands to turn on my TV for example.
Is something like this possible (with additional hardware maybe)?
Of course this is possible. Bluetooth is just a protocol and you can impliment it in your custom software to emulate all kinds of devices. If you need to emulate simple devices like keyboard or mouse, there are many ready solutions like this.
But if you have non standard device, there won't be any ready solutions and you will have to implement it yourself. What can help you:
If you have some kind of controller for PC and you want to emulate device with unknown protocol, you can use WireShark or other sniffer to understand what's going on.
There is an emulator called BT-Sim, but it is so poorly documented that I can't even guess what it does.
You can can take as example different android software like described in answers to this question.
You can check different program samples for PC like this.
For hardware you need only simple Bluetooth dongle. However, if you want to spy on some BLE (Bluetooth Low Energy) devices, you can buy hardware sniffer like this.
(At least in Windows 10) Microsoft Store has an application called "Bluetooth LE Explorer" which is able to simulate different kind of Bluetooth GATT profiles as a peripheral.
I am looking at integrating a C# application with a barcode scanner.
The last time I did this was with Delphi 1 (win 3.11) using a scanner that plugged in-line into the keyboard cable.
Looking around it appears most scanners are USB based these days and assume they emulate keyboard entry.
Anybody know of more sophisticated/programmable scanner that can call a webservice or even just do a basic POST/GET this would eliminate the C# application and the computer to support it?
There are a number of Ethernet and Wifi code readers on the market, though they tend to be targeted at industrial applications and usually cost more than the USB models. The company I work for makes such readers, and our fixed-mount DM200 reader is just such a device.
You could use a small computer (or even a microcontroller) with RO media, USB, and networking capabilities plus a psu to turn any suitable scanner to a network one. Raspberry Pi, for example, could do it and seems to be hip these days.
Alternatively some portable devices (like Android tablets) could probably use a camera or even a USB scanner for scanning codes and come with capable networking features.