Sponsored Content
Top Forums Programming Arduino Project: iPhone to HM-10 BLE to NB-IoT Shield to NB-IoT Network to Internet to Linux Server Post 303043441 by Neo on Tuesday 28th of January 2020 10:06:10 PM
Old 01-28-2020
In an earlier test of the AIS NB-IoT Arduino shield, I touched on the fact that the AIS 923MHz NB-IoT network tested illustrated "not the best reliability" due to spotty 923MHz cell tower penetration / coverage.

However, on the ocean side of my condo, I have improved this reliability issue a few DB (my RF power meter is not very accurate, sorry) with this antenna:

Arduino Project:  iPhone to HM-10 BLE to NB-IoT Shield to NB-IoT Network to Internet to Linux Server-img_9086jpg


More importantly than potential antenna gain, the 923MHz NB-IoT signal is considerably more reliable after placing the antenna at the window and off my desktop (which is about 3 to 4 meters away from the window).

In addition, I have the Arduino sketch sending the message to a remote Linux server via BLE and the NB-IoT network and will post the code / sketch after I add a mini-app to get some server stats like the server load averages back to the iPhone. Just need to add a few lines of code to my test Python UDP server code and change the sketch to receive the result and display it on the iPhone.

So far, it's pretty simple (after working out the conflict between serial comm pins last yesterday).

More Arduino shield porn Smilie
Arduino Project:  iPhone to HM-10 BLE to NB-IoT Shield to NB-IoT Network to Internet to Linux Server-img_9087jpg
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Linux for an internet server to an ISP

I just moved away from a T3 line back to a dial up I just wanted to know would a P200 with 64meg and a 4 gig hard drive be ok for a linux server for an additional 3 pcs all running win98. I will be dialing into an isp using a 56k v90 modem. Any support or help will be great. (3 Replies)
Discussion started by: izrailov
3 Replies

2. IP Networking

can i force connecting to local web server via internet network ?

Hello all this is general question , if i have web server installed in my local pc and i have client that connecting to that web server can i force it always to go via the internet network ? the reason im asking is .. that im noticed when i close my internet connection i still can connect to my... (2 Replies)
Discussion started by: umen
2 Replies

3. IP Networking

Can not access Linux server over the Internet

hi i have linux server connected to internet through a switch/router. i have opened a port on the router and i am able to connect to the server if iptables is off. but when it is on i cant. i want to create a rule in iptables so that it accepts packets coming from a particular datacard. it... (7 Replies)
Discussion started by: u.n.i.x
7 Replies

4. Programming

Arduino-cli - Uploading to Unknown Chinese Arduino Boards using the Arduino Command Line Interface

In my further exploration of Arduino, today I decided to install the arduino-cli on my mac today. https://github.com/arduino/arduino-cli I followed the instructions for macOS but when I got to this part: arduino-cli board list I got the dreaded "Unknown" Fully Qualified Board Name... (1 Reply)
Discussion started by: Neo
1 Replies

5. Programming

Arduino Project with NB-IoT (3GPP) and LoRa / LoRaWAN

My favorite projects are always related to the "latest" tech in command and control, networking and network communications. This Elecrow GSM/GPRS/EDGE SIM5360E 3G Shield seems to be the "latest and the greatest" as far as 3G and GPS, as far as I can see so far, but I has it drawbacks for sure.... (6 Replies)
Discussion started by: Neo
6 Replies

6. Programming

NB-IoT Arduino Shield from AIS (Thailand) First Impressions

Today I received my NB-IoT Arduino Shield for AIS (Thailand). Here is a "pinout" photo of the shield. My shield looks just like the one above, for the most part. I'll post another photo of the actual device later. When I received the shield in the mail, I went immediately to a local... (8 Replies)
Discussion started by: Neo
8 Replies

7. Programming

Elecrow GSM/GPRS/EDGE SIM5360E 3G Shield for Arduino

Normally I have very good experiences buying from AliExpress, but in this case with Elecrow, I'm disappointed. After confirming with Elecrow on AliExpress that their Elecrow GSM/GPRS/EDGE SIM5360E 3G Shield for Arduino would work with 3G SIM cards in Thailand, I purchased one. My plan was to... (1 Reply)
Discussion started by: Neo
1 Replies

8. Programming

Basic Arduino UNO Bluetooth Testing with the BLE 4.0 (CC2541, MLT-BT04 IC)

Here is a sketch to do basic testing for the Arduino UNO and the MLT-BT04. This BLE module works with IOS (iPhone) and I'll add some details on my IOS testing with an iPhone in a follow-up post. For now, here is the basic BLE (HM-10) sketch for the Arduino UNO: /* Arduino test-code... (7 Replies)
Discussion started by: Neo
7 Replies

9. Programming

Wuhan Coronavirus Status App for China - Rapid Prototype using MQTT and the IoT OnOff IOS App

With a little bit of work, was able to build a nice "Wuhan Coronavirus Status" app using MQTT and the IoT-OnOff app. More on this technique here: ESP32 (ESP-WROOM-32) as an MQTT Client Subscribed to Linux Server Load Average Messages The result turned out nice, I think. I like the look and... (10 Replies)
Discussion started by: Neo
10 Replies

10. Hardware

Arduino Robot Tank Project

Normally I'm not into kits, but I thought my wife would enjoy this one since she is a big fan of robots and droids on StarWars! We are done with the basic mechanical assembly and starting on the electronics assembly today. The robot's "brain" consists of three levels. The Arduino board, on... (5 Replies)
Discussion started by: Neo
5 Replies
ISAPNP(9)						   BSD Kernel Developer's Manual						 ISAPNP(9)

