Skip to main content

Topics

This section allows you to view all Topics made by this member. Note that you can only see Topics made in areas you currently have access to.

Topics - tino

2
Tutorials / ESP8266 - AT Firmware
Connect the ESP8266-12E as follows;

  • GPIO15 - GND
  • GPIO02 - VCC
  • GPIO00- GND
  • RESET - GND ( Temporarily )
  • TX - RX
  • RX - TX

  • Install esptool.py

Code: [Select]
 pip install esptool 

  • Download SDK 2.2.1


Code: [Select]
https://github.com/espressif/ESP8266_NONOS_SDK/archive/v2.2.1.zip

  • Extract files and go to bin/
  • Run the following command and reset the chip


Code: [Select]
esptool.py --port /dev/tty.usbserial-A603AYEQ --baud 115200 write_flash --flash_mode dio 0x00000 boot_v1.2.bin 0x01000 at/512+512/user1.1024.new.2.bin 0x7B000 blank.bin 0x3FC000 esp_init_data_default_v05.bin 0x7E000 blank.bin
7
PostgreSQL / MISC Queries
Compare two rows

Code: [Select]
SELECT T1.log_dt, T2.log_dt, EXTRACT(EPOCH FROM (T2.log_dt - T1.log_dt))
FROM power_data AS T1
INNER JOIN power_data  AS T2
USING ( node )
WHERE T1.log_dt > '2017-05-05 22:10:00'
AND T2.log_dt > '2017-05-05 22:10:00'
ORDER BY T1.id, T2.id
LIMIT 2
9
PHP Code / Lazy Load Class
Code: [Select]
class MyClass {
    public function __construct() {
        echo 'I am initialized!';
    }
}

$getMyClass = function() {
    $myClass = new MyClass();
    return $myClass;
};


Code: [Select]
$myClass = $getMyClass();
10
Tutorials / Postfix call script via bcc
Code: [Select]
vim /etc/postfix/master.cf

Add the following
Code: [Select]
  -o receive_override_options=no_address_mappings

Just below the
Code: [Select]
smtp      inet  n       -       -       -       -       smtpd

Setup the recipient bcc

Code: [Select]
vim /etc/postfix/recipient_bcc

Add the following as appropriate

Code: [Select]
upload@tinoest.co.uk upload-script@localhost

Run postmap so postfix can read it.

Code: [Select]
 postmap /etc/postfix/recipient_bcc 


Setup the transport

Code: [Select]
vim /etc/postfix/transport

Add the following as appropriate

Code: [Select]
upload-script@localhost :

Run postmap so postfix can read it.

Code: [Select]
 postmap /etc/postfix/transport 

edit the main.cf

Code: [Select]
 vim /etc/postfix/main.cf 

Add the following:

Code: [Select]
recipient_bcc_maps = hash:/etc/postfix/recipient_bcc
transport_maps = hash:/etc/postfix/transport


Also ensure that localhost is in the mydestination list

Edit the /etc/aliases file

Code: [Select]
vim /etc/aliases

Add the following, to point to the relevant file you wish to parse the data

Code: [Select]
upload-script: "|/usr/bin/postfix-parse"




Then restart postfix

Code: [Select]
systemcntl restart postfix 
11
Tutorials / LTSP Debian Jessie Install
Install the required files

Code: [Select]
apt-get install ltsp-server dnsmasq

Build the client

Code: [Select]
ltsp-build-client --arch i386

Edit the exports file

Code: [Select]
vim  /etc/exports 

Add the following to the bottom

Code: [Select]
/opt/ltsp       *(ro,no_root_squash,async,no_subtree_check)

Restart the Service

Code: [Select]
invoke-rc.d nfs-kernel-server reload

Just to be sure...

Code: [Select]
service nfs-kernel-server restart

Create the DNS masq files

Code: [Select]
ltsp-config dnsmasq

Amend one of the created files

Code: [Select]
vim /opt/ltsp/i386/etc/ltsp/update-kernels.conf

Change the following line:

Code: [Select]
CMDLINE_NFS="root=/dev/nfs ip=dhcp boot=nfs"

To

Code: [Select]
CMDLINE_NFS="root=/dev/nfs ip=dhcp boot=nfs nfsroot=/opt/ltsp/i386"
IPAPPEND=3

Update everything.

Code: [Select]

ltsp-chroot /usr/share/ltsp/update-kernels

ltsp-update-kernels

12
MySQL / MySQL ORDER BY
Code: [Select]
ORDER BY status ASC; will return 1,2,3,4.

Code: [Select]
ORDER BY status DESC; will return 4,3,2,1.

Code: [Select]
ORDER BY FIELD(status, 3, 2, 4, 1);
13
PostgreSQL / Auto Increment
Code: [Select]
CREATE SEQUENCE teams_id_seq;
ALTER TABLE teams ALTER id SET DEFAULT nextval('teams_id_seq');
ALTER SEQUENCE teams_id_seq OWNER TO elabftw;
ALTER SEQUENCE teams_id_seq OWNED BY teams.id;
15
PostgreSQL / timestamp round function
Code: [Select]
CREATE FUNCTION ts_round( timestamptz, INT4 ) RETURNS TIMESTAMPTZ AS $$
    SELECT 'epoch'::timestamptz + '1 second'::INTERVAL * ( $2 * ( extract( epoch FROM $1 )::INT4 / $2 ) );
$$ LANGUAGE SQL;