Closed OLLYDOTDEV closed 3 years ago
While I may be using a raspberry pi zero w I will not be using the traditional noobs or Raspberry pi OS. I have been open to other Linux arm based distros and when you consider the fact that the key part of the PI is to inject keystrokes into the computer #22
now inject keystrokes normally is used to in pentesting or malicious hacking so what better distro to use other than kali Linux as kali will have all the needed prerequisites.
https://gist.github.com/jgamblin/2441964a1266764ed71f3243f87bbeec
this script allowed me to install the raspi-config
command on kali Linux allow for easy config for later use as I am trying to make it as easy as I can for another developer to pick up this project as one of my implications.
as a start I will not be using any old version of kali Linux but rather a custom version compiled by RoganDawes this has an added framework which turns a Raspberry Pi Zero W into a flexible, low-cost platform for pentesting, red teaming and physical engagements ... or into "A Little Offensive Appliance".
thus allow being to interface #22 HID scrips and more with this framework. (more on this framework with #21) the download for this ISO is found here
it was found in sprint 5 that #16 was having issues due to some missing dependencies that would have already been in place if I was using a more stock distro so what I need to find is how to get these missing libraries onto my pi.
so for a start, I found that I needed to start off with enabling SPI
this is done with editing the /boot/config.txt and changing dtparam=spi=off
to dtparam=spi=on
then rebooting then SPI is enabled
see https://www.raspberrypi.org/documentation/hardware/raspberrypi/spi/README.md
now down to the core of the issue is that I file is missing dependencies for the compiler. so the first thing to sort out was the fact that arm-linux-gnueabi
so I set that up using some of the comments from https://www.acmesystems.it/arm9_toolchain
but while it did get me
from here I can see that all I am missing is the stubs-hard.h
after a lot a googling I was unable to find how to obtain this file. that is when I started to think what if modify the Makefile.inc
well after seeking help on the GitHub repo for the NRF24 library, I was pointed in the right direction on where I needed to start modifying the code https://github.com/nRF24/RF24/issues/614#issuecomment-669635146.
with this in mind, I changed the code from requiring stubs-hard.h to stubs-soft.h. This is what stubs-hard is best explained by googlesource
TLDR: It is used for defining part of the architecture for Advanced RISC Machines (ARM)
with this, I then just need to tell the config file to use SPI
this is done by when you are in the /projects/RF24-1.3.7
then you just run ./configure --driver=SPIDEV
after that you can then use make; sudo make install
and it will compile and install the library in the Linux install as seen here on the GitHub wiki for this page.
and that should be all the setup needed for the Linux Distribution.
while that is all I had planned for this sprint the amount of research the had taken prior to this sprint is why this was able to run so quickly. So with this completed i can get back on working on #16
Note
it will try to connect to a AP as a station ssid: Pi_Point pw: Projectbirdeye
172.16.0.1:8000 via CDC ECM and RNDIS if an ap with those attributes cant be found it will switch into a fall back mode and host its down ssid for other nodes to connect to
when this project is deployed it is highly recommended that these settings are changed. So to access the webserver it needs to running in station mode not
As a developer I need some sort of operating system to interface with the hardware and provide firmware. this is so that the raspberry pi zero w can be used to its fullest potential of sweet features.