Skip to content

Instantly share code, notes, and snippets.

View judepereira's full-sized avatar

Jude Pereira judepereira

View GitHub Profile
UF2 Bootloader 0.2.10-4-g79fe6cc-dirty lib/nrfx (v1.1.0-1-g096e770) lib/tinyusb (legacy-755-g55874813) s340 6.1.1
Model: SparkFun Pro nRF52840 Mini
Board-ID: SparkFun-Pro-nRF52840-Mini
Bootloader: s340 6.1.1
Date: Jul 12 2019
# diff diff ~/developer/em/nRF5_SDK_15.3.0_59ac345/examples/ant/ant_plus/ant_bsc/bsc_tx/pca10040/s212/armgcc/ant_bsc_tx_gcc_nrf52.ld ~/developer/em/bia/src/ant_bsc_tx_gcc_nrf52.ld
8,9c8,9
< FLASH (rx) : ORIGIN = 0x12000, LENGTH = 0x6e000
< RAM (rwx) : ORIGIN = 0x20000b80, LENGTH = 0xf480
---
> FLASH (rx) : ORIGIN = 0x00031000, LENGTH = 0x000F4000-0x00031000
> RAM (rwx) : ORIGIN = 0x20002000, LENGTH = 0xf480
h2:Adafruit_nRF52_Bootloader jude$ git status
On branch master
Your branch is up to date with 'origin/master'.
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working directory)
modified: Makefile
modified: src/main.c
@judepereira
judepereira / a.story
Last active October 18, 2019 12:35
A simple story in Storyscript which prints a the page load counter
http server as server
when server listen path: "/" as req
current = (redis get key: "count").result
if current == null
current = 0
current = current + 1
redis set key: "count" value: current
req write content: "This page has loaded {current} times.<br>Powered by https://gist.github.com/judepereira/c45f9080def481c0917af77c6b9e9d11"
@judepereira
judepereira / CcsClient.java
Created March 31, 2017 09:28
XMPP/CCS client for FCM/GCM, using Smack 4.2
import com.mongodb.BasicDBObject;
import com.mongodb.util.JSON;
import org.jivesoftware.smack.SmackException;
import org.jivesoftware.smack.StanzaListener;
import org.jivesoftware.smack.XMPPException;
import org.jivesoftware.smack.filter.StanzaTypeFilter;
import org.jivesoftware.smack.packet.ExtensionElement;
import org.jivesoftware.smack.packet.StandardExtensionElement;
import org.jivesoftware.smack.packet.Stanza;
import org.jivesoftware.smack.roster.Roster;
@judepereira
judepereira / ota.sh
Last active December 20, 2020 21:37
Wrapper script for sending OTA updates to your ESP8266/NodeMCU.
#!/bin/bash
# Wrapper script for sending OTA updates to your ESP8266 running NodeMCU.
# See https://judepereira.com/blog/sending-ota-updates-over-wifi-to-your-esp8266/
HOST=192.168.178.25
PORT=8080
for i in "$@"; do
FILE=$i
@judepereira
judepereira / ota.lua
Last active December 20, 2020 21:37
Send OTA updates to remotely update lua scripts on your ESP8266.
-- Send OTA updates to remotely update lua scripts on your ESP8266.
--
-- LICENCE: http://opensource.org/licenses/MIT
-- Created by Jude Pereira <contact@judepereira.com>
-- See https://judepereira.com/blog/sending-ota-updates-over-wifi-to-your-esp8266/
srv = net.createServer(net.TCP)
current_file_name = nil
MyStubbornAPIInterface actualInstance = ... // Create it however you'd create your original instance.
MyStubbornAPIInterface proxiedInstance = (MyStubbornAPIInterface) Proxy.newProxyInstance(actualInstance.getClass().getClassLoader(),
new Class[]{MyStubbornAPIInterface.class}, (proxy, method, args) -> {
while (true) {
try {
return method.invoke(actualInstance, args);
} catch (MyThrottlingException e) {
try {
Thread.sleep(ThreadLocalRandom.current().nextInt(1, 5) * 1000L);
} catch (InterruptedException e) {
class State {
public static boolean someState;
}
class GoodTest {
@Test
public void checkState() {
assertFalse(State.someState);
}
@judepereira
judepereira / VPNProfile.xml
Last active June 8, 2022 17:13
An IPSec "Always on" VPN profile for your iPhone, iPad, or Mac
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>PayloadContent</key>
<array>
<dict>
<key>UserDefinedName</key>
<string>MY_PROFILE_NAME</string>
<key>PayloadDisplayName</key>