User:Bertrik Sikken: Difference between revisions
No edit summary |
No edit summary |
||
Line 39: | Line 39: | ||
* <del>http://bluez.sourceforge.net/contrib/HOWTO-PAN</del>: describes setting up a network using the "pand" utility, can't find that utility | * <del>http://bluez.sourceforge.net/contrib/HOWTO-PAN</del>: describes setting up a network using the "pand" utility, can't find that utility | ||
* [http://www.ampedrftech.com/cod.htm bluetooth device class calculator] | * [http://www.ampedrftech.com/cod.htm bluetooth device class calculator] | ||
* http://blog.fraggod.net/2015/03/28/bluetooth-pan-network-setup-with-bluez-5x.html | |||
My starting point is: | My starting point is: |
Revision as of 20:35, 21 May 2017
User info Bertrik Sikken | |
---|---|
Name | Bertrik Sikken |
Nick | bertrik |
Tagline | heb ik niet |
You can reach me at bertrik@sikken.nl or bertrik@gmail.com
Studied Electrical Engineering at Twente University.
Main interests:
- reverse-engineering things (USB stuff, mp3 players), working on http://rockbox.org
- studying bats and making electronics for recording/listening to bat sounds
- radio stuff, in particular software-defined radio
Projects I work(ed) on (refresh):
Project ideas
This is a list of ideas I'm thinking about, but have not fully developed into an actual project yet.
Understand Bluetooth AP
I'm trying to understand how to set up a bluetooth AP on a basic Linux system, such that you can connect to it using an Android phone or tablet.
The idea is that there is some kind of useful application running on the Linux system, and that the "app" on the tablet/phone provides the user interface, connecting to the Linux system using REST.
Possible useful links:
- https://www.linux.com/learn/weekend-project-personal-area-networking-bluetooth
https://www.osnews.com/story/9836/Make_your_Arch_Linux_a_Bluetooth_Access_Point: quite old, uses rfcomm, basically a serial port over bluetoothhttp://bluez.sourceforge.net/contrib/HOWTO-PAN: describes setting up a network using the "pand" utility, can't find that utility- bluetooth device class calculator
- http://blog.fraggod.net/2015/03/28/bluetooth-pan-network-setup-with-bluez-5x.html
My starting point is:
- a Yocto based Linux distribution
- a Linux 4.1 kernel
- Bluez 5
Understanding the various Linux drivers and tools in the Linux bluetooth stack
- btusb: the Linux kernel driver module for many USB/bluetooth adapters, 'modprobe'-ing this module also magically takes care of downloading firmware needed
- hciconfig, low-level configuration utility for manipulating a bluetooth controller. A bit like ifconfig, it can bring the interface up or down, set options, etc.
- bluetoothd, the bluetooth daemon
- bluetoothctl, a more high-level configuration utility, basically a user interface towards bluetoothd as I understand it.
- NAP: network access protocol
- PAN: personal area network
- BNEP: bluetooth network encapsulation protocol
investigate quadcopter remote control
It turns out that the typical little cheap Chinese quadcopters use a remote-control protocol that can be easily recreated using the famous NRF24L01+ chip (< $1 and easily connected to an arduino). This gives nice opportunity to either:
- transmit our own control signal, to control a quadcopter from something different than the manual remote control, e.g. automatic control
- receive the control signal, so the manual remote control that comes with a quadcopter can be used to steer other things (like a model car).
I haven't found a good overview of quadcopter remote control protocol specifications yet, there seem to be plenty examples of "here-is-the-code" however.
mini word clock in dutch
Basically an monochrome 8x8 word clock, in Dutch, showing local time in the Netherlands.
This git repo has the current code.
See here for a demo running on an arduino nano.
The plan is to run this from an ESP8266 instead of an arduino nano, so it can get the time from the internet using NTP. The time offset will be fixed to Dutch local time, i.e. GMT+1 taking into account summer time. Summer time will be determined using the general rule "from 2:00 local time on the last sunday of March until 3:00 local time on the last sunday of October".
Local date calculation:
- http://stackoverflow.com/questions/5590429/calculating-daylight-saving-time-from-only-date
- https://github.com/niekproductions/word-clock
Understanding LoRa
Ultimate goal is to create an SDR algorithm to decode LoRa without the need for dedicated LoRa hardware. This could be useful when tracking HABs transmitting LoRa for example. See DecodingLora and EncodingLora.
In particular, I should definitely check out this gr-lora project. Perhaps make it work for decoding balloon telemetry modes.
Cypress PSOC5
Play with the Cypress PSOC5 platform, which combines a ARM Cortex-m3 processor with configurable analog blocks. I'm thinking of combining it with a 24 GHz doppler radar sensor, to process the signal and present it as a USB audio device (stereo signal contains I and Q parts). See RadarOnAStick.
Simple Doppler motion sensors
You can find basic doppler microwave motion sensors based on a single transistor, with some weird traces on the PCB very cheaply, for example
Typically the microwave part of these consists of a single transistor with a rectangular area on one leg and a meandering trace (with lots of vias to the other side) on the other leg. The output of this circuit seems to go into a chip very much like the ones used in PIR sensors.
See also https://github.com/jdesbonnet/RCWL-0516 for a reverse engineering effort of these doppler radar modules.
Rust
Investigate the rust language.
ESP32
I have a Wemos "LOLIN32 V1.0.0" ESP32 board, play with it. Discover bluetooth capabilities, low power modes. Compare it with ESP32.
- ESP32 Arduino page by Wemos