Mittwoch, 28. September 2016

New power supply!

Say hello to my new precision laboratory power supply! I lusted after a good precision and adjustable power supply for years. Finally a week ago I decided to look after one that does fit my requirements. I was searching for at least two adjustable outputs, constant current and voltage mode, a sequencing funktion and a nice user interface. Of cause you'll find a lot of power supplys with these specs as they are really common, but on the user interface side most of them suck. The probably worst UI I've ever used was a Siglent unit and according to a few YouTube videos nothing has changed in the newer models, they still suck. For power supplys with that price to performance ratio a shame... Next brand on my list was GWInstek. Unfortunately these units are waaay out of my budget, so I continued with Korad units. Because I used these power supplys before I already knew their value.
Most of the smaller units only have one output and only 'for the price adequate' precision. But I still left them in mind in case I don't find something more suitable. Then I considered buing a used Rigol as they are a dream to use an really well build. You may have seen my hacked Rigol Oscilloscope on some of my other Blogs and I'm really in love with the usabillity and specs. Buying a new unit wasn't worth thinking about... About 900€ are really high for a hobby use powersupply. But after searching on eBay I found a auction for a DP831A. I placed it on my viewing list and stopped searching for that night. The next day the auction was going to end. I placed my bid and suprisingly got the unit for a reasonable price.

Just a few days later the unit arrived in good shape. I hope the supply will be worth the money I spend for my usecases.

Donnerstag, 8. September 2016

DIY FrSky Transmitter Part 1 (Taranis Allmode Project)

After two nights of messy code work I finally got my Testboard transmitting BIND packets. In other words I'm able to bind to a receiver and establish a connection. I did a few stupid mistakes, for example I swapped milliseconds and microseconds... But even here, in my non regular Workspace, without my Oscilloscope etc. I got it to work in almost no time at all. So far everything seems to be a little bit too easy. Even my code compiled on first attempt... SCARY!
I hope that I'll get it to transmit data packets until this weekend, so that I can try the functionality and stability of the connection on the airfield.
Short post this time, but I just wanted to keep you up to date.
In addition I attached a small Video to show you what I achieved so far. After I pressed the button on the Testboard you can see the receiver flashing and the transmitter lighing up as well.

Sorry for the poor video quality but it was already past midnight as I shot it.

Montag, 5. September 2016

Taranis Allmode considerations

A friend of mine pointed me into a totally different topic a couple days ago. He said he has heard about a firmware for the popular FrSky-Taranis, which I own too by the way, with which you can use Futaba and some other protocol receivers in addition to the standard FrSky ones.
Because this really sounds interesting and also really plausible, I did a quick Google search on that topic. Unfortunately I found nothing but a YouTube-Video which is clearly a Fake. The person in the Video has done just a small change to the OpenTx-Firmware and ran it on the Simulator. So nothing special there, just a different GUI. I also found some plug-in Modules which contain multiple HF-Modules to be able to talk to other protocol receivers. But this was not what I was aiming for.
I want to be able to use the stock Hardware and a modded firmware to talk to other protocol receivers.
After that I took apart my own Transmitter in order to see whether thats a plausible thing to do or not. In fact FrSky is using just a plugin module (XJT - Module, well known) as their main transmitter unit. But thats nothing special, they're clearly cutting the cost down by doing so. All the approvals and the design afford costs an awful amount of money and this way they can do changes or even a whole new transmitter without getting everything done again. As expected they used a small STM32 controller on the XJT module just to deal with all the protocol and telemetry stuff.
In addition to that they're holding that way their protocol secret and untouched by the OpenTx firmware. This last point is unfortunately the end for any further thoughts about just changing main processor firmware to be able to use other protocols because you'll need direct access to the RF IC. (This clearly proves my opinion to the video that I mentioned earlier)

But as always I just can't stop thinking about possible ways to hack something! So I took a closer look to the board and investigated some parts of it. And yes there are at least two ways to maybe get it done. Because the builtin XJT module uses just a standard CC2500 (like my MC3D as well) and a power Amp to boost it up, all protocols that are transmittable with that hardware are theoretically possible to use. So the first option that came into my mind is to cut either in soft or in hardware the connection between the existing CC2500 and the Coprocessor. This way I could inject my own protocol and transmit it via the existing hardware. The other idea I had was to replace the existing XJT by a self-made one. That way I could flash protocols to the module until the Flash of the processor is full. Of cause reverse engineering the entire XJT module would also be a possible option to go for but as far as I can see they have used a 4 layer PCB which makes reverse engineering a lot less comfortable. As you may have seen in a earlier Blog I own a CC2500 module with an onboard LNA and PA so in fact just the same hardware as in the transmitter used.
I thought to myself that if I'm able to talk via that module to at least Futaba and FrSky receivers, I'll go for one of the above mentioned options and hack the transmitter.

On the same day I started to build-up a prototype board with just a small cortex M3 and the Transceiver module. So all the messy software stuff can now be done without going out of order with my "daily" Transmitter. I hope you liked that this time really theoretical article and stay tuned for more!


MC3D - First Take-off

I finally had some spare time to complete the MC3D project. After a lot of issues I had with the Firmware like Failsave and Pinconfig everything seems to work just fine now. All missing 3D printed parts and motors got attached. 
First start! 
I carefully armed the board and pushed the throttle stick gently upwards. I'm flying mode 1 by the way. The rotors started spinning and with just a little more throttle he took off the ground. The stabilisation system did his job really well and apart from the really way too high control rates I had nothing to complain. PID wise I'm using Luxfloat and standard betaflight parameters.
After this first successfull flight I attached the cheap Banggood FPV camera to the frame with some Hotsnod and connected all the neccessary wireing. I used this camera before and it's one of the best FPV cameras I've seen so far. And also with just about 9$ you get a wide angle camera that actually performs like a really large and also often expensive one.
I then set up my FPV-Goggles. After checking everything I took off again. This time with the Goggles in front of my eyes. And as I expected I got lines crossing my field of view as soon as I the Motor PWM kicks in. They are actualy so strong visible that I can't event take off. So a filter for the camera and Video transmitter is neccessary to solve this. 
To become some idea about the actual size of the problem, I attached my Scope and took a closer look to the unregulated Powerrail. 



As clearly visible the 32kHz PWM takes the biggest part of the entire noise.
Of cause I did a first job by adding some capacitance across each motor while designing the circuit, but as clearly visible some noise found it's way out. 
Because I don't know how the more sensitive parts on the PCB react to that, I plan to filter right at the motors to reduce the overall noise level. Hopefully the FPV issue can be solved as well by doing so. That's it unfortunately for today about the MC3D. All I can say so far is that I'm really proud of this little guy. I hope you liked the small update on that project. More stuff coming up soon!