NAME
ISAPNP, isapnp_devmatch, isapnp_config, isapnp_unconfig -- Plug 'n' Play ISA bus SYNOPSIS
#include <sys/bus.h> #include <dev/isa/isareg.h> #include <dev/isa/isavar.h> #include <dev/isapnp/isapnpreg.h> #include <dev/isapnp/isapnpvar.h> #include <dev/isapnp/isapnpdevs.h> int isapnp_devmatch(const struct isapnp_attach_args *ipa, const struct isapnp_devinfo *dinfo, int *variant); int isapnp_config(bus_space_tag_t iot, bus_space_tag_t memt, struct isapnp_attach_args *ipa); void isapnp_unconfig(bus_space_tag_t iot, bus_space_tag_t memt, struct isapnp_attach_args *ipa); DESCRIPTION
The machine-independent ISAPNP subsystem provides support for ISAPNP devices. ISAPNP devices were developed to support "plug and play" con- nection on the ISA bus. In all other aspects, the ISAPNP bus is same as the ISA bus (see isa(9)). Devices on the ISAPNP bus are uniquely identified by a 7-character string. Resources, such as I/O address space and interrupts, should be allocated to the devices by the machine firmware. On some machine the firmware seems doesn't work correctly and NetBSD will attempt to allo- cate resources as necessary. DATA TYPES
Drivers attached to the ISAPNP bus will make use of the following data types: struct isapnp_matchinfo NetBSD kernel contains a database of known ISAPNP devices. Each entry in the database has a struct isapnp_matchinfo. It contains the following members: const char *name; /* device id string */ int variant; /* variant flag */ struct isapnp_devinfo Defines the devices supported by a driver. It contains pointer to an array of supported struct isapnp_matchinfo structures and a pointer to another array of compatibility devices. It contains the following members: struct isapnp_matchinfo *devlogic; int nlogic; struct isapnp_matchinfo *devcompat; int ncompat; struct isapnp_region Describes ISAPNP bus-space regions. It contains the following members: bus_space_handle_t h; uint32_t base; uint32_t length; struct isapnp_pin Describes the wiring of interrupts and DMA pins from the ISAPNP bus onto the host processor. It contains the following members: uint8_t num; uint8_t flags:4; uint8_t type:4; uint16_t bits; struct isapnp_attach_args A structure used to inform the driver of the device properties. It contains the following members: bus_space_tag_t ipa_iot; /* isa i/o space tag */ bus_space_tag_t ipa_memt; /* isa mem space tag */ bus_dma_tag_t ipa_dmat; /* isa dma tag */ isa_chipset_tag_t ipa_ic; struct isapnp_region ipa_io[ISAPNP_NUM_IO]; struct isapnp_region ipa_mem[ISAPNP_NUM_MEM]; struct isapnp_region ipa_mem32[ISAPNP_NUM_MEM32]; struct isapnp_pin ipa_irq[ISAPNP_NUM_IRQ]; struct isapnp_pin ipa_drq[ISAPNP_NUM_DRQ]; FUNCTIONS
isapnp_devmatch(ipa, dinfo, variant) Matches the device described by the attachment ipa with the device-match information in dinfo. If the device is matched, isapnp_devmatch() returns a non-zero value and variant is the flag describing the device variant. isapnp_devmatch() returns zero if the device is not found. isapnp_config(iot, memt, ipa) Allocate device resources specified by ipa. The device is mapped into the I/O and memory bus spaces specified by bus-space tags iot and memt respectively. The ipa_io, ipa_mem, ipa_mem32, ipa_irq, and ipa_drq members of ipa are updated to reflect the allocated and mapped resources. isapnp_config() returns zero on success and non-zero on error. isapnp_unconfig(iot, memt, ipa) Free the resources allocated by isapnp_config(). AUTOCONFIGURATION
During autoconfiguration, an ISAPNP driver will receive a pointer to struct isapnp_attach_args describing the device attached to the ISAPNP bus. Drivers match the device using ispnp_devmatch(). During the driver attach step, driver should initially allocate and map resources using isapnp_config(). The I/O (memory) bus-space resources can be accessed using the bus-space tag ipa_iot (ipa_memt) and the bus-space handle ipa_io[0].h (ipa_mem[0].h) members of ipa. Interrupts should be established using isa_intr_establish() (see isa(9)) with the IRQ specified by the ipa_irq[0].num member of ipa. Simi- larly, the standard isa(9) DMA interface should be used with the ipa_drq[0].num member of ipa. DMA SUPPORT
Extensive DMA facilities are provided through the isa(9) DMA facilities. CODE REFERENCES
The ISAPNP subsystem itself is implemented within the file sys/dev/isapnp/isapnp.c. The database of the known devices exists within the file sys/dev/isapnp/isapnpdevs.c and is generated automatically from the file sys/dev/isapnp/isapnpdevs. New devices should be added to this file. The database can be regenerated using the Makefile sys/dev/isapnp/Makefile.isapnpdevs. SEE ALSO
isa(4), isapnp(4), pnpbios(4), autoconf(9), bus_dma(9), bus_space(9), driver(9), isa(9) Plug and Play ISA Specification V1.0a, May 5 1994. HISTORY
The machine-independent ISAPNP subsystem appear in NetBSD 1.3. BSD
June 19, 2001 BSD
All times are GMT -4. The time now is 04:52 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